How kvsabhiram/anuvaad-sentence-generation-agent works
Anuvaad Forge builds an English–Indic parallel training corpus in two independently resumable phases: generate and quality-gate English sentences for vocabulary, then translate and quality-gate them. The graph shows the documented handoff and principal runtime stages. Orchestrators and some agent implementations were only partially sampled, so uncertain internal calls are omitted; documented capabilities are retained where their modules are identified by the tree.
Main entry points: pipeline/orchestrator.py Generation orchestrator · pipeline/orchestrator.py Translation orchestrator · main.py Generation CLI · generator.py Sentence generator
Components 25
Sentence generation
- Generation CLI
sentence_generation/main.py - Generation orchestrator
sentence_generation/pipeline/orchestrator.py - Vocabulary reader
sentence_generation/storage/excel.py - Sentence generator
sentence_generation/agents/generator.py - Sentence judge
sentence_generation/agents/judge.py
Sentence translation
- Translation CLI
sentence_translation/main.py - Translation orchestrator
sentence_translation/pipeline/orchestrator.py - Tier 1 translator
sentence_translation/agents/translator_gemini.py - Tier 2 escalation
sentence_translation/agents/translator_gemini.py
Quality checks
- Sentence validation
sentence_generation/pipeline/validation.py - Embedding dedup
sentence_generation/embedding/similarity.py - Embedding model
sentence_generation/embedding/model.py - Translation rule checks
sentence_translation/pipeline/validation.py - Translation judge
sentence_translation/agents/judge_translation_gemini.py - Semantic and dedup checks
sentence_translation/embedding/similarity.py - Cross-lingual model
sentence_translation/embedding/model.py
State and outputs
- Generation checkpoints
sentence_generation/pipeline/state.py - Accepted sentences
sentence_generation/storage/jsonl.py - Translation checkpoints
sentence_translation/pipeline/state.py - Parallel corpus
sentence_translation/storage/jsonl.py
Other components
- Vocabulary list
- Generation LLMs
- English sentences
- Gemini service
- Corpus consumer
Connections 27
- Vocabulary list → Generation CLI: provides words
- Generation CLI → Generation orchestrator: starts run
- Generation orchestrator → Vocabulary reader: reads vocabulary
- Generation orchestrator → Sentence generator: requests candidates
- Sentence generator → Generation LLMs: calls provider
- Generation orchestrator → Sentence validation: validates candidates
- Generation orchestrator → Embedding dedup: filters duplicates
- Embedding dedup → Embedding model: embeds sentences
- Generation orchestrator → Sentence judge: requests evaluations
- Sentence judge → Generation LLMs: calls provider
- Generation orchestrator → Generation checkpoints: checkpoints progress
- Generation orchestrator → Accepted sentences: exports accepted
- Accepted sentences → English sentences: provides sentences
- English sentences → Translation CLI: supplies input
- Translation CLI → Translation orchestrator: starts run
- Translation orchestrator → Tier 1 translator: requests translation
- Tier 1 translator → Gemini service: submits batch
- Translation orchestrator → Translation rule checks: checks translations
- Translation orchestrator → Translation judge: requests evaluation
- Translation judge → Gemini service: calls model
- Translation orchestrator → Tier 2 escalation: escalates failures
- Tier 2 escalation → Gemini service: calls model
- Translation orchestrator → Semantic and dedup checks: checks meaning and duplicates
- Semantic and dedup checks → Cross-lingual model: embeds text
- Translation orchestrator → Translation checkpoints: checkpoints progress
- Translation orchestrator → Parallel corpus: exports accepted pairs
- Parallel corpus → Corpus consumer: delivers corpus