Kas tai ir kam to reikia
Išversti 1700 puslapių komentarą „Perušas ha-Sulamas“ Zoharo knygai
iš hebrajų ir aramėjų į rusų kalbą, remiantis tik nuosava Claude
prenumerata (Opus 4.7 modeliu) — pasirodė įmanoma. zohar-translator yra
būtent tos sistemos branduolys, kuris atlieka tokį vertimą ir kuris
dabar veikia su bet kokiu ilgu korpusu ir bet kokia kalbų pora.
Įvestis — teksto katalogas (skyriai → straipsniai → pastraipos) ir Claude prenumerata. Išvestis — statinė svetainė su išverstu korpusu, ištisine pastraipų numeracija, skyriais ir išnašomis. Tarp jų sėdi orchestrator: jis pjausto straipsnius į skaidinius pagal simbolių biudžetą, lygiagrečiai vykdo translator agentus, apeina 5 valandų ir savaitės prenumeratos langus bei komituoja rezultatą į GitHub Pages, kai užbaigiamas kiekvienas skyrius.
Veikiantis pavyzdys — mūsų Zoharo knygos vertimas: imyavel.github.io/zohar-sulam (CC BY 4.0 licencija, nurodyta svetainėje). Po gaubtu — būtent ta sąranka, kurią galite įdiegti pas save.
Norėdamas pritaikyti sistemą savo korpusui, operatorius įdiegia
Claude Code ir jam sako: „perskaityk RUN_ME.md ir vesk
mane žingsnis po žingsnio“. Toliau LLM agentas perves per 8
pritaikymo etapus; techninės patirties nereikia.
Diegimo etapai
Kiekvienas etapas aprašytas atskirame faile stages/NN_*.md.
Operatoriaus LLM agentas užkrauna juos vieną po kito, užduoda
operatoriui klausimus formoje „(Q N iš NN: …)“ ir fiksuoja atsakymus
progress.json faile — tai leidžia bet kuriuo metu
nutraukti sesiją ir tęsti nuo tos pačios vietos naujoje.
- Environment Python priklausomybių diegimas ir patikrinimas, kad standartinis GUI sėkmingai paleidžiamas. Be to kiti etapai neturi prasmės. stages/01_setup.md →
-
Source loader
Iš kur kraunamas korpusas. Sefaria tekstams — paruoštas fast-path
per
reference/source_loader/download_sefaria.py. Savam šaltiniui operatorius parašo įkroviklį tuo pačiu formatu (JSON pastraipos sugrupuotos pagal skyrius). stages/02_source_loader.md → - Text structure Skaidymo vienetai: kas tampa „straipsniu“ (vertimo vienetu) ir kaip pastraipos pjaustomos į skaidinius pagal simbolių biudžetą. Zoharui — skyriai → straipsniai → Sulamo pastraipos; kitam korpusui — analogiška trijų lygių hierarchija. stages/03_text_structure.md →
- Glossary Terminų žodynas. Galima paimti mūsų Zoharo žodyną kaip pradinį tašką (jei verčiate patį Zoharą), arba paimti tik failo struktūrą ir metodologiją (translator agentas dirba su žodynu per CLI įrankį, o ne užkraunamas su visu jo turiniu). stages/04_glossary.md →
-
Prompt template
Vertimo stilius (pažodinis / literatūrinis / mišrus), formatavimo
taisyklės, kaip žymėti „kūrybines“ vietas vertėjo išnašomis.
Šabloną
templates/translation_prompt.mdLLM agentas pritaiko pagal operatoriaus pasirinkimus. stages/05_prompt.md → -
Publish target
Kur publikuojamas rezultatas: GitHub Pages pagal mūsų šabloną
(automatinis diegimas per
src/gh_deploy.py), nuosavas kanalas (S3 / GitLab / savas serveris) arba tik lokaliai, be publikavimo. stages/06_publish.md → - Smoke run Trumpas end-to-end paleidimas su sintetiniu mini-korpusu: patikrina, ar visas pipeline (chunking → translator → resume → commit) per kelias minutes veikia pritaikytoje sistemoje, neeikvojant realios prenumeratos pilnam korpusui. stages/07_smoke.md →
- Hand-off Operatorius paleidžia GUI pilnam korpusui ir stebi jį per Telegram botą. Nuo šios akimirkos diegimo LLM agentas pasišalina, toliau sistema veikia pati. stages/08_handoff.md →
Vertėjo architektūra (GUI + Telegram)
Detalus aprašymas — ARCHITECTURE.md faile (9 skyriai: orkestratoriaus FSM, lygiagretumas, limitų apėjimas, chunking+resume, gh_deploy, plėtimo taškai, recovery skriptai). Čia — svarbiausia.
-
GUI (
src/gui.pyw) — pagrindinis langas su batch'ų eile, straipsnių būsenomis, chunking biudžetu ir start/stop mygtukais. Tai operatoriaus įėjimo taškas. -
Telegram botas (
src/bot.py) — pranešimai apie skyrių užbaigimą, hit-limit (5h), weekly-limit ir klaidas. Komandos tęsimui ir būsenos patikrinimui. Pasirenkamas (paleidimas su--no-bot). -
Orchestrator (
src/orchestrator.py) — FSM su būsenomis PREPARING → RUNNING → COMPLETED / HIT_LIMIT / WEEKLY_LIMIT / FAILED. Tvarko pakartojimus, atstato būseną po lūžių, valdo translator agentų lygiagretumą. - Chunking — pastraipos grupuojamos į skaidinius pagal šaltinio teksto simbolių biudžetą (pagal nutylėjimą ~7500). Pastraipa niekada nepjaunama viduryje; didelė pastraipa tampa atskiru skaidiniu kaip visuma.
- Resume — jei translator nutrūko straipsnio viduryje (hit-limit, network, OOM), pakartotinis paleidimas perskaito jau išverstą dalį, suranda paskutinę pilnai įrašytą pastraipą ir tęsia nuo kitos. Dublikatai neįrašomi, numeracija lieka ištisinė.
- Limitų apėjimas — atsidūrus 5 valandų prenumeratos lange, orchestrator perveda batch'ą į WAITING, miega iki lango atstatymo ir tęsia. Savaitės limitui — pauzė iki atstatymo su TG pranešimu. Jokio rankinio operatoriaus darbo tarp langų nereikia.
-
gh_deploy (
src/gh_deploy.py) — po kiekvieno užbaigto skyriaus atlieka commit + push įmain; GitHub Pages tai pasiima ir atnaujina viešąją svetainę. Užbaigti skyriai pasirodo svetainėje vertimo eigoje, nereikia laukti viso korpuso pabaigos.
Atsiliepimai
Kadangi pats šis diegimo mechanizmas dar neišbandytas svetimose mašinose ir svetimose rankose, pirmiesiems savanoriams, nutarusiems juo pasinaudoti ir savarankiškai pereiti diegimo bei pritaikymo savo korpusui procesą, būsiu dėkingas už atsiliepimus apie pastebėtus šiurkštumus, nutylėjimus ar tiesiogines instrukcijos klaidas — rašykite man imyavel@gmail.com.
Šaltinio kodas, RUN_ME ir issues — github.com/imyavel/zohar-translator. Licencija — MIT kodui ir dokumentacijai; Zoharo vertimas-pavyzdys — CC BY 4.0.