Eszközök/LLMOps és értékelés

Opik teszt: nyílt forrású nyomkövetés és értékelés, amerikai felhővel

Nyomok, judge-metrikák, promptverziók és optimalizáló egy Apache 2.0 platformon. Saját szerveren ingyen, a Pro felhő havi 19 dollár, az USA-ban hosztolt.

Típus
LLM observability
Ár
Apache 2.0 · free to self-host · Pro cloud from $19 a month

··7 perc olvasás

  • LLM observability
  • Tracing
  • Evaluation
  • OpenTelemetry
  • Self-hosting
Borítókép az Opik-teszthez: egy nyom az alkalmazásból a backendbe jut, onnan egy judge-hoz és egy pontszám-kapuhoz.

A lényeg röviden

  • A teljes Opik-repository Apache 2.0 licencű, enterprise-kivétel nélkül, így a teljes platform saját szerveren ingyen futtatható ezen a licencen.
  • Az Opik Cloud az adatvédelmi nyilatkozat szerint az USA-ban üzemel. Az általam megnyitott oldalakon nem találtam EU-s régiót, DPA-t vagy alfeldolgozó-listát.
  • A guardrailek és a szerveroldali adatmaszkolás a dokumentáció szerint enterprise-funkciók, vagyis értékesítési beszélgetés kell hozzájuk, és nem ingyenesek.
  • A judge-metrikák hasznosak, de minden judge-hívás nyomszöveget küld egy modellszolgáltatónak, ezt is fel kell venni az adatfeldolgozók listájára.
  • Az SDK-oldali anonimizálókkal a személyes adatokat a naplózás előtt lecserélheted. Előbb a saját mintaadataidon teszteld őket.

Cikk meghallgatása

0:000:00

Az Opik a Comet nyílt forrású platformja LLM-alkalmazások és ágensek nyomkövetésére, értékelésére és optimalizálására. Az ítélet előre: válaszd, ha nyomokat, LLM-as-a-judge metrikákat, promptverziókat és optimalizálót akarsz egy Apache 2.0 termékben, és a csapatod tud adatbázisokat üzemeltetni. Ne válaszd, ha EU-ban hosztolt felhőre van szükséged, vagy értékesítési beszélgetés nélkül akarsz guardrailekre támaszkodni.

Az Opik a Langfuse, az Arize Phoenix és a LangSmith mezőnyében versenyez, és a licencet kell először megnézni. Az Opik-repository Apache 2.0, a LICENSE fájl pedig nem tartalmaz kivételt enterprise könyvtárakra. A Langfuse magja MIT-licencű, az ee/ mappák kivételével, az Arize Phoenix pedig az Elastic License 2.0 alatt áll. A továbbiakban azt mutatom be, mit kapsz, mit jelent a saját szerveres üzemeltetés, és hová kerülnek az adatok.

Mi ez

Az Opik egyesíti a nyomkövetést, az értékelést és az éles környezeti pontozást, mellette prompt-kezelés és optimalizáló is van. A termékoldal „AI Observability & Evals For the Agentic Era“ címmel hirdeti, a GitHub README pedig azt írja, hogy a teljes platform saját szerveren ingyen futtatható.

  • Apache 2.0 a teljes repositoryra. A LICENSE fájl a szokásos Apache License 2.0 szöveg, a szerzői jog a Comet ML, Inc. nevén van.
  • Nyomkövetés dekorátorral. Pythonban a pip install opik telepít, a @opik.track dekorátor pedig egy függvényhívást rögzít. A TypeScript SDK az opik csomagból importál.
  • OpenTelemetry. Bármely nyelv, amelyhez van OpenTelemetry SDK, küldhet nyomokat, amit a Comet elsőosztályú támogatásként ír le.
  • Értékelés. Adatkészletek, kísérletek, heurisztikus ellenőrzések, mint az Equals, a RegexMatch vagy az IsJson, több mint 20 LLM-as-a-judge metrika és PyTest-integráció a CI-hez.
  • Éles környezet és biztonság. Az online értékelési szabályok élő nyomokat pontoznak, a guardrailek pedig a bemenetet és a kimenetet ellenőrzik. A guardrailek enterprise-funkciók, lásd lentebb.

Hogyan működik

