Preskoči na sadržaj

Odoo 19: AI prijevod s međusobnom provjerom – modul ai_translation_consensus u kojem se više AI sustava međusobno kontrolira

3. studenoga 2026. | Odoo 19 Community | Vlastiti razvoj
3. studenoga 2026. od
Odoo 19: AI prijevod s međusobnom provjerom – modul ai_translation_consensus u kojem se više AI sustava međusobno kontrolira

Odoo 19 modul ai_translation_consensus: više AI sustava prevodi, anonimno se ocjenjuju, a čovjek odobrava

Prevesti web stranicu na deset, dvadeset ili četrdeset jezika s jednim AI sustavom brzo je gotovo. Teže je pitanje može li se rezultatu vjerovati. Pojedinačni jezični model povremeno izmišlja riječi, prevodi nazive proizvoda ili mijenja broj, a to sam ne primjećuje. Zato smo za Odoo 19 napisali modul u kojem više AI sustava i prevoditeljskih servisa radi na istom tekstu, međusobno anonimno ocjenjuje svoje rezultate i dogovara formulaciju koja istodobno zvuči točno i prirodno. Ono što nije jednoznačno, čovjek dobiva na odluku.

Modul se zove ai_translation_consensus i dostupan je kao slobodan softver pod licencijom AGPL-3 na GitHubu:

github.com/Alex0176/odoo-ai-translation-consensus

Ideja: međusobna provjera umjesto povjerenja

Modul može dvije stvari:

  • Prevođenje: dopuniti nedostajuće (ili zastarjele) prijevode svakog prevodivog polja u Odoou, dakle članke bloga, web stranice, izbornike, proizvode i sve ostalo što Odoo sprema višejezično. AI sustavi pritom ne vide samo pojedinačnu rečenicu, nego susjedne blokove i isječak cijele stranice. Tako se pojedine riječi razumiju u pravom kontekstu.
  • Lektura: provjeriti tekst na njegovu vlastitom jeziku i predložiti bolje formulacije ili ispravke. Original je pritom uvijek jedan od kandidata. Ako pobijedi original, ništa se ne mijenja.

Srž je međusobna provjera. Svaki AI sustav dobro ocjenjuje tuđe tekstove, čak i kad sam povremeno griješi. Modul to koristi: više pružatelja piše po jednu inačicu, a isti pružatelji zatim ocjenjuju sve inačice, ne znajući od koga potječu. Vlastitu inačicu pružatelj ne ocjenjuje.

Kako nastaje prijedlog

Tijek: prevođenje, provjera, ocjenjivanje, dogovor, odobrenje od strane ljudi

  1. Prevođenje. Svaki prevoditelj paralelno piše jednu inačicu.
  2. Fiksne provjere. Bez AI-ja kontrolira se jesu li HTML oznake, entiteti, rezervirana mjesta poput %s ili {}, brojevi i poveznice ostali nepromijenjeni. Inačica koja to krši nikada ne može pobijediti, koliko god tečno zvučala.
  3. Ocjenjivanje. Preostale inačice se miješaju i anonimiziraju. Svaki ocjenjivač za svaku daje ocjenu za točnost i za prirodnost (1 do 10), navodi favorita i može predložiti poboljšanje.
  4. Dogovor. Rang inačice je 0,5 × prosječna ocjena + 5 × udio glasova za favorita. Dogovorom se smatra kad najbolja inačica ima najmanje 60 % glasova za favorita i prosječnu ocjenu od najmanje 7,0.
  5. Drugi krug. Bez dogovora najbolje inačice zajedno s prijedlozima poboljšanja ocjenjivača ponovno idu na ocjenjivanje.
  6. Čovjek. Ako ni tada ne bude jednoznačno, prijedlog čeka odluku.

Ako postoje samo čisti prevoditeljski servisi bez funkcije provjere (na primjer DeepL), rezultat se smatra dogovorenim samo ako su najmanje dva servisa isporučila potpuno isti tekst. Kod lekture rezultati moraju ostati prepoznatljivo slični originalu (sličnost najmanje 0,6, isti brojevi). Mali besplatni modeli povremeno odgovaraju na paket pomaknutim ili tuđim tekstovima. Takvi odgovori se odbacuju umjesto da se o njima glasa. Glosar bilježi nazive marki i stalne pojmove.

