# Tamil Voice Agents

> Build production Tamil voice agents with optimal provider configurations for Tamil Nadu and Sri Lanka markets.

Source: https://edesy.in/docs/voice-agent/languages/tamil

Tamil (ta-IN) is well-supported for voice agents, serving both Tamil Nadu in India and Tamil-speaking populations globally.

## Quick Start

```json
{
  "agent": {
    "name": "Tamil Support Agent",
    "language": "ta-IN",

    "llmProvider": "gemini-2.5",
    "llmModel": "gemini-2.5-flash-lite",

    "sttProvider": "deepgram",
    "sttModel": "nova-3",

    "ttsProvider": "azure",
    "ttsVoice": "ta-IN-PallaviNeural",

    "greetingMessage": "வணக்கம்! நான் உங்களுக்கு எப்படி உதவ முடியும்?",

    "prompt": "நீங்கள் ஒரு உதவியாளர். தமிழில் பதிலளிக்கவும்."
  }
}
```

## Provider Options

### STT (Speech-to-Text)

| Provider | Model | WER | Latency | Cost/min |
|----------|-------|-----|---------|----------|
| **Deepgram** | nova-3 | 10-15% | ~150ms | ₹0.35 |
| Google | chirp_2 | 12-16% | ~200ms | ₹1.34 |
| ElevenLabs | scribe | 14-18% | ~180ms | ₹0.56 |

**Recommendation**: Deepgram Nova-3 for best accuracy-cost balance.

### TTS (Text-to-Speech)

| Provider | Voices | Quality | Cost/min |
|----------|--------|---------|----------|
| **Azure** | 2 Neural | Excellent | ₹1.01 |
| Google | 2 Neural | Good | ₹1.34 |

**Recommendation**: Azure Neural voices for natural Tamil speech.

### LLM

| Provider | Model | Tamil Understanding | Cost/min |
|----------|-------|---------------------|----------|
| **Gemini 2.5** | flash-lite | Good | ₹0.04 |
| Gemini 2.0 | flash | Good | ₹0.05 |

**Recommendation**: Gemini 2.5 for cost efficiency.

## Azure Tamil Voices

| Voice | Gender | Style | Best For |
|-------|--------|-------|----------|
| `ta-IN-PallaviNeural` | Female | Professional, clear | Customer support |
| `ta-IN-ValluvarNeural` | Male | Professional | Business calls |

### Voice Configuration

```json
{
  "ttsProvider": "azure",
  "ttsVoice": "ta-IN-PallaviNeural",
  "ttsConfig": {
    "speakingRate": 0.95,
    "pitch": "0%"
  }
}
```

## Tanglish (Tamil-English Mix)

For agents handling code-switching:

```json
{
  "agent": {
    "name": "Tanglish Agent",
    "language": "ta-IN",

    "prompt": "You can respond in Tanglish (Tamil-English mix) as commonly spoken. Example: 'Unga order ship aayiduchu, Friday-kulla delivery expect pannunga.'"
  }
}
```

### Tanglish Examples

```
# Pure Tamil
"உங்கள் ஆர்டர் அனுப்பப்பட்டது"

# Tanglish (natural)
"Unga order ship aayiduchu"
"Delivery Friday-la varum"
"Payment successful-a complete aayiduchu"
```

## Tamil Script Handling

### Prompt in Tamil

```json
{
  "prompt": "நீங்கள் ஒரு வாடிக்கையாளர் சேவை உதவியாளர்.\n\n## விதிகள்\n- பணிவாக இருங்கள்\n- தெளிவான பதில்களை வழங்குங்கள்\n- சிக்கல்களைத் தீர்க்கவும்"
}
```

### Transliteration Support

```json
{
  "prompt": "Users may type Tamil in Roman script (e.g., 'enaku order status venum'). Understand both Tamil script (தமிழ்) and Roman transliterations. Respond in Tamil script."
}
```

## Formality in Tamil

Tamil has respectful forms using suffixes:

```json
{
  "prompt": "## Formality Guidelines\n- Use 'நீங்கள்' (respectful you) not 'நீ'\n- Add respectful suffixes: 'ங்க' - as in 'சொல்லுங்க'\n- Use polite phrases: 'தயவுசெய்து', 'நன்றி'\n- Address as 'ஐயா' (sir) or 'அம்மா' (madam) when appropriate"
}
```

### Formal vs Informal