Az SDK-k telemetriát köteggé fognak össze, és REST-en küldik egy Java backendnek, amely az API-t, a hitelesítést és az adatbázis-migrációkat kezeli. Külön Python backend futtatja az értékelőket, a sandboxolt kódot és az optimalizálási feladatokat – a sandboxolt kód így a felhőben a Comet infrastruktúráján, saját szerveres üzemeltetésnél a tiedén fut. A nyomok és a span-ek a ClickHouse-ba, a projektek, adatkészletek és promptok a MySQL-be, a mellékletek a MinIO-ba kerülnek. A Redis a gyorsítótárazást, a sebességkorlátozást és a sorokat, a ZooKeeper a fürt koordinációját végzi, az Nginx pedig a React-felületet szolgálja ki és továbbítja az API-kéréseket.

Hogyan jut egy Opik-nyom a tárolóbaAz alkalmazásod vagy ágensed az Opik SDK-n vagy egy OpenTelemetry exportőrön keresztül küldi a nyomokat az Opik backendnek. A backend a nyomokat és a span-eket a ClickHouse-ba, a projekteket, adatkészleteket és promptokat a MySQL-be, a mellékleteket a MinIO-ba írja. Az értékelési és optimalizálási feladatokat egy külön Python szolgáltatásnak adja át, amely futtatja a judge-okat, és az eredményeket feedback-pontszámként írja vissza a ClickHouse-ba. A webes felület Nginxen keresztül éri el a backendet.Opik-nyom útjaPlatformszolgáltatásokWebes felületReact, Nginx mögöttAz alkalmazásodSDK vagy OpenTelemetryOpik backendJava REST APIPython backendjudge-ok, optimalizálóClickHousenyomok, span-ek, pontokMySQLprojektek, promptokMinIOmellékletekfeladatokRedis: gyorsítótár, sorok, sebességkorlátozás. ZooKeeper: fürtkoordináció.
A nyomok a ClickHouse-ba, a metaadatok a MySQL-be, a mellékletek a MinIO-ba kerülnek, közben egy külön Python szolgáltatás futtatja a judge-okat és az optimalizálót.

Első lépések

Telepítsd az SDK-t, állítsd be a kulcsot és a workspace-t, és lásd el a követni kívánt függvényeket a dekorátorral. Ha az OPIK_URL_OVERRIDE változó helyi példányra mutat, ugyanez a kód ellene fut.

# pip install opik
# Opik Cloud: set your API key and workspace from the Opik dashboard
# export OPIK_API_KEY="<your-api-key>"
# export OPIK_WORKSPACE="<your-workspace>"
# Self-hosted: point the SDK at your own instance instead
# export OPIK_URL_OVERRIDE="http://localhost:5173/api"

import opik

opik.configure()


@opik.track(name="answer-question")
def answer(question: str) -> str:
    # your model call goes here
    return f"Answer to: {question}"


answer("What does the Apache 2.0 licence allow?")

Ha már használsz OpenTelemetryt, hagyd ki az SDK-t, és küldj OTLP-nyomokat az Opiknak. A felhő végpontja https://www.comet.com/opik/api/v1/private/otel, a helyi példány pedig http://localhost:5173/api/v1/private/otel. Minden kérés az API-kulcsot az Authorization fejlécben, a projektet a projectName fejlécben, a workspace-t pedig a Comet-Workspace fejlécben viszi. Az oldal nem mondja meg, mely GenAI szemantikai konvenciókat képezi le az Opik, ezért ellenőrizd a szükséges attribútumokat, mielőtt rájuk építesz. Keretrendszerekhez a Python-dokumentáció integrációkat sorol fel LangChainhez, LangGraphhoz, LlamaIndexhez, OpenAI-hoz, Anthropichoz és AWS Bedrockhoz.

Értékelés és judge-ok

Az értékelés az Opik legerősebb része. A metrikaoldal két csoportra bontja a könyvtárat. A heurisztikus ellenőrzések nem igényelnek modellt, ilyen az Equals, a Contains, a RegexMatch, az IsJson, a Levenshtein, a ROUGE és a BERTScore. Az LLM-as-a-judge csoportban több mint 20 metrika van, köztük a Hallucination, az Answer Relevance, a Context Precision, a Moderation, a Structured Output Compliance és a G-Eval, amely a saját utasításaidat használja.