Pružatelji: s ključem i bez njega

Besplatni i plaćeni servisi mogu sudjelovati u istom glasanju. Modul donosi zadane postavke za mnoge pružatelje; svi su nakon instalacije isključeni.

VrstaPrevodiProvjerava / ispravljaPrimjeri
Sučelje kompatibilno s OpenAI-jemdadaOpenAI, Mistral, DeepSeek, xAI, Groq, Together, OpenRouter, Cerebras, Qwen, Moonshot, GitHub Models, Hugging Face, Ollama, LM Studio, vLLM, llama.cpp
Kompatibilno s OpenAI-jem bez ključadadaOllama na vlastitom poslužitelju, Pollinations
AnthropicdadaClaude
Google Gemini, Coheredada
Lokalna naredbadadaclaude -p ili bilo koji program koji čita sa stdin i ispisuje odgovor
Prevoditeljski servisidaneDeepL, Google Translate, Azure Translator, LibreTranslate, MyMemory, Lingva

Unese se ključ (ili naziv varijable okoline koja ga sadrži), pritisne se Testiraj vezu i uključi pružatelj. Nazivi modela u zadanim postavkama polazišta su; tko ih koristi, trebao bi ih usporediti s aktualnim popisom pružatelja. S dva ili više pružatelja postoji prava međusobna provjera, s jednim nitko ne provjerava njegov rad. Čarobnjak na to upozorava.

Cijela web stranica odjednom

Početni čarobnjak (izbornik AI prijevod → Počnite ovdje) objašnjava korake i stvara prvo pravilo. Ako je instaliran modul website, automatski dolazi i premosni modul ai_translation_consensus_website. Dopunjuje opseg „Cijela web stranica sa svime što je na njoj“: odabere se web stranica i daju se predložiti sadržaji. Modul pregledava sve modele s prevodivim poljima koji pripadaju web stranici (stranice, izbornike, blogove, proizvode, događaje, forume, tečajeve i više) i predlaže jedno pravilo po vrsti sadržaja, s jezicima web stranice kao ciljem.

Početni čarobnjak s opsegom cijele web stranice i predloženim vrstama sadržaja

  • Ono što nije instalirano (forumi, tečajevi, galerije) ne pojavljuje se i bit će uključeno kasnije, čim se instalira.
  • Modeli trgovine predlažu se samo ako web stranica ima trgovinu. Obuhvaćaju se samo objavljeni zapisi.
  • Kontakte, tvrtke, pružatelje plaćanja, cjenike, načine dostave, programe vjernosti i filtre snippeta modul namjerno ne nudi.
  • Nazivi adresa stranica (seo_name) se ne prevode.
  • Neželjene vrste moguće je ukloniti prije izrade.

Izrada i traženje ne koštaju ništa: pravilo samo navodi koji tekstovi trebaju posao. Tek pri obradi pozivaju se pružatelji i nastaju troškovi.

Nadzorna ploča, troškovi i automatsko pokretanje

Nadzorna ploča po pravilu prikazuje koliko je tekstova gotovo, koliko čeka potvrdu ili čovjeka, koliko je u redu čekanja ili neuspjelo. Tome se pridružuju raščlamba po jeziku i pružatelju, dosadašnji i još očekivani troškovi, procijenjeno preostalo vrijeme i prekidač za planiranu obradu.

Nadzorna ploča s napretkom, troškovima, tokenima i jezicima. Primjeri podataka.

