
Cotton
Translation workflow
No ģenerētiem tulkojumiem — pārskatāmi rezultāti.
Tulkošanas darbplūsma spēļu dialogiem.
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
Vērtējumi, atkārtojumi un cilvēka pārskatīšana — katrs pie savas robežas.
Ģenerēšanai un spriedumam ir kopīgs glosārijs, un tiesneša modeļa ziņotu obligāto vārtu kļūmi nevar kompensēt ar vidējo rezultātu. Tulkojuma un sprieduma starpstāvokļi tiek reģistrēti, atkārtojumu un izmaksu ierobežojumi tiek turēti atsevišķi no izsmeltiem akreditācijas datiem, un iestrēguši darbi atgriežas rindā vai pārskatīšanā atkarībā no cēloņa.
Šis darba projekts vienā plūsmā savieno tulkojumu ģenerēšanu, modeļa ziņotu kvalitātes spriedumu, atkārtojumus un cilvēka pārskatīšanu.
No repozitorija sākuma līdz darbam, kas apstiprināts sadarbības laikā
Tīmekļa lietotne ar tulkojumu rediģēšanas un apstiprināšanas ekrāniem, API un darbu worker, kas darbojas izstrādes vidē.
Reģistrācija → ieeja
Rindā pēc datubāzes komita; worker bloķē tabulas rindu, pārbauda mēģinājumu un izveido melnrakstu.
Avots · mērķa valodasDati: avotsRindā pēc komita
API · darba reģistrācijaAvota segmenti un projekta mērķa valodas tiek saglabāti datubāzē. Klientu dati netiek rādīti.
Rindā pēc komita
API · darba reģistrācijaDati: pēc komitaBullMQ · darba IDDarbu rindaPēc datubāzes komita katrai aktīvajai mērķa valodai rindā tiek ievietots darbs ar pieprasījuma ID. Ja ievietošana rindā neizdodas, tiek reģistrēts tikai brīdinājums un komits netiek atsaukts (nav atomāra outbox), tāpēc pastāv novecojušo darbu pārbaude.
BullMQ · darba ID
Darbu rindaIzpilde · spriedums: darba nodošanaTabulas rindas bloķēšana · mēģinājuma pārbaudeDarba ieejaBullMQ asinhroni nodod darbu worker.
Tabulas rindas bloķēšana · mēģinājuma pārbaude
Darba ieejaDati: progresa ierakstsMelnraksts · progressTulkojuma stāvoklisTransakcijas iekšienē progresa ieraksts tiek bloķēts un izveidots tulkojuma melnraksts. Jau pabeigtu vai akreditācijas datu dēļ apturētu darbu automātiskie atkārtojumi tiek izlaisti; manuāli pieprasījumi tiek apstrādāti atsevišķi.
Tabulas rindas bloķēšana · mēģinājuma pārbaude
Darba ieejaIzpilde · spriedums: mēģinājums atļautsĢenerēšana · modeļa izsaukumsTulkošanas gājiensMēģinājumu skaits ierobežojuma robežās palielinās par vienu, un tad sākas tulkošanas gājiens.
Ģenerēšana → spriedums → pabeigšana
Ģenerēšana un spriedums izmanto to pašu glosāriju; tulkojums un spriedums tiek reģistrēti atsevišķi, un kods apkopo spriedumu pirms pabeigšanas.
Darbvietas glosārijs
Glosārijs · kontekstsDati: glosārijsĢenerēšana · modeļa izsaukumsTulkošanas gājiensDarbvietas glosārijs un konteksts tiek atrasti un nodoti ģenerēšanai.
Darbvietas glosārijs
Glosārijs · kontekstsDati: tas pats glosārijsTiesneša modeļa izsaukums · parsēšanaTulkošanas gājiensSpriedums saņem tos pašus glosārija ierobežojumus.
Ģenerēšana · modeļa izsaukums
Tulkošanas gājiensDati: Tx1 · tulkojumsTulkojuma · sprieduma rindasTulkojuma stāvoklisModelis tiek izsaukts tieši vai caur en-US pivot, un izsaukums, notikums un progress tiek ierakstīti vienā transakcijā. Ja darbs pēc avārijas tiek palaists vēlreiz, tulkošanas izsaukums un tā izmaksas var atkārtoties.
Tiesneša modeļa izsaukums · parsēšana
Tulkošanas gājiensDati: Tx2 · spriedumsTulkojuma · sprieduma rindasTulkojuma stāvoklisTiesneša vērtējumi un pierādījumi tiek ievietoti vienreiz katram tulkojumam un gājienam; dublikāts atrod esošo ierakstu, un citāti tiek ierakstīti tikai pirmajā ievietošanā. Tā nav tā pati transakcija, kas tulkojumam.
Tiesneša modeļa izsaukums · parsēšana
Tulkošanas gājiensDati: vērtējumi · vārtiObligātie vārti · svērtais vidējaisVerdikta noteikumiTiesneša modeļa atbilde tiek parsēta vērtējumos pa dimensijām un vārtu rezultātos. Vai glosārijs ir izturēts, ziņo tiesneša modelis.
Obligātie vārti · svērtais vidējais
Verdikta noteikumiIzpilde · spriedums: verdiktsGājieni · izmaksas · kvotaAtkārtojums · izmaksasJebkura ziņota obligāto vārtu kļūme nozīmē nulli un neizturētu pārbaudi; tikai tad tiek piemērots svērtais vidējais un sliekšņi pa dimensijām. Kopējais slieksnis 8.0 ir konfigurācijas noklusējuma vērtība, nevis novērota tulkojuma kvalitāte.
Gājieni · izmaksas · kvota
Atkārtojums · izmaksasIzpilde · spriedums: passGalīgā transakcijaPabeigšanaIzturējušais tiek pabeigts ar statusu translated.
Galīgā transakcija
PabeigšanaDati: galīgais ierakstsStāvoklis · izsaukumu žurnālsTulkojuma stāvoklisKandidāts, statuss, vērtējums un gājieni tiek pabeigti, un pabeigtais progress kopā ar statusa žurnālu tiek ierakstīts vienā transakcijā. Notikums par pabeigtu tulkojumu tiek izsūtīts tikai statusam translated.
Atkārtojums · izmaksu ierobežojumi
Neizturēts nozīmē vēl vienu gājienu; ierobežojums nozīmē cilvēka pārskatīšanu; kvota vai autentifikācija aptur izmaksas un gaida, kad operators atsāks.
Obligātie vārti · svērtais vidējais
Verdikta noteikumiIzpilde · spriedums: verdiktsGājieni · izmaksas · kvotaAtkārtojums · izmaksasJebkura ziņota obligāto vārtu kļūme nozīmē nulli un neizturētu pārbaudi; tikai tad tiek piemērots svērtais vidējais un sliekšņi pa dimensijām. Kopējais slieksnis 8.0 ir konfigurācijas noklusējuma vērtība, nevis novērota tulkojuma kvalitāte.
Gājieni · izmaksas · kvota
Atkārtojums · izmaksasIzpilde · spriedums: nākamais gājiensĢenerēšana · modeļa izsaukumsTulkošanas gājiensTulkojums, kas neiztur pārbaudi, tiek ģenerēts vēlreiz kopā ar iepriekšējo tulkojumu un kritiku. Pat obligāto vārtu kļūmi var vispirms mēģināt vēlreiz, nevis nosūtīt tieši cilvēkam.
Gājieni · izmaksas · kvota
Atkārtojums · izmaksasIzpilde · spriedums: ierobežojums · pārtraukšanaCilvēka pārskatīšanaKad gājieni beidzas vai tiek sasniegts izmaksu griesti, darbs tiek pabeigts ar statusu needs_review. Pabeigts nozīmē, ka apstrāde beidzās, nevis ka cilvēks to apstiprināja.
Gājieni · izmaksas · kvota
Atkārtojums · izmaksasKļūme · ierobežojums: kvota · autentifikācijaAkreditācijas datu pārbaudeKvotas vai autentifikācijas signāls aptur izmaksas un iestata statusu needs_credential. Automātiskas pārslēgšanās uz citu kontu vai modeļu nodrošinātāju nav. Transporta kļūdas bez apturēšanas signāla atgriežas BullMQ atkārtojumā.
Akreditācijas datu pārbaudeIzpilde · spriedums: manuāla atsākšanaBullMQ · darba ID
Darbu rindaOperators, kurš pārbaudījis akreditācijas datus, palaiž darbu no jauna skaidri norādot.
Novecojušo darbu atkopšana
Veci melnraksti tiek sadalīti pēc cēloņa: ja trūkst rindā — atkārtoti rindā, ja mēģinājumi izsmelti — cilvēka lēmums.
Melnraksts · progress
Tulkojuma stāvoklisNovērošana · ziņojums: novecojis melnrakstsMelnraksti vecāki par 10 min · līdz 200Novecojušo darbu pārbaudeTiek nolasīti līdz 200 kandidātiem, kas melnraksta stāvoklī ir ilgāk par 10 minūtēm, sākot ar vecākajiem. Vaicājums neņem bloķējumu, un atjauninājumi un žurnalēšana notiek kā atsevišķi priekšraksti, tāpēc tas netiek aprakstīts kā pakešapstrāde bez sacensību stāvokļiem.
Melnraksti vecāki par 10 min · līdz 200
Novecojušo darbu pārbaudeIzpilde · spriedums: zem ierobežojumaRindas stāvokļa salīdzināšanaRindas pārbaudeJa mēģinājumu ir mazāk par ierobežojumu (3), darbs tiek salīdzināts ar rindas stāvokļiem active, waiting, delayed un prioritized. Kodā izsmelto mēģinājumu zars ir pirms šīs rindas pārbaudes.
Rindas stāvokļa salīdzināšana
Rindas pārbaudeIzpilde · spriedums: atkārtoti rindāBullMQ · darba IDDarbu rindaJa darba nav rindā, tas tiek atkārtoti ievietots rindā. API izmanto ID ar pieprasījuma sufiksu, bet pārbaude meklē segmenta un valodas ID, tāpēc netiek apgalvots, ka tā atrod katru notiekošo pieprasījumu.
Melnraksti vecāki par 10 min · līdz 200
Novecojušo darbu pārbaudeIzpilde · spriedums: rezultāts irCilvēka pārskatīšanaKad visi 3 mēģinājumi ir izmantoti un tulkojuma rezultāts ir, darbs nonāk statusā needs_review.
Melnraksti vecāki par 10 min · līdz 200
Novecojušo darbu pārbaudeIzpilde · spriedums: rezultāta navAkreditācijas datu pārbaudeKad visi 3 mēģinājumi ir izmantoti un rezultāta nav, darbs nonāk statusā needs_credential.
Visi savienojumi ar vienādu svaru. Izvēlieties plūsmu, lai izceltu tikai tās ceļu ar numurētiem soļiem.
- Nepārtraukta · ievades, rezultātu un ierakstu virziens
- Raustīta · izpilde, spriedums, pieprasījums
- Gari punkti · novērošana un ziņošana, nošķirti no sprieduma
- Īsas svītras · kļūme, apstāšanās, ierobežojums
- Bieza melna līnija · izvēlētā plūsma; skaitļi norāda secību
- Rāmis · koda vai stāvokļa robeža, nosaukums galvenē
- Iekšējā plāksnīte · šīs robežas komponents
- Punktēts rāmis · ārpus šīs robežas
- Oranža kontūra · vieta, kur lemj modelis
- Ģenerēšana · izmaksas · pabeigšana
- Ieeja · verdikta noteikumi · pārbaude
- Rinda · stāvoklis · ieraksti
- Reģistrācija · rindas pārbaude
Pamatā privāti implementācijas un izstrādes ieraksti. Klientu dati un koda ceļi netiek rādīti.
- Viena pārbaudes kārta
- 2026. gada 26. maijs, viena izstrādes vides pārbaudes kārta: 200 pārbaudīti, 106 stāvokļa pārejas, 2 atkārtoti rindā. Stāvokļa pāreja nav veiksmīgs tulkojums, un 106 sadalījums pa mērķa stāvokļiem nav reģistrēts.
- Kāpēc ne tieši vienreiz
- Ieraksti tiek rakstīti bez dublikātiem, taču, ja darbs pēc avārijas tiek palaists vēlreiz, modeļa izsaukumi un to izmaksas var atkārtoties. Paralēlisma ierobežojums ir katram procesam, nevis visam klasterim.
- Verdikta tvērums
- Tas, ka vidējais nevar aizsegt glosārija kļūmi, ir apkopošanas noteikums pār ziņotajiem vārtiem. Tas nepierāda, ka tiek atrasts katrs aizliegtais termins vai ka kvalitāte ir dzimtās valodas līmenī.