Két dolog számít, mielőtt bíznál egy judge-pontszámban. A metrikaoldal szerint a Python judge-metrikák a LiteLLM keretrendszerre épülnek, ezen keresztül konfigurálják a judge-modellt is. Minden judge-hívás elküldi a nyomszöveget ennek a modellnek, így a judge-szolgáltató is felkerül az adatfeldolgozók listájára. Az oldal nem mondja meg, hogy a pontozás az SDK-ban vagy a platformon fut, ezért kérdezd meg a Comettől, mielőtt érzékeny éles nyomokra állítod a judge-okat.

Az online értékelés ugyanezeket a judge-okat az éles környezetre alkalmazza. Egy szabály a termelési nyomok megadott százalékát pontozza, 100 százaléknál mindet. A pontszámok feedback-pontszámként tárolódnak az egyes nyomokon, és ha egy átlag átlép egy küszöböt, riasztást küldhet Slackre, PagerDutyre vagy webhookra. Minden értékelt nyom legalább egy modellhívást jelent, így a mintavételi arány költségbeállítás is, én alacsonyan kezdeném. A megnyitott dokumentáció nem mondja meg, mely csomagok tartalmazzák az online értékelést.

Promptok, optimalizáló és guardrailek

A Prompt Library egy helyen tartja az összes promptot, amelytől az ágens függ. Minden módosítás új, nem módosítható verziót hoz létre, v1, v2, v3 és így tovább számozva. Az SDK a get_prompt vagy a get_chat_prompt hívással kéri le a promptot egy nyomkövetett függvényen belül, a verzió megadása nélkül pedig a legújabb jön. Címkéket, környezeteket vagy visszagörgetési parancsot a dokumentációban nem találtam, ezért egy kiadási folyamatnak ezekre a verziószámokra kell épülnie.

Az optimalizálóval kell a legóvatosabbnak lenni. Az Opik Agent Optimizer SDK hat algoritmust kínál. A MetaPrompt egy gondolkodó modellel bírálatja és átírja a promptot. A HRPO csoportosítja a hibákat, és célzott javításokat javasol. A Few-Shot Bayesian az Optunát használja arra, hogy kiválassza a példák számát és sorrendjét. Az Evolutionary a pontszám és a prompt hossza közötti kompromisszumot keresi. A GEPA egy wrapperen keresztül fut az Opik adatkészletein és metrikáin. A Parameter nem nyúl a prompthoz, hanem Bayes-kereséssel hangolja a mintavételezési paramétereket. Minden futás sokszor hív modellt, ezért indítás előtt állíts be költségkeretet és tartalék (holdout) adatkészletet.

A guardrailek inline és szinkron módon futnak, mielőtt a válasz visszamegy. A guard-típusok: PII-felismerés, engedélyezett és korlátozott témák, prompt-injection és jailbreak felismerés, egyszerű nyelvű LLM-as-a-judge ellenőrzés, valamint saját osztályozó. A guardokat nevesített policykba csoportosítod, az alkalmazás pedig név szerint hívja a guardrailt. A téma- és PII-ellenőrzés csak angolul működik.

Mibe kerül és hol fut

A nyílt forrású változat saját szerveren ingyen futtatható, az árképző oldal pedig korlátlan spanekkel és korlátlan megőrzéssel tünteti fel. A felhőcsomagoknál kezdődik az adatkérdés. Íme a csomagok, ahogy az árképző oldal 2026 októberében mutatta őket.

CsomagÁrTartalmazzaMi változik
Nyílt forrás$0Korlátlan spanekKorlátlan megőrzés, saját szerveren, Apache 2.0 alatt
Free Cloud$025 000 span havonta60 nap megőrzés, legfeljebb 10 csapattag, USA adatrégió
Pro Cloud19 dollár havonta100 000 span havontaalapértelmezetten 60 nap megőrzés, legfeljebb 50 csapattag, USA adatrégió
EnterpriseegyediKorlátlan spanekEgyedi megőrzés és régió, korlátlan csapattagok, megfelelőségi lista: SOC 2, ISO 27001, HIPAA és GDPR