Brojke na ovoj slici su primjeri podataka i ne govore ništa o stvarnim troškovima.

  • Troškovi se izračunavaju iz onoga što pružatelji stvarno prijave: tokeni (OpenAI, Anthropic, Gemini, Cohere) ili znakovi (DeepL, Google, Azure). Tokeni se uvijek prikazuju, novac samo ako ste kod pružatelja unijeli cijenu po milijunu tokena (ili znakova). Zadane postavke ne sadrže cijene jer se one mijenjaju. Servisi koji ne prijavljuju tokene procjenjuju se prema duljini teksta i označavaju kao procjena.
  • Prognoza: prosječni troškovi i radno vrijeme po tekstu puta broj tekstova u redu čekanja. To je procjena koja se s prvim paketima poboljšava.
  • Automatsko pokretanje: pravila s opcijom Pokreni samostalno kad se zapis promijeni pri svakom pokretanju planirane radnje traže samo zapise koji su promijenjeni od posljednjeg traženja. Uz uključenu planiranu radnju uređena web stranica stoga se bez ikakvog zahvata ponovno prevodi.
  • Obavijest o završetku: Kad je posljednji otvoreni tekst pravila obrađen, u kanalu AI Translation jednokratno se pojavljuje poruka „Svi jezici prevedeni“ (kod lekture „Svi tekstovi provjereni“).

Odobrenje od strane ljudi

Prema zadanim postavkama modul ne upisuje ništa u vaše zapise bez vašeg odobrenja. Svaki prijedlog prikazuje inačice, tko ih je napisao, ocjene i primjedbe recenzenata. Prijedlog možete prihvatiti, odabrati drugu inačicu, unijeti vlastitu formulaciju ili ga odbiti.

Prijedlog s tri kandidata, ocjenama, glasovima za favorita i odlukom koju donosi čovjek. Primjer teksta potpuno je izmišljen.

Tekst i nazivi pružatelja usluga na ovoj slici potpuno su izmišljeni kako bi se prikazao izgled sučelja.

Tko vjeruje nekom pravilu, može uključiti Automatski prihvati suglasnost. Prijedlozi bez suglasnosti i tada čekaju čovjeka. Pri prihvaćanju modul još jednom provjerava je li se izvorni tekst u međuvremenu promijenio, ponovno provodi provjere označavanja i upisuje bez praćenja i bez obavještavanja pratitelja.

Sigurnost i zaštita podataka

  • Nakon instalacije sve je isključeno. Pružatelji usluga i planirana radnja deaktivirani su. Bez vaše intervencije ništa se ne šalje.
  • Tekstovi napuštaju vaš poslužitelj čim je uključena usluga koja se izvršava kod vanjskog pružatelja. Pravilo se može označiti kao Povjerljivo; tada tekst vide samo pružatelji koji su označeni kao pružatelji koji rade na vlastitoj infrastrukturi.
  • Ključevi nalaze se u polju koje vide samo administratori ili u varijabli okoline na koju upućuje samo naziv. U porukama o pogreškama maskirani su i šalju se u zaglavljima. Iznimka: neobavezni ključ usluge MyMemory ondje se može predati samo kao parametar upita.
  • Lokalna naredba izvršava program i zato je blokirana dok se sistemski parametar ai_translation_consensus.allow_command ne postavi na True. Naredba se poziva bez ljuske i izvršava se u praznom privremenom direktoriju.
  • Prompt injection: Zadaci označavaju tekst kao podatke. Upute unutar prevedenog teksta ne izvršavaju se, a rezultat koji krši oznake ili rezervirana mjesta odbacuje se.
  • Besplatne usluge imaju ograničenja. Pollinations anonimno dopušta jedan odgovor svakih 45 sekundi. Opcija pružatelja min_interval poštuje taj razmak, a odgovori „Pokušajte ponovno kasnije“ uzimaju se u obzir.

Instalacija

git clone https://github.com/Alex0176/odoo-ai-translation-consensus.git
ln -s /pfad/odoo-ai-translation-consensus/ai_translation_consensus /pfad/addons/
ln -s /pfad/odoo-ai-translation-consensus/ai_translation_consensus_website /pfad/addons/
odoo-bin -c odoo.conf -d <datenbank> -i ai_translation_consensus --stop-after-init

Potrebni su Odoo 19 i Python paket requests. Priložen je njemački prijevod. Premosni modul ai_translation_consensus_website automatski se instalira zajedno s ostalim ako postoji website. Nakon instalacije Odoo servis treba ponovno pokrenuti jer modul sadrži Python kod. Tko upravlja produkcijskim sustavom, neka modul najprije instalira na kopiju baze podataka.

