Továbbugrás a tartalomhoz

Odoo 19: MI-fordítás keresztellenőrzéssel – az ai_translation_consensus modul, amelyben több MI ellenőrzi egymást

2026. november 3. | Odoo 19 Community | Saját fejlesztés
2026. november 3. által
Odoo 19: MI-fordítás keresztellenőrzéssel – az ai_translation_consensus modul, amelyben több MI ellenőrzi egymást

Odoo 19 ai_translation_consensus modul: több MI fordít, névtelenül értékelik egymást, és egy ember hagyja jóvá

Egy weboldal lefordítása tíz, húsz vagy negyven nyelvre egyetlen MI-vel gyorsan megvan. Nehezebb kérdés, hogy megbízhatunk-e az eredményben. Egyetlen nyelvi modell alkalmanként szavakat talál ki, lefordítja a terméknevet is, vagy megváltoztat egy számot, és ezt maga nem veszi észre. Ezért az Odoo 19-hez írtunk egy modult, amelyben több MI és fordítószolgáltatás dolgozik ugyanazon a szövegen, eredményeiket névtelenül értékelik egymás között, és megegyeznek abban a megfogalmazásban, amely egyszerre pontos és természetes hangzású. Ami nem egyértelmű, azt egy ember kapja döntésre.

A modul neve ai_translation_consensus, és szabad szoftverként az AGPL-3 licenc alatt elérhető a GitHubon:

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

Az ötlet: keresztellenőrzés bizalom helyett

A modul két dologra képes:

  • Fordítás: az Odoo minden fordítható mezőjének hiányzó (vagy elavult) fordításait kiegészíti, tehát a blogbejegyzéseket, weboldalakat, menüket, termékeket és mindent, amit az Odoo többnyelvűen tárol. Az MI-k nem csak az egyes mondatot látják, hanem a szomszédos blokkokat és az egész oldal egy részletét. Így az egyes szavakat a megfelelő összefüggésben értik meg.
  • Korrektúra: a szöveget a saját nyelvén ellenőrzi, és jobb megfogalmazásokat vagy javításokat javasol. Az eredeti ilyenkor mindig az egyik jelölt. Ha az eredeti nyer, semmi sem változik.

A lényeg a kölcsönös ellenőrzés. Minden MI jó abban, hogy idegen szövegeket ítéljen meg, még ha maga alkalmanként tévedne is. A modul ezt használja ki: több szolgáltató ír egy-egy változatot, majd ugyanezek a szolgáltatók értékelik az összes változatot anélkül, hogy tudnák, ki írta őket. A saját változatát egy szolgáltató nem értékeli.

Így születik egy javaslat

Folyamat: fordítás, ellenőrzés, értékelés, megegyezés, emberi jóváhagyás

  1. Fordítás. Minden fordító párhuzamosan ír egy változatot.
  2. Rögzített ellenőrzések. MI nélkül ellenőrzi, hogy a HTML-címkék, entitások, helyőrzők, mint a %s vagy a {}, a számok és a hivatkozások változatlanok maradtak-e. Az a változat, amely ezt megsérti, soha nem nyerhet, bármilyen gördülékenyen hangzik is.
  3. Értékelés. A többi változatot összekeveri és anonimizálja. Minden ellenőr mindegyikre jegyet ad a pontosságra és a természetességre (1-től 10-ig), megnevez egy kedvencet, és javítási javaslatot tehet.
  4. Megegyezés. Egy változat rangja 0,5 × átlagjegy + 5 × a kedvenc szavazatok aránya. Megegyezésnek az számít, ha a legjobb változat legalább a kedvenc szavazatok 60 %-át és legalább 7,0 átlagjegyet kap.
  5. Második kör. Megegyezés nélkül a legjobb változatok az ellenőrök javítási javaslataival együtt még egyszer értékelésre kerülnek.
  6. Ember. Ha ekkor sem egyértelmű, a javaslat döntésre vár.

Ha csak tiszta fordítószolgáltatások vannak ellenőrző funkció nélkül (például DeepL), egy eredmény csak akkor számít elfogadottnak, ha legalább két szolgáltató pontosan ugyanazt a szöveget adta. Korrektúránál az eredményeknek felismerhetően hasonlónak kell maradniuk az eredetihez (legalább 0,6 hasonlóság, azonos számok). A kis ingyenes modellek egy köteget alkalmanként eltolt vagy idegen szövegekkel válaszolnak meg. Az ilyen válaszokat elveti, ahelyett, hogy szavaznának róluk. Egy szószedet rögzíti a márkaneveket és a rögzített fogalmakat.

