Skip to main content

Knowledge Translation Transmutation Core - Transforming translations into gold-standard quality

Project description

KTTC

English · Русский · 中文

KTTC - Knowledge Translation Transmutation Core

CI CodeQL PyPI Python Version License

Autonomous AI-powered translation quality assurance

KTTC uses specialized multi-agent systems to automatically detect, analyze, and fix translation quality issues following the industry-standard MQM (Multidimensional Quality Metrics) framework. Get production-ready translation quality in seconds, not hours.


Key Features

  • Multi-Agent QA System - 5 specialized agents analyze accuracy, fluency, terminology, hallucinations, and context
  • MQM Scoring - Industry-standard quality metrics used in WMT benchmarks
  • Smart Routing - Automatically selects optimal models based on text complexity (60% cost savings)
  • Auto-Correction - LLM-powered error fixing with iterative refinement (TEaR loop)
  • Language-Specific Agents - Native-level checks for English, Chinese, and Russian
  • Translation Memory - Semantic search with quality tracking and reuse
  • Glossary Management - Custom terminology validation and consistency
  • Batch Processing - Process thousands of translations in parallel
  • CI/CD Ready - GitHub Actions integration, exit codes, multiple output formats
  • Multi-LLM Support - OpenAI, Anthropic, GigaChat, YandexGPT

Performance: 90% cost reduction vs manual review • 100-1000x faster • 95+ MQM quality target


Quick Start

1. Install

pip install kttc

Optional language enhancements:

pip install kttc[english]        # English: LanguageTool (5,000+ grammar rules)
pip install kttc[chinese]        # Chinese: HanLP (measure words, particles)
pip install kttc[all-languages]  # All language helpers

2. Set API Key

export KTTC_OPENAI_API_KEY="sk-..."
# or
export KTTC_ANTHROPIC_API_KEY="sk-ant-..."

3. Check Translation Quality

kttc check source.txt translation.txt --source-lang en --target-lang es

Output:

✅ MQM Score: 96.5 (PASS - Excellent Quality)
📊 5 agents analyzed translation
⚠️  Found 2 minor issues, 0 major, 0 critical
✓ Quality threshold met (≥95.0)

That's it! KTTC works out of the box with smart defaults:

  • ✅ Smart routing (auto-selects cheaper models for simple texts)
  • ✅ Auto-glossary (uses 'base' glossary if exists)
  • ✅ Auto-format (detects output format from file extension)

Commands

KTTC provides a unified CLI with smart auto-detection:

kttc check source.txt translation.txt          # Single quality check
kttc check source.txt t1.txt t2.txt t3.txt     # Auto-compares multiple translations
kttc check translations.csv                     # Auto-detects batch mode (CSV/JSON)
kttc check source_dir/ trans_dir/              # Auto-detects directory batch mode

kttc batch --file translations.csv              # Explicit batch processing
kttc compare --source src.txt -t t1 -t t2      # Compare translations side-by-side
kttc translate --text "Hello" --source-lang en --target-lang es  # Translate with QA
kttc benchmark --source text.txt --providers openai,anthropic    # Benchmark LLMs

# Glossary management (project + user global storage)
kttc glossary list                              # List all glossaries
kttc glossary create tech --from-csv terms.csv  # Create project glossary
kttc glossary create personal --from-csv my.csv --user  # Create user glossary

See full command reference: docs/en/reference/cli-commands.md


Python API

import asyncio
from kttc.agents import AgentOrchestrator
from kttc.llm import OpenAIProvider
from kttc.core import TranslationTask

async def check_quality():
    llm = OpenAIProvider(api_key="your-key")
    orchestrator = AgentOrchestrator(llm)

    task = TranslationTask(
        source_text="Hello, world!",
        translation="¡Hola, mundo!",
        source_lang="en",
        target_lang="es",
    )

    report = await orchestrator.evaluate(task)
    print(f"MQM Score: {report.mqm_score}")
    print(f"Status: {report.status}")

asyncio.run(check_quality())

See full API reference: docs/en/reference/api-reference.md


Documentation

📚 Complete documentation is available in docs/

Quick Links

Documentation Structure

Following the Diátaxis framework:

  • 📚 Tutorials - Learn by doing (step-by-step guides)
  • 📖 Guides - Solve specific problems (how-to guides)
  • 📋 Reference - Look up technical details (API, CLI)
  • 💡 Explanation - Understand concepts (architecture, design)

Translations

Languages: 🇺🇸 English (primary) · 🇷🇺 Русский · 🇨🇳 中文

Full documentation available in:


Development

Setup

git clone https://github.com/kttc-ai/kttc.git
cd kttc
python3.11 -m venv venv
source venv/bin/activate
pip install -e ".[dev]"
pre-commit install

Quality Standards

  • Type Checking: mypy --strict
  • Formatting: black (line length: 100)
  • Linting: ruff
  • Testing: pytest with asyncio support
# Run all checks
pre-commit run --all-files
pytest --cov=kttc

Contributing

We welcome contributions! See CONTRIBUTING.md for guidelines.

Quick start:

  1. Fork the repository
  2. Create a feature branch
  3. Make changes and add tests
  4. Run quality checks: pre-commit run --all-files && pytest
  5. Submit a pull request

Please read our Code of Conduct before contributing.


Security

For security vulnerabilities, see SECURITY.md. Do not open public issues for security concerns.


License

Licensed under the Apache License 2.0. See LICENSE for details.

Copyright 2025 KTTC AI (https://github.com/kttc-ai)


Citation

If you use KTTC in your research:

@software{kttc2025,
  title = {KTTC: Knowledge Translation Transmutation Core},
  author = {KTTC AI},
  year = {2025},
  url = {https://github.com/kttc-ai/kttc},
  version = {0.1.0}
}

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kttc-0.3.0.tar.gz (175.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kttc-0.3.0-py3-none-any.whl (243.0 kB view details)

Uploaded Python 3

File details

Details for the file kttc-0.3.0.tar.gz.

File metadata

  • Download URL: kttc-0.3.0.tar.gz
  • Upload date:
  • Size: 175.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for kttc-0.3.0.tar.gz
Algorithm Hash digest
SHA256 bfbb7ed676d6947d3ba45f1ddc894a9e6c9fa48afce412d76b18ee30a96254e7
MD5 5b92438061cc69ecd6034d1417a0d91d
BLAKE2b-256 84b0c73633d9135514e86f2483d7f2bf8bc28cbf7f5ac9b8d42e8929037fb17a

See more details on using hashes here.

Provenance

The following attestation bundles were made for kttc-0.3.0.tar.gz:

Publisher: publish.yml on kttc-ai/kttc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file kttc-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: kttc-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 243.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for kttc-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9998c773cb7dd2913f3ce677ace1b0baf59b128812d7bae82c13b3a3d635a862
MD5 a4025a13c306ec6fcb7268b1f52baf4a
BLAKE2b-256 829c0d5a314050fb9fd24d44f17de0fc71279c32032d2ccc72a9835a2f00ba28

See more details on using hashes here.

Provenance

The following attestation bundles were made for kttc-0.3.0-py3-none-any.whl:

Publisher: publish.yml on kttc-ai/kttc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page