Prvi koraci: otvorite izbornik KI-Übersetzung → Anbieter, testirajte usluge i uključite ih, zatim Hier starten i izradite prvo pravilo. Pomoću Nach Texten suchen generiraju se prijedlozi, a pomoću Einen Stapel verarbeiten pozivaju se pružatelji usluga. Počnite s malim pravilom, primjerice s jednim blog člankom i dva jezika, te pogledajte rezultat i troškove prije nego što u red stavite cijelu web-stranicu.

Ograničenja

  • Kvaliteta ovisi o modelima koje uključite. Unakrsna provjera smanjuje pogreške pojedinih modela, ali ne daje jamstvo. Za pravno ili sigurnosno kritične tekstove modul ne zamjenjuje izvornog govornika.
  • Troškovi brzo rastu. Jedan tekst košta jedan poziv po prevoditelju, jedan poziv za provjeru po recenzentu i, kod podijeljenog glasanja, drugi krug. Kontekst stranice povećava ulazne podatke svakog poziva. Pravilo s 45 ciljnih jezika višestruko povećava broj tekstova. Ograničite pokretanja pomoću Datensätze je Suchlauf, Neue Vorschläge je Suchlauf i Vorschläge je Cron-Lauf te kao recenzente dodajte povoljne ili lokalne modele.
  • Samo polja s translate=True. Formatirani tekst obrađuje se po blokovima (Odoo mehanizam pojmova).
  • Cijene i nazivi modela mijenjaju se. Zadane postavke nisu održavan cjenik.
  • Izrađeno za Odoo 19.0 Community. Druge inačice nisu podržane.

Česta pitanja

Prevodi li se ili prepisuje išta bez mog odobrenja?

Ne, sve dok ne uključite Einigung automatisch übernehmen. Čak i tada upisuju se samo prijedlozi sa suglasnošću. Pružatelji usluga i planirana radnja nakon instalacije su isključeni.

Trebam li ključeve za plaćene pružatelje usluga?

Samo za pružatelje koji ga zahtijevaju. S Pollinationsom, MyMemoryjem ili lokalno pokrenutim modelom (na primjer Ollama) ide i bez njega. Besplatne usluge često su ograničene i spore, a za cijelu web-stranicu uglavnom su prikladne samo kao dopuna.

Koliko košta prijevod?

Ovisi o pružatelju usluge, modelu, duljini teksta i broju jezika, zato modul ne zadaje fiksne iznose. Nadzorna ploča prikazuje potrošnju i troškove čim unesete cijene te procjenjuje preostale troškove tekstova u redu.

Mogu li tekstove zadržati povjerljivima?

Da, pomoću opcije pravila Vertraulich. Tada rade samo pružatelji označeni kao pružatelji koji rade na vašoj vlastitoj infrastrukturi, primjerice lokalni Ollama.

Zamjenjuje li to Odoo vlastiti prijevod?

Ne. Modul koristi višejezičnost sustava Odoo i upisuje u iste prijevode koje inače održavate ručno.

Pod kojom je licencijom?

Pod AGPL-3. Greške i poboljšanja dobrodošli su kao issue u GitHub repozitoriju .

Podrška tvrtke Biricon IT Services

Brinemo se o instalacijama sustava Odoo za mala i srednja poduzeća: od uvođenja, preko prilagodbi i migracija, do redovitog rada. Ako svoju Odoo web-stranicu vodite na više jezika, želite osigurati prijevode umjetnom inteligencijom ili sigurno uvesti modul u svoju produkcijsku instancu, rado ćemo vam pomoći. Ostali vlastiti razvoji: Arhiviranje tvrtke zajedno s korisnicima portala, Brojevi dokumenata iz prefiksa, godine i brojača i Firmenbuch i provjera adresa za austrijske klijente.

Javite nam se odmah

Stanje: 3. studenoga 2026. Inačica modula 19.0.1.0.0. Slike prikazuju izmišljene primjere podataka.