Szolgáltatók: kulccsal és anélkül

Ingyenes és fizetős szolgáltatások ugyanabban a szavazásban lehetnek. A modul sok szolgáltatóhoz hoz előbeállításokat; mind kikapcsolt állapotban van a telepítés után.

TípusFordítEllenőriz / javítPéldák
OpenAI-kompatibilis felületigenigenOpenAI, Mistral, DeepSeek, xAI, Groq, Together, OpenRouter, Cerebras, Qwen, Moonshot, GitHub Models, Hugging Face, Ollama, LM Studio, vLLM, llama.cpp
OpenAI-kompatibilis kulcs nélküligenigenOllama a saját szerveren, Pollinations
AnthropicigenigenClaude
Google Gemini, Cohereigenigen
Helyi parancsigenigenclaude -p vagy bármely program, amely stdin-ről olvas, és kiadja a választ
FordítószolgáltatásokigennemDeepL, Google Translate, Azure Translator, LibreTranslate, MyMemory, Lingva

Beírja a kulcsot (vagy egy olyan környezeti változó nevét, amely tartalmazza), megnyomja a Kapcsolat tesztelése gombot, és bekapcsolja a szolgáltatót. Az előbeállításokban szereplő modellnevek kiindulópontok; aki használja őket, vesse össze a szolgáltató aktuális listájával. Két vagy több szolgáltatóval valódi keresztellenőrzés van, csak eggyel senki sem ellenőrzi a munkáját. A varázsló erre felhívja a figyelmet.

Egy egész weboldal egyszerre

Egy indítóvarázsló (menü: MI-fordítás → Itt kezdje) elmagyarázza a lépéseket, és létrehozza az első szabályt. Ha a website modul telepítve van, automatikusan jön vele az ai_translation_consensus_website hídmodul. Ez kiegészíti a „Egy egész weboldal mindennel, ami rajta van” hatókört: kiválasztja a weboldalt, és javaslatot kér a tartalmakra. A modul megnézi az összes olyan fordítható mezőkkel rendelkező modellt, amely a weboldalhoz tartozik (oldalak, menük, blogok, termékek, rendezvények, fórumok, tanfolyamok és más), és tartalomtípusonként egy szabályt javasol, célként a weboldal nyelveivel.

Indítóvarázsló az egész weboldal hatókörrel és a javasolt tartalomtípusokkal

  • Ami nincs telepítve (fórumok, tanfolyamok, galériák), nem jelenik meg, és később kerül felvételre, amint telepítve lesz.
  • A bolti modelleket csak akkor javasolja, ha a weboldalnak van boltja. Csak közzétett rekordokat vesz fel.
  • A kapcsolatokat, cégeket, fizetési szolgáltatókat, árlistákat, szállítási módokat, hűségprogramokat és snippet-szűrőket a modul szándékosan nem kínálja.
  • Az oldalak címnevei (seo_name) nem kerülnek lefordításra.
  • A nem kívánt típusokat létrehozás előtt el lehet távolítani.

A létrehozás és a keresés nem kerül semmibe: a szabály csak felsorolja, mely szövegek igényelnek munkát. Csak a feldolgozáskor hívódnak meg a szolgáltatók, és csak ekkor keletkeznek költségek.

Irányítópult, költségek és automatikus indítás

Az irányítópult szabályonként megmutatja, hány szöveg kész, vár megerősítésre vagy emberre, van sorba állítva vagy sikertelen. Ehhez jön a nyelv és szolgáltató szerinti bontás, az eddigi és a még várható költségek, a becsült hátralévő idő és az ütemezett feldolgozás kapcsolója.

Irányítópult a haladással, költségekkel, tokenekkel és nyelvekkel. Példaadatok.

