Langfuse: Tracing & Observabilitate Open-Source pentru LLM în LLMOps, Evaluare & Securitate AI

Platforma open-source de referință pentru observabilitatea aplicațiilor AI: tracing ierarhic (Traces, Spans, Generations), scoring automat, urmărire latență și self-hosting cu Docker.

Configurare & comandă
from langfuse.decorators import observe
from langfuse.openai import openai

# Orice apel devine automat vizibil în panoul Langfuse:
@observe()
def raspunde_utilizator(intrebare: str):
    raspuns = openai.chat.completions.create(
        model="gpt-4o",
        messages=[{"role": "user", "content": intrebare}]
    )
    return raspuns.choices[0].message.content

Descriere & Utilizare

Atunci când un utilizator reclamă că „asistentul a răspuns greșit”, depanarea este imposibilă fără un jurnal granular al fiecărui pas intermediar: ce documente a găsit căutarea vectorială? Cât a durat apelul către unealta de baze de date? Ce prompt exact a primit modelul?

Langfuse este liderul open-source în observabilitate pentru aplicații generative. Prin simplul decorator @observe() sau prin integrarea nativă cu LangChain, LlamaIndex și LiteLLM, Langfuse capturează automat întregul arbore de execuție:

1) Traces (conversația sau cererea la nivel înalt a utilizatorului), 2) Spans (operațiunile logice intermediare, căutările RAG, apelurile de unelte), și 3) Generations (apelurile fizice către LLM cu calcul automat de cost în dolari și număr de tokeni). Poate fi găzduit gratuit pe propriul server Linux prin Docker!

Cum să o reții ușor

💡 Langfuse este cutia neagră a avionului tău AI: înregistrează fiecare conversație din carlingă, altitudinea, viteza și consumul de combustibil secundă cu secundă, astfel încât știi exact ce s-a întâmplat dacă ceva a mers prost.

Opțiuni și parametri tehnici

  • @observe(): decorator Python care creează automat un Span sau Trace peste funcția asociată.
  • langfuse.openai / langfuse.anthropic: wrappere drop-in care înlocuiesc clienții oficiali fără a modifica logica de cod.
  • score(name, value, comment): metodă pentru adăugarea de scoruri numerice (0–1) sau binare la un Trace (din evaluări automate sau feedback utilizator).
  • LANGFUSE_PUBLIC_KEY & LANGFUSE_SECRET_KEY: variabilele de mediu pentru conectarea la instanța ta Langfuse.

Exemple practice și cazuri de utilizare

  • Auto-hosting gratuit cu Docker Compose: docker compose up -d pornește Langfuse, baza PostgreSQL și interfața web pe portul 3000.
  • Adăugarea feedback-ului din interfață la trace: langfuse.score(trace_id=trace.id, name="feedback_utilizator", value=1).
  • Integrare cu LangChain într-o singură linie: from langfuse.callback import CallbackHandler; handler = CallbackHandler(); chain.invoke(..., config={"callbacks": [handler]}).

Sfaturi de configurare & capcane

Folosește întotdeauna parametrul user_id și session_id în decoratorul @observe() — îți va permite să filtrezi instantaneu în panoul Langfuse tot istoricul unui utilizator specific care raportează o problemă.

Comenzi și ghiduri înrudite