
Cotton
Translation workflow
Sugeneruoti vertimai tampa peržiūrimais rezultatais.
Žaidimų dialogų vertimo darbo eiga.
Cotton vocabulary
- prompt layers
- glossary
- generation
- revision
- judge
- hard gate
- score
- intake
- checkpoint
- spend control
- stale sweep
- approval
- correction
- audit trail
Prompt Layers: SYSTEM_PROMPT_L0 · buildTranslateUserMessage · L1 CONTRACT · L3 SPEAKER · L6 SOURCE · L7 INSTRUCTION · ICU PLACEHOLDER · INLINE TAG · TARGET TEXT ONLY · FORCED MAPPING · L2 GLOSSARY · speaker_keyGlossary: glossary_term · fetchGlossaryHits · canonical_form · forbidden_translations · SUBSTRING MATCH · FORCED MAPPING · FORBIDDEN ALTERNATIVE · L2 GLOSSARY · glossary_hits · glossary_complianceGeneration: AdapterRegistry · anthropic-sdk · openai-sdk · claude-local · codex-local · llm_plan · PIVOT_VIA · shouldPivot · COTTON_ADAPTER_CONCURRENCY · NODE_OPTIONS · pivot_register_carry · translation.refinedRevision: buildTranslateUserMessage · L7 INSTRUCTION · runRefinementLoop · priorAttempt · priorCritique · REJECTED BY THE JUDGE · maxTurns · willRetry · RefinementHooks · HOOK ABORT · turn_count_to_final · critique_for_retry · failingDimensions · cost_ceiling_usd · needs_reviewJudge: glossary_hits · runJudge · JUDGE_SYSTEM_PROMPT · judgeModel · TEMPERATURE 0 · parseJudgeResponse · FOUR-SECTION XML · VERBATIM CHUNKS · severity · critique_for_retry · judge_citation · missingHardGates · TRIGGER ABSENT = PASS · judge.scoredHard Gate: ICU PLACEHOLDER · INLINE TAG · FORBIDDEN ALTERNATIVE · hard_gate_fail · hardGatePassed · glossary_compliance · cps_budget_compliant · icu_validity · inline_tag_preserved · length_constraint · HARD GATE FIRST · missingHardGates · TRIGGER ABSENT = PASSScore: HARD GATE FIRST · computeVerdict · cottonEvalScore · WEIGHTED AVERAGE · tone_register · personality_consistent · emotional_state_match · cultural_marker_preserved · accuracy · pivot_register_carry · auto_approve_threshold · failingDimensions · approval_gate · judge.scoredIntake: processXlsxBytes · classifySheetName · parseGoogleSheetsUrl · source_file · content_sha256 · extractStageDirection · speaker_key · ingest_session · segment.ingested · github.push.receivedCheckpoint: translation_progress · last_completed_step · turn_translated · turn_judged · finalized · jobEntryGuard · SELECT FOR UPDATE · attempt_count · DEFAULT_MAX_RESUME_ATTEMPTS · TWO-TX SPLIT · ON CONFLICT DO NOTHINGSpend Control: llm_plan · costCap · cost_ceiling_usd · rateLimit · FailoverDispatcher · haltOnQuota · detectQuotaFromStream · quota_daily_exhausted · auth_revoked · NO AUTO-SWAP · needs_credential · POST /:id/resumeStale Sweep: COTTON_ADAPTER_CONCURRENCY · NODE_OPTIONS · attempt_count · runStaleSweep · STALE_THRESHOLD_INTERVAL · DLQ_ATTEMPT_CAP · LIMIT 200 · re_enqueued · dead_lettered · ORPHAN RE-ENQUEUE · IN-FLIGHT SET · /health/queues · maxStalledCount · needs_reviewApproval: auto_approve_threshold · ingest_session · SELECT FOR UPDATE · needs_credential · POST /:id/resume · POST /:id/approve · POST /:id/unapprove · POST /:id/reject · APPROVE_FROM · REJECT_FROM · needs_review · reviewer_id · HITL · approval_gate · translation.approved · EDIT & APPROVE · actor_idCorrection: POST /:id/correct · corrected_text · CORRECT_FROM · EDIT & APPROVE · human_corrected_segments · human-corrected-after-mt · translation.human_corrected · supersedes · NEW REVISION · IMMUTABLE HISTORYAudit Trail: turn_count_to_final · severity · judge_citation · content_sha256 · segment.ingested · github.push.received · translation.approved · human_corrected_segments · translation.human_corrected · IMMUTABLE HISTORY · event_log · appendNextEvent · ULID · AGGREGATE VERSION · translation_state_log · actor_id · llm_call_log · telemetryHook · judge.scored · translation.refined
Balai, pakartojimai ir žmogaus peržiūra – kiekvienas savo riboje.
Generavimas ir vertinimas dalijasi žodynu, o teisėjo modelio praneštos griežtojo slenksčio nesėkmės negalima kompensuoti vidutiniu balu. Tarpinės vertimo ir vertinimo būsenos įrašomos, pakartojimų ir kainos limitai laikomi atskirai nuo išnaudotų prisijungimo duomenų, o užstrigusios užduotys grąžinamos į eilę ar peržiūrai, priklausomai nuo priežasties.
Šis darbo projektas į vieną srautą sujungia vertimų generavimą, modelio pateikiamą kokybės vertinimą, pakartojimus ir žmogaus peržiūrą.
Nuo saugyklos pradžios iki bendradarbiavimo metu patvirtinto darbo
Žiniatinklio programa su vertimų redagavimo ir patvirtinimo ekranais, API ir užduočių apdorojimo procesu, veikianti kūrimo aplinkoje.
Registracija → įėjimas
Į eilę įdedama po komito į duomenų bazę; worker užrakina eilutę, patikrina bandymą ir sukuria juodraštį.
Šaltinis · tikslinės kalbosDuomenys: šaltinisEilė po komito
API · užduočių registracijaŠaltinio segmentai ir projekto tikslinės kalbos išsaugomi duomenų bazėje. Kliento duomenys nerodomi.
Eilė po komito
API · užduočių registracijaDuomenys: po komitoBullMQ · užduoties IDUžduočių eilėPo komito į duomenų bazę kiekvienai aktyviai tikslinei kalbai į eilę įdedama užduotis su užklausos ribose nustatytu ID. Jei įdėti į eilę nepavyksta, tik registruojamas įspėjimas, o komitas neatšaukiamas (nėra atomiško outbox), – todėl ir egzistuoja užstrigusių peržiūra.
BullMQ · užduoties ID
Užduočių eilėPaleidimas · sprendimas: užduoties pristatymasEilutės užraktas · bandymo patikraUžduoties įėjimasBullMQ asinchroniškai perduoda užduotį worker.
Eilutės užraktas · bandymo patikra
Užduoties įėjimasDuomenys: pažangos eilutėJuodraštis · pažangaVertimo būsenaTransakcijos viduje pažangos eilutė užrakinama ir sukuriamas vertimo juodraštis. Automatiniai finalizuotų ar dėl prisijungimo duomenų pristabdytų užduočių pakartojimai praleidžiami; rankinės užklausos apdorojamos atskirai.
Eilutės užraktas · bandymo patikra
Užduoties įėjimasPaleidimas · sprendimas: bandymas leidžiamasGeneravimas · modelio iškvietimasVertimo ėjimasBandymų skaičius neviršijant limito padidinamas vienetu, tada prasideda vertimo ėjimas.
Generavimas → vertinimas → finalizavimas
Generavimas ir vertinimas naudoja tą patį žodyną; vertimas ir vertinimas įrašomi atskirai, o kodas agreguoja vertinimą prieš finalizuodamas.
Darbo srities žodynas
Žodynas · kontekstasDuomenys: žodynasGeneravimas · modelio iškvietimasVertimo ėjimasSurandami darbo srities žodynas ir kontekstas ir perduodami generavimui.
Darbo srities žodynas
Žodynas · kontekstasDuomenys: tas pats žodynasTeisėjo modelio iškvietimas · analizėVertimo ėjimasVertinimas gauna tuos pačius žodyno apribojimus.
Generavimas · modelio iškvietimas
Vertimo ėjimasDuomenys: Tx1 · vertimasVertimo · vertinimo eilutėsVertimo būsenaModelis kviečiamas tiesiogiai arba per tarpinę en-US, o iškvietimas, įvykis ir pažanga įrašomi viena transakcija. Jei užduotis paleidžiama iš naujo po strigties, vertimo iškvietimas ir jo kaina gali pasikartoti.
Teisėjo modelio iškvietimas · analizė
Vertimo ėjimasDuomenys: Tx2 · vertinimasVertimo · vertinimo eilutėsVertimo būsenaTeisėjo balai ir įrodymai įterpiami vieną kartą kiekvienam vertimui ir ėjimui; dublikatas suranda esamą eilutę, o citatos įrašomos tik pirmojo įterpimo metu. Tai ne ta pati transakcija kaip vertimas.
Teisėjo modelio iškvietimas · analizė
Vertimo ėjimasDuomenys: balai · slenksčiaiGriežtasis slenkstis · svertinis vidurkisVerdikto taisyklėsTeisėjo modelio atsakymas išanalizuojamas į balus pagal matmenis ir slenksčių rezultatus. Ar žodynas išlaikytas, praneša teisėjo modelis.
Griežtasis slenkstis · svertinis vidurkis
Verdikto taisyklėsPaleidimas · sprendimas: verdiktasĖjimai · kaina · kvotaPakartojimas · išlaidosBet kuri pranešta griežtojo slenksčio nesėkmė reiškia nulį ir nesėkmę; tik tada taikomi svertinis vidurkis ir matmenų slenksčiai. Bendras 8.0 slenkstis yra numatytoji konfigūracijos reikšmė, o ne stebėta vertimo kokybė.
Ėjimai · kaina · kvota
Pakartojimas · išlaidosPaleidimas · sprendimas: passGalutinė transakcijaFinalizavimasSėkmė finalizuojama kaip translated.
Galutinė transakcija
FinalizavimasDuomenys: galutinis įrašasBūsena · iškvietimų žurnalasVertimo būsenaKandidatas, būsena, balas ir ėjimai finalizuojami, o pažangos finalizavimas ir būsenų žurnalas įrašomi viena transakcija. Vertimo užbaigimo įvykis skleidžiamas tik esant translated.
Pakartojimas · išlaidų limitai
Neišlaikius – dar vienas ėjimas; limitas reiškia žmogaus peržiūrą; kvota ar autentifikavimas sustabdo išlaidas ir laukia, kol operatorius pratęs.
Griežtasis slenkstis · svertinis vidurkis
Verdikto taisyklėsPaleidimas · sprendimas: verdiktasĖjimai · kaina · kvotaPakartojimas · išlaidosBet kuri pranešta griežtojo slenksčio nesėkmė reiškia nulį ir nesėkmę; tik tada taikomi svertinis vidurkis ir matmenų slenksčiai. Bendras 8.0 slenkstis yra numatytoji konfigūracijos reikšmė, o ne stebėta vertimo kokybė.
Ėjimai · kaina · kvota
Pakartojimas · išlaidosPaleidimas · sprendimas: kitas ėjimasGeneravimas · modelio iškvietimasVertimo ėjimasNeišlaikęs vertimas generuojamas iš naujo su ankstesniu vertimu ir kritika. Net griežtojo slenksčio nesėkmę pirmiausia galima bandyti dar kartą, užuot iškart perdavus žmogui.
Ėjimai · kaina · kvota
Pakartojimas · išlaidosPaleidimas · sprendimas: limitas · nutraukimasŽmogaus peržiūraKai ėjimai išnaudojami ar pasiekiama kainos lubų riba, užduotis finalizuojama kaip needs_review. Finalizuota reiškia, kad apdorojimas baigtas, o ne kad žmogus patvirtino.
Ėjimai · kaina · kvota
Pakartojimas · išlaidosNesėkmė · limitas: kvota · autentifikavimasPrisijungimo duomenų patikraKvotos ar autentifikavimo signalas sustabdo išlaidas ir nustato needs_credential. Automatinio perjungimo į kitą paskyrą ar tiekėją nėra. Perdavimo klaidos be sustabdymo signalo grąžinamos BullMQ pakartojimams.
Prisijungimo duomenų patikraPaleidimas · sprendimas: rankinis tęsimasBullMQ · užduoties ID
Užduočių eilėPrisijungimo duomenis patikrinęs operatorius aiškiai paleidžia iš naujo.
Užstrigusių užduočių atkūrimas
Seni juodraščiai skirstomi pagal priežastį: nesant eilėje – vėl į eilę, išnaudojus bandymus – žmogaus sprendimas.
Juodraštis · pažanga
Vertimo būsenaStebėjimas · ataskaita: užstrigęs juodraštisJuodraščiai senesni nei 10 min · daugiausia 200Užstrigusių peržiūraPerskaitoma iki 200 kandidatų, kurie juodraščiais būna ilgiau nei 10 minučių, pradedant seniausiais. Užklausa neima užrakto, o atnaujinimai ir žurnalai vykdomi atskirais sakiniais, todėl tai neaprašoma kaip paketas be lenktynių sąlygų.
Juodraščiai senesni nei 10 min · daugiausia 200
Užstrigusių peržiūraPaleidimas · sprendimas: mažiau už limitąEilės būsenos palyginimasEilės patikraTurint mažiau bandymų nei limitas (3), užduotis lyginama su eilės būsenomis active, waiting, delayed ir prioritized. Kode išnaudotų bandymų šaka eina prieš šią eilės patikrą.
Eilės būsenos palyginimas
Eilės patikraPaleidimas · sprendimas: vėl į eilęBullMQ · užduoties IDUžduočių eilėJei užduoties eilėje nėra, ji vėl įdedama į eilę. API naudoja ID su užklausos priesaga, o peržiūra ieško pagal segmento ir kalbos ID, todėl tai neaprašoma kaip atitikimas kiekvienai vykdomai užklausai.
Juodraščiai senesni nei 10 min · daugiausia 200
Užstrigusių peržiūraPaleidimas · sprendimas: rezultatas yraŽmogaus peržiūraIšnaudojus visus 3 bandymus ir esant vertimo rezultatui, užduotis pereina į needs_review.
Juodraščiai senesni nei 10 min · daugiausia 200
Užstrigusių peržiūraPaleidimas · sprendimas: rezultato nėraPrisijungimo duomenų patikraIšnaudojus visus 3 bandymus ir nesant rezultato, užduotis pereina į needs_credential.
Visi ryšiai vienodo storio. Pasirinkite srautą, kad būtų paryškintas tik jo kelias su sunumeruotais žingsniais.
- Ištisinė · įvesties, rezultatų ir įrašų kryptis
- Brūkšninė · paleidimas, sprendimas, užklausa
- Ilga taškinė · stebėjimas ir ataskaitos, atskirai nuo sprendimo
- Trumpa brūkšninė · nesėkmė, sustabdymas, limitas
- Stora juoda linija · pasirinktas srautas; skaičiai rodo tvarką
- Rėmelis · kodo ar būsenos riba, pavadinta antraštėje
- Vidinė plokštelė · tos ribos komponentas
- Taškinis rėmelis · už tos ribos
- Oranžinis kontūras · kur sprendžia modelis
- Generavimas · išlaidos · finalizavimas
- Įėjimas · verdikto taisyklės · peržiūra
- Eilė · būsena · įrašai
- Registracija · eilės patikra
Nubraižyta pagal privačius įgyvendinimo ir kūrimo įrašus. Klientų duomenys ir kodo keliai nerodomi.
- Viena peržiūra
- May 26, 2026, vienas peržiūros ciklas kūrimo aplinkoje: 200 patikrinta, 106 būsenų perėjimai, 2 vėl eilėje. Būsenos perėjimas nėra sėkmingas vertimas, o 106 pasiskirstymas pagal paskirties būsenas neužfiksuotas.
- Kodėl ne lygiai vieną kartą
- Įrašai rašomi be dublikatų, bet jei užduotis paleidžiama iš naujo po strigties, modelio iškvietimai ir jų kaina gali pasikartoti. Lygiagretumo limitas taikomas kiekvienam procesui, o ne visam klasteriui.
- Verdikto apimtis
- Tai, kad vidurkis negali uždengti žodyno nesėkmės, yra praneštų slenksčių agregavimo taisyklė. Ji neįrodo, kad rastas kiekvienas draudžiamas terminas ar kad kokybė prilygsta gimtakalbio lygiui.