Az ábrán szereplő számok példaadatok, és semmit sem mondanak a valódi költségekről.

  • A költségek abból számolódnak, amit a szolgáltatók ténylegesen jeleznek: tokenek (OpenAI, Anthropic, Gemini, Cohere) vagy karakterek (DeepL, Google, Azure). A tokeneket mindig megmutatja, a pénzt csak akkor, ha a szolgáltatónál megadta az árat millió tokenre (vagy karakterre). Az előbeállítások nem tartalmaznak árakat, mert ezek változnak. Azokat a szolgáltatásokat, amelyek nem jeleznek tokeneket, a szöveg hosszából becsüli, és becslésként jelöli meg.
  • Előrejelzés: a szövegenkénti átlagos költség és munkaidő szorozva a sorba állított szövegek számával. Ez egy becslés, amely az első kötegekkel pontosabb lesz.
  • Automatikus indítás: a Magától induljon, ha egy rekord megváltozik beállítású szabályok az ütemezett művelet minden futásakor csak azokat a rekordokat keresik, amelyek az utolsó keresési futás óta megváltoztak. Bekapcsolt ütemezett művelettel tehát egy szerkesztett weboldal különösebb beavatkozás nélkül újra lefordításra kerül.
  • Készre jelentés: Amint egy szabály utolsó nyitott szövege is elkészült, egyszeri üzenet jelenik meg az AI Translation csatornában: „Minden nyelv lefordítva” (korrektúra esetén „Minden szöveg ellenőrizve”).

Emberi jóváhagyás

Alapértelmezés szerint a modul az Ön jóváhagyása nélkül semmit sem ír az adatrekordokba. Minden javaslat megmutatja a változatokat, azt, hogy ki írta őket, az értékeléseket és az ellenőrök megjegyzéseit. A javaslatot elfogadhatja, választhat másik változatot, beírhat saját megfogalmazást, vagy elutasíthatja.

Javaslat három jelölttel, értékelésekkel, kedvencszavazatokkal és az ember döntésével. A példaszöveg kitalált.

A szöveg és a szolgáltatónevek ezen az ábrán kitalált példák a nézet bemutatásához.

Aki megbízik egy szabályban, bekapcsolhatja az Egyetértés automatikus átvétele beállítást. Az egyetértés nélküli javaslatok ilyenkor is emberre várnak. Az átvételkor a modul még egyszer ellenőrzi, hogy a forrásszöveg időközben megváltozott-e, újra lefuttatja a jelölőnyelvi ellenőrzéseket, és követés nélkül, a követők értesítése nélkül ír.

Biztonság és adatvédelem

  • A telepítés után minden ki van kapcsolva. A szolgáltatók és az ütemezett művelet inaktívak. Az Ön közreműködése nélkül semmi sem kerül elküldésre.
  • A szövegek elhagyják a szerverét, amint egy felhőben üzemelő szolgáltatás is részt vesz. Egy szabály megjelölhető Bizalmas-ként; ilyenkor a szöveget csak azok a szolgáltatók látják, amelyek saját infrastruktúrán futóként vannak megjelölve.
  • A kulcsok egy csak adminisztrátorok számára látható mezőben vagy egy környezeti változóban találhatók, amelyre csak a neve hivatkozik. A hibaüzenetekben maszkolva jelennek meg, és fejlécekben kerülnek elküldésre. Kivétel: a MyMemory opcionális kulcsa ott csak lekérdezési paraméterként adható át.
  • A helyi parancs programot futtat, ezért le van tiltva mindaddig, amíg az ai_translation_consensus.allow_command rendszerparamétert True értékre nem állítják. A parancsot shell nélkül hívja meg a rendszer, és egy üres ideiglenes könyvtárban fut.
  • Prompt-injekció: A megbízások a szöveget adatként jelölik meg. A lefordított szövegben lévő utasításokat a rendszer nem követi, és az olyan eredményt, amely megsérti a címkéket vagy a helyőrzőket, elveti.
  • Az ingyenes szolgáltatásoknak vannak korlátai. A Pollinations névtelenül 45 másodpercenként egy választ enged. A min_interval szolgáltatói beállítás betartja ezt a távolságot, és a „Kérjük, próbálja újra később” válaszokat figyelembe veszi.

Telepítés

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

Szükséges az Odoo 19 és a requests Python-csomag. Német fordítás mellékelve van. Az ai_translation_consensus_website hídmodul automatikusan telepítésre kerül, ha a website megtalálható. A telepítés után az Odoo szolgáltatást újra kell indítani, mert a modul Python-kódot tartalmaz. Aki éles rendszert üzemeltet, a modult először az adatbázis egy másolatán telepítse.