| Formal | Informal |
|--------|----------|
| நீங்கள் எப்படி இருக்கிறீர்கள்? | நீ எப்படி இருக்க? |
| சொல்லுங்க | சொல்லு |
| வாருங்க | வா |
| நன்றி | தாங்க்ஸ் |

## Number Handling

```json
{
  "prompt": "When speaking numbers in Tamil:\n- Use Tamil numerals or spoken words\n- ₹1,50,000 = 'ஒரு லட்சத்து ஐம்பதாயிரம் ரூபாய்'\n- Say phone numbers digit by digit with pauses"
}
```

### Tamil Number Words

| Number | Tamil |
|--------|-------|
| 1 | ஒன்று |
| 10 | பத்து |
| 100 | நூறு |
| 1,000 | ஆயிரம் |
| 1,00,000 | லட்சம் |
| 1,00,00,000 | கோடி |

## Regional Considerations

### Tamil Variants

| Variant | Region | Notes |
|---------|--------|-------|
| Standard Tamil | Chennai | Neutral, formal |
| Madurai Tamil | Southern TN | Different vocabulary |
| Sri Lankan Tamil | Sri Lanka | Distinct accent |
| Kongu Tamil | Coimbatore | Western TN |

### Time-based Greetings

```go
func getTamilGreeting(hour int) string {
    switch {
    case hour < 12:
        return "காலை வணக்கம்" // Good morning
    case hour < 17:
        return "மதிய வணக்கம்" // Good afternoon
    default:
        return "மாலை வணக்கம்" // Good evening
    }
}
```

## Complete Example

### Customer Support Agent

```json
{
  "agent": {
    "name": "Tamil Customer Support",
    "language": "ta-IN",

    "llmProvider": "gemini-2.5",
    "llmModel": "gemini-2.5-flash-lite",
    "llmTemperature": 0.7,

    "sttProvider": "deepgram",
    "sttModel": "nova-3",
    "sttConfig": {
      "language": "ta",
      "keywords": ["ஆர்டர்:2", "டெலிவரி:2", "ரிஃபண்ட்:2"]
    },

    "ttsProvider": "azure",
    "ttsVoice": "ta-IN-PallaviNeural",

    "greetingMessage": "வணக்கம்! நான் உங்கள் சேவைக்கு தயாராக இருக்கிறேன். உங்கள் ஆர்டர் பற்றி அல்லது வேறு ஏதாவது கேட்கலாம்.",

    "prompt": "நீங்கள் ஒரு வாடிக்கையாளர் சேவை உதவியாளர்.\n\n## உங்கள் பணி\n- வாடிக்கையாளர் சிக்கல்களைத் தீர்க்கவும்\n- பணிவாகவும் உதவிகரமாகவும் இருங்கள்\n- தெளிவான பதில்கள் கொடுங்கள்\n\n## மொழி\n- தூய தமிழ் அல்லது Tanglish இரண்டும் சரி\n- வாடிக்கையாளரின் பேச்சு முறையை பின்பற்றுங்கள்",

    "allowInterruptions": true
  }
}
```

## Testing Tamil Agents

### Test Phrases

```
# Greetings
"வணக்கம்"
"ஹலோ"

# Order queries
"என் ஆர்டர் எங்கே?"
"எனக்கு ஆர்டர் ஸ்டேட்டஸ் வேணும்"
"order number 12345"

# Tanglish
"Enaku refund venum"
"Order eppo varum?"

# Edge cases
"ஆமா" (yes)
"இல்ல" (no)
```

### Common STT Challenges

| Challenge | Solution |
|-----------|----------|
| Aspirated consonants | Use Google Chirp for better accuracy |
| Fast speech | Slow down TTS to set pace |
| English terms | Add as keywords |

## Cost Optimization

### Budget Configuration

```json
{
  "sttProvider": "deepgram",
  "ttsProvider": "google",
  "llmProvider": "gemini-2.5"
}
```

**Estimated cost**: ₹0.73/minute

### Quality Configuration

```json
{
  "sttProvider": "google",
  "sttModel": "chirp_2",
  "ttsProvider": "azure",
  "llmProvider": "gemini"
}
```

**Estimated cost**: ₹2.40/minute

## Next Steps

- [Hindi](https://edesy.in/docs/voice-agent/languages/hindi) - Hindi configuration
- [Assamese](https://edesy.in/docs/voice-agent/languages/assamese) - Assamese configuration
- [Indian Languages](https://edesy.in/docs/voice-agent/languages/indian-languages) - All Indian languages
