Quick Start Guide
This guide will help you get started with naamkaran quickly.
Basic Usage
Python API
The main function for generating names is naamkaran.generate.generate_names():
from naamkaran.generate import generate_names
# Generate 5 names
names = generate_names(num_names=5)
print(names)
You can specify various parameters to control name generation:
# Generate female names starting with 'A'
names = generate_names(
    starting_letter='A',
    gender='F',
    num_names=5,
    max_len=8,
    temperature=0.7
)
Command Line Interface
Naamkaran also provides a command-line interface:
# Generate 5 names
generate_names -n 5
# Generate female names starting with 'A' and ending with 'a'
generate_names -s A -e a -g F -n 5 -m 8 -t 0.7
Parameters
The following parameters can be used to control name generation:
- starting_letter (str): First letter of the name (e.g., ‘A’, ‘B’) 
- ending_letter (str): Last letter of the name (e.g., ‘a’, ‘n’) 
- gender (str): Gender for name generation (‘M’ for male, ‘F’ for female) 
- num_names (int): Number of names to generate (default: 10) 
- max_len (int): Maximum length of generated names (default: 12) 
- temperature (float): Controls randomness (0.0-2.0, default: 0.8) 
Temperature Effects
The temperature parameter controls the creativity vs. realism trade-off:
- Low temperature (0.1-0.5): More conservative, realistic names 
- Medium temperature (0.6-1.0): Balanced creativity and realism 
- High temperature (1.1-2.0): More creative, potentially unusual names 
Examples
Generate Conservative Names
conservative_names = generate_names(
    gender='M',
    temperature=0.3,
    num_names=5
)
Generate Creative Names
creative_names = generate_names(
    starting_letter='Z',
    temperature=1.5,
    num_names=3
)
Generate Names with Specific Pattern
pattern_names = generate_names(
    starting_letter='M',
    ending_letter='a',
    gender='F',
    max_len=6,
    num_names=10
)