YADRO Replaces Smartcat with Weblate, Dify and Qwen, Cutting Per-Word Cost Sixfold
YADRO's technical documentation department got tired of paying Smartcat for every uploaded word and built its own system, "Tolmach", on open source. Serge pulls strings from Git into PO files, Weblate gives translators an interface, and Dify sends segments to a local Qwen model. Data never leaves the company's servers. By the authors' calculations, a word costs at most 0.40 ₽ versus roughly 2.5 ₽ at Smartcat.
AI-processed from Habr AI; edited by Hamidun News
When the bill for a translation service grows along with the volume of documentation, sooner or later the thought arrives: why not host everything ourselves? YADRO's technical documentation team did exactly that. Smartcat charged for every uploaded word, even ones already translated, and became even more expensive after turning into an "AI platform". The team built its own localization system and named it "Tolmach".
What the system is made of
The new tool had three requirements: all data stays on company servers, LLM integration can be configured flexibly, and there is a web interface or client-server architecture. Of the open source candidates, Zing and Weblate reached the finals. Zing, created by Evernote, was dropped: its developers announced they no longer support it and are looking for a new maintainer, otherwise the project will be shut down. Weblate is alive, with a community and paid professional support, an API and integration with version control systems.
The second component is Serge. It pulls source files from Git, uses parsers to extract translatable strings (DITA, configs, source code) and puts them into PO files, the localization industry standard. After translation the process runs in reverse: finished strings are embedded back into the sources and returned to the repository. Developers stay in Git, and translators don't have to deal with file formats.
Where the LLM comes in
Between Weblate and the model sits Dify, a platform for building LLM applications. The pipeline is simple: text, model, post-processing, response. Translation is done by the reasoning model Qwen3.6-35B-A3B on the company's own inference cluster. When an editor opens the Automatic suggestion tab, Weblate sends the string to Dify, and the answer arrives in about 0.63 seconds. The connection was made through Docker configuration files. Loading PO files into Weblate had to be automated with a script via the REST API, because the built-in commands didn't work.
Two practical techniques stand out. First: a long prompt with a dozen prohibitions can be replaced with structured output. The authors defined a JSON schema with a single field, russian_translation, and the model stopped writing "sure, here is your translation". The system prompt shrank to a single sentence. Second: whatever can be done in code, do in code. The model stubbornly produces "ё" even though it is not used in the documentation, and fighting this in the prompt degraded the quality of the translation itself. The fix is two replace lines in post-processing.
What it costs and where the catch is
The calculation is based on a GPU costing 5 million rubles, a 5-year service life and 30–40% utilization. A one-word segment costs 0.40 ₽, while a 250-word segment costs about 0.0048 ₽ per word. Smartcat charges roughly 2.5 ₽, so the difference is about sixfold in the worst case for the local model. But the calculation leaves out the server, electricity, engineers' salaries and other operating costs, so the real savings are more modest.
Quality isn't perfect either. The model can hallucinate, violate terminology and break formatting. Because it works segment by segment, translations are not always consistent. That is why a final review by a technical writer remains mandatory.
What to take away
If you have a lot of documentation and can't send data outside, the Git, Serge, Weblate and Dify combination looks like a workable scheme. Structured output instead of long prompts and moving deterministic rules into code will be useful in any other LLM pipeline. But treat the "six times cheaper" figure with caution: calculate your own total cost of ownership, including people and operations. The author promises a full deployment guide in part two.
- Nov 8, 2026DeepSeek Shows Seven Prompts for Building Interactive Tools Without a Frontend
- Nov 8, 2026GPT-6 Astra changed 0.016% of Qwen's weights and raised accuracy to 48.1%
- Nov 8, 2026Anti-Spam Bot TAB Gets a Personal Dashboard and Website: 13,000 Spam Messages Removed, 0.39% Error Rate
- Nov 8, 2026Datasette Agent 0.5a0 brings chat and the app together in one window
Key Questions Answered
What the system is made of?
The new tool had three requirements: all data stays on company servers, LLM integration can be configured flexibly, and there is a web interface or client-server architecture. Of the open source candidates, Zing and Weblate reached the finals. Zing, created by Evernote, was dropped: its developers announced they no longer support it and are looking for a new maintainer, otherwise the project will be shut down.
Where the LLM comes in?
Between Weblate and the model sits Dify, a platform for building LLM applications. The pipeline is simple: text, model, post-processing, response. Translation is done by the reasoning model Qwen3.6-35B-A3B on the company's own inference cluster. When an editor opens the Automatic suggestion tab, Weblate sends the string to Dify, and the answer arrives in about 0.63 seconds. The connection was made through Docker configuration files.
What it costs and where the catch is?
The calculation is based on a GPU costing 5 million rubles, a 5-year service life and 30–40% utilization. A one-word segment costs 0.40 ₽, while a 250-word segment costs about 0.0048 ₽ per word. Smartcat charges roughly 2.5 ₽, so the difference is about sixfold in the worst case for the local model. But the calculation leaves out the server, electricity, engineers' salaries and other operating costs, so the real savings are more modest. Quality isn't perfect either.
Test Frontier LLMs & Autonomous Agents in One Workspace
Run Claude Opus 5.5, GPT-6, Gemini 3.1, and DeepSeek side-by-side in Nomad AI (nomadnet.ai) — unified model routing, deep research, and multimodal workflows under one subscription.
The AI world, distilled — once a week
Seven stories that actually mattered, hand-picked. No noise, no reposts, no press releases.
Done! Check your inbox for a confirmation.