Az első lépések: nyissa meg a KI-Übersetzung → Anbieter menüt, tesztelje és kapcsolja be a szolgáltatásokat, majd válassza a Hier starten lehetőséget, és hozza létre az első szabályt. A Nach Texten suchen funkcióval jönnek létre a javaslatok, az Einen Stapel verarbeiten funkcióval pedig a rendszer meghívja a szolgáltatókat. Kezdje egy kis szabállyal, például egyetlen blogbejegyzéssel és két nyelvvel, és nézze meg az eredményt és a költségeket, mielőtt egy egész weboldalt beütemezne.

Korlátok

  • A minőség az Ön által bekapcsolt modellektől függ. Az ellenőrzés csökkenti az egyes modellek hibáit, de nem jelent garanciát. Jogilag vagy biztonsági szempontból kritikus szövegeknél a modul nem helyettesíti az anyanyelvi beszélőt.
  • A költségek gyorsan nőnek. Egy szöveg fordítónként egy hívást, ellenőrönként egy ellenőrző hívást, megosztott szavazás esetén pedig egy második kört jelent. Az oldalkontextus növeli minden hívás bemenetét. Egy 45 célnyelvű szabály megsokszorozza a szövegek számát. Korlátozza a futásokat a Datensätze je Suchlauf, a Neue Vorschläge je Suchlauf és a Vorschläge je Cron-Lauf beállításokkal, és vegyen fel ellenőrként kedvező árú vagy helyi modelleket is.
  • Csak a translate=True beállítású mezők. A formázott szöveget blokkonként dolgozza fel a rendszer (az Odoo term-mechanizmusa).
  • Az árak és a modellnevek változnak. Az előbeállítások nem karbantartott árlisták.
  • Odoo 19.0 Community-hez készült. Más verziókat nem támogat.

Gyakori kérdések

Lefordít vagy felülír valamit a modul az én jóváhagyásom nélkül?

Nem, amíg nem kapcsolja be az Einigung automatisch übernehmen beállítást. Akkor is csak az egyetértéssel rendelkező javaslatok kerülnek beírásra. A szolgáltatók és az ütemezett művelet a telepítés után ki vannak kapcsolva.

Szükségem van kulcsokra a fizetős szolgáltatókhoz?

Csak azokhoz a szolgáltatókhoz, amelyek kulcsot kérnek. A Pollinationsszel, a MyMemoryvel vagy egy helyben üzemeltetett modellel (például Ollama) kulcs nélkül is megy. Az ingyenes szolgáltatások gyakran korlátozottak és lassúak, egy egész weboldalhoz általában csak kiegészítésként alkalmasak.

Mennyibe kerül egy fordítás?

Ez a szolgáltatótól, a modelltől, a szöveg hosszától és a nyelvek számától függ, ezért a modul nem ad meg fix összegeket. A dashboard megmutatja a felhasználást és a költségeket, amint megadta az árakat, és megbecsüli a beütemezett szövegek hátralévő költségét.

Tarthatom bizalmasan a szövegeket?

Igen, a Vertraulich szabályopcióval. Ilyenkor csak azok a szolgáltatók dolgoznak, amelyek az Ön saját infrastruktúráján futóként vannak megjelölve, például egy helyi Ollama.

Ez helyettesíti az Odoo saját fordítását?

Nem. A modul az Odoo többnyelvűségét használja, és ugyanazokba a fordításokba ír, amelyeket egyébként kézzel gondoz.

Milyen licenc alatt áll?

Az AGPL-3 alatt. A hibákat és a fejlesztéseket issue-ként szívesen fogadjuk a következő helyen: GitHub-tároló .

A Biricon IT Services támogatása

Kis- és középvállalkozások Odoo-telepítéseit gondozzuk: a bevezetéstől a testreszabásokon és migrációkon át a folyamatos üzemeltetésig. Ha az Odoo weboldalát többnyelvűen üzemelteti, a fordításokat mesterséges intelligenciával szeretné biztosítani, vagy egy modult biztonságosan szeretne bevezetni az éles példányába, szívesen segítünk. További saját fejlesztéseink: Cég archiválása a portálfelhasználókkal együtt, Bizonylatszámok előtagból, évből és számlálóból és Cégjegyzék és címellenőrzés osztrák ügyfelekhez.

Lépjen velünk kapcsolatba

Állapot: 2026. november 3. Modulverzió: 19.0.1.0.0. Az ábrák kitalált példaadatokat mutatnak.