Bosanska lokalizacija "Odoo" open-source platforme, Modul bill_draft_ocr_processing update qwen2.5 => qwen3


Draft račun s OCR statusom "Failed" — polazno stanje prije fiksa

Problem

Prilikom automatske obrade draft ulaznih računa (AI OCR preko LLM-a), u chatter-u računa počela se pojavljivati greška:

Automatic OCR processing failed: No endpoints found for qwen/qwen2.5-vl-32b-instruct.

Uzrok: OpenRouter je ukinuo model qwen/qwen2.5-vl-32b-instruct (zamijenjen je novom generacijom — qwen3-vl-*). Korisnička konfiguracija u modulu i dalje je pokazivala na taj model, pa svaki novi draft račun s privitkom nije mogao biti automatski obrađen.

Rješenje: bill_draft_ocr_processing v16.0.2.7.3

U modulu bill_draft_ocr_processing (paket odoo-bringout-bill_draft_ocr_processing) uradili smo sljedeće:

  1. Deaktivirali deprecated model qwen/qwen2.5-vl-32b-instruct u data/default_models.xml (označen active=False, recommended=False).
  2. Promovisali nasljednika qwen/qwen3-vl-32b-instruct u preporučeni model za OpenRouter provider.
  3. Dodali migraciju migrations/16.0.2.7.3/post-migrate.py koja:
    • Deaktivira “mrtvi” model u bazi (pošto je XML označen s noupdate="1", sam upgrade ne bi prebrisao postojeće redove).
    • Automatski prebacuje sve korisnike koji su u res_users.llm_ocr_model_id (ili llm_ocr_fallback_model_id) imali mrtvi model — na novi qwen3-vl-32b-instruct.

Nakon deploya (python scripts/upgrade_production_nix_service.py --modules bill_draft_ocr_processing) OCR obrada radi iz prve.

Qwen3 vs Qwen2.5 — cijena

Zanimljivo: Qwen3 nije samo kontinuitet, nego je znatno jeftiniji od prethodnika. Stvarne OpenRouter cijene (po milionu tokena):

ModelInputOutput
qwen2.5-vl-72b-instruct (još aktivan, stara gen.)$0.250$0.750
qwen3-vl-32b-instruct (novi default)$0.104$0.416
qwen3-vl-8b-instruct$0.080$0.500
qwen3-vl-30b-a3b-instruct (MoE)$0.130$0.520
qwen3-vl-235b-a22b-instruct (flagship)$0.200$0.880

Za poređenje, deprecirani qwen2.5-vl-32b-instruct se kretao oko $0.50 / $1.50 po milionu tokena dok je bio aktivan. Dakle, prelazak na qwen3-vl-32b donosi oko 5× nižu cijenu za sličnu (ili bolju) tačnost OCR-a — i uz veći kontekstni prozor (131k tokena).

Tipičan trošak obrade jedne fakture ostaje na nivou $0.001–$0.002 (ispod 0,5 centa), što je praktično zanemarivo i pri velikim volumenima.

Zaključak

Ažuriranje je primjer tipičnog “vendor churn-a” u AI svijetu — modeli se brzo smjenjuju, a infrastruktura mora biti pripremljena da to prati bez prekida u radu korisnika. Modul bill_draft_ocr_processing sada koristi aktivni qwen3-vl-32b-instruct, a korisnici koji su bili na ukinutom modelu su automatski migrirani preko post-migrate skripte — bez ručne intervencije.

Napomena

Generisano od strane Claude 🤖


Ernad Husremović, hernad@bring.out.ba