Három megjegyzés a táblázathoz. A Pro csomagban az extra spanek 100 000-enként 5 dollárba kerülnek, a megőrzés 60-ról 400 napra történő meghosszabbítása pedig 100 000 spanenként 29 dollár. Ugyanezen az oldalon az áll, hogy minden csomag korlátlan csapattagot tartalmaz, ez viszont ellentmond a csomagkártyák ülésszám-korlátainak, ezért vásárlás előtt kérd írásban a helyek számát. A kutatók, diákok és oktatók az FAQ szerint ingyen használhatják a teljes Pro csomagot.

A saját szerveres üzemeltetésnek két útja van. A helyi útmutató klónozza a repositoryt, elindítja a ./opik.sh-t, és megnyitja a http://localhost:5173 címet. A dokumentáció ezt „perfekt az induláshoz, de nem éles környezetre“ minősíti, a --clean kapcsoló pedig törli az összes adatkötetet. Éles környezethez a dokumentáció a Kubernetes Helm chartra utal. Alapértelmezés szerint tartalmazza a ClickHouse-t és a ZooKeepert, az 1.4.2-es chart-verziótól külső ClickHouse is használható, az S3-at pedig az S3_BUCKET és az S3_REGION változókon keresztül kell konfigurálni, és az oldal ezt nem írja le szállítottként. A Kubernetes-oldal nem mondja meg, hogyan biztosítja a MySQL-t és a Redist, ezt tisztázd a fürt méretezése előtt.

helm repo add opik https://comet-ml.github.io/opik/
helm upgrade --install opik -n opik --create-namespace opik/opik

Íme, mit mondanak a dokumentumok az adatokról. A Comet ML, Inc. adatvédelmi nyilatkozata szerint az Opik Cloud az Egyesült Államokban üzemel, az EGT-ből és az Egyesült Királyságból az USA-ba történő továbbítás pedig Standard Contractual Clauses alapján történik. Az árképző oldal szerint az adatrégió Free és Pro esetén USA, Enterprise esetén egyedi. Sem az adatvédelmi nyilatkozat, sem a Trust Center nem sorol fel adatfeldolgozási szerződést (DPA) vagy alfeldolgozó-listát, EU-s régiót pedig nem találtam. Az önkiszolgáló felhőben az alapértelmezett megőrzés 60 nap, ezt vedd fel az adatkezelési nyilvántartásodba. Mindkettőt kérd el, mielőtt EU-s személyes adatot küldesz. A régiókezelés nagyobb érvelése itt olvasható: GDPR és adatrezidencia LLM-API-knál.

Az Opiknak két olyan funkciója van, amely személyes adatokat érint, és könnyű összekeverni őket. A szerveroldali adatanonimizálás e-mail-címeket, telefonszámokat és a saját mintákat maszkolja, amikor emberek megnézik a nyomokat. Előnézetben érhető el, csak Enterprise csomagban, és a tárolt adatokat nem változtatja meg. Az SDK-anonimizálók másként működnek. Az opik.hooks.add_anonymizer segítségével regisztrálva felismerik a PII-t, és lecserélik, mielőtt az adat naplózásra kerül, felhőben és saját szerveren egyaránt, a csere pedig egyirányú. Az anonimizálók oldala példákat ad e-mail-címekre, amerikai telefonszámokra, társadalombiztosítási számokra és bankkártyaszámokra. A nevekre és címekre saját szabályok kellenek.

Hol gyengébb

  • Nem találtam EU-s felhőrégiót. Az Opik Cloud Free és Pro csomagban az USA-ban üzemel, az Enterprise pedig egyedi régiót ír. EU-s személyes adatok esetén ez saját szerveres üzemeltetést vagy Enterprise szerződést jelent.
  • A guardrailek és a szerveroldali maszkolás értékesítési kapun át érhető el. A dokumentáció szerint mindkettő enterprise-funkció, a guardrail-szerver pedig saját modelleket futtat, ezért a számítási kapacitást is tervezd be, nem csak a szerződést.
  • A saját szerveres verem nehéz. Éles telepítés alatt ClickHouse, MySQL, Redis, MinIO, ZooKeeper és mindkét backend fut. A helyi útmutató szerint nem éles használatra készült, ezért platformprojektnek kell tekinteni, nem hétvégi munkának.
  • Dokumentációs hiányosságok. Az árképző oldal ellentmond a helyek számáról szóló részeknek, a metrikaoldal nem mondja meg, hol fut a pontozás, a Prompt Library nem mutat címkéket vagy visszagörgetést, az OpenTelemetry-oldal pedig nem nevezi meg a leképezett GenAI-konvenciókat.
  • Gyorsan változnak a verziók. A PyPI-csomag az ellenőrzésemkor 2.2.96 volt, a chartnak és az SDK-nak pedig egyeznie kell, ezért rögzítsd mindkettőt.

Ítélet

Az Opik erős Apache 2.0-s választás a nyomkövetésre, a judge-okra, a promptverziókra és az optimalizálásra egy termékben. A hiányosságai nem a funkciólistában vannak. A guardrailek enterprise-kapuja, a USA-ban hosztolt felhő és a saját szerveres verem üzemeltetési költsége jelenti őket. Olyan platformcsapatnak ajánlom, amely már Kubernetest és ClickHouse-t üzemeltet, és a teljes repositoryt Apache 2.0 alatt akarja. Nézz körül másutt, ha a döntés EU-s hostingon vagy egyszerűbb telepítésen múlik.

  1. Válaszd, ha egy csapat felel a nyomokért, az értékelésért és a promptokért, és a teljes repositoryt Apache 2.0 alatt akarod.
  2. Válaszd, ha ugyanolyan gondossággal tudod üzemeltetni a ClickHouse-t, a MySQL-t és a MinIO-t, mint a többi adattárat.
  3. Ne válaszd, ha EU-s hostolt felhőfeldolgozásra vagy aláírás előtt elolvasható DPA-ra van szükséged, mert egyiket sem találtam meg.
  4. Ne válaszd, ha a guardrailek kötelezőek, és nem tudsz enterprise szerződést kötni.

Válaszd a Langfuse-t, ha MIT-magot szeretnél az ee/ kivétellel, és olyan platformot, amelyet a saját nyomaidon hasonlíthatsz össze. Válaszd az Arize Phoenixet, ha saját szerveren futtatható eszközt akarsz, és el tudod fogadni a rá vonatkozó Elastic License 2.0-t. Válaszd a LangSmith-et, ha hostolt terméket szeretnél, amelynek felhőadatai az USA-ban vagy az EU-ban vannak, és elfogadod a felhasználónkénti árazást, amely a Plus csomagban felhasználónként havi 39 dollártól indul, saját szerveres üzemeltetés pedig csak Enterprise csomagban van.

Források

Gyakori kérdések

Ingyenes az Opik?

A kód Apache 2.0 licencű, az árképző oldal pedig a nyílt forrású változatot korlátlan spanekkel és korlátlan megőrzéssel tünteti fel. Az Opik Cloud Free csomagja havi 25 000 spanre és 60 nap megőrzésre szól, a Pro havi 19 dollár 100 000 spanért. A kutatók, diákok és oktatók ingyen kapják meg a teljes Pro csomagot.

Hol üzemel az Opik Cloud?

Az USA-ban. Az adatvédelmi nyilatkozat szerint a szolgáltatásokat az Egyesült Államokban üzemeltetik, az EGT-ből és az Egyesült Királyságból történő továbbítás pedig a Standard Contractual Clauses (SCC) alapján történik. Az árképző oldal szerint az adatrégió Free és Pro esetén USA, Enterprise esetén egyedi. EU-s régiót nem találtam.

Küldhetek OpenTelemetry-nyomokat az Opiknak?

Igen. Az OTLP-nyomokat az Opik végpontjára küldd: a felhőben a https://www.comet.com/opik/api/v1/private/otel címre, helyi példány esetén a http://localhost:5173/api/v1/private/otel címre. Minden kérés az API-kulcsot az Authorization fejlécben, a projektet a projectName fejlécben, a workspace-t pedig a Comet-Workspace fejlécben viszi.

Opik vagy Langfuse?

Kezdd a licenccel. Az Opik-repository egészében Apache 2.0, a Langfuse README szerint pedig a mag MIT-licencű, az ee/ mappák kivételével. Utána hasonlítsd össze a használt funkciókat, és mindkét szolgáltató oldalán nézd meg az adatrégiót és a guardrail-kaput, mielőtt döntesz.

Pont erre van szükséged?

Írj a projektedről vagy a pozícióról – szívesen hallok felőled.