Langfuse is the open-source LLM engineering platform: tracing & evaluations for LLM and agent applications, prompt management, datasets & experiments, and evaluation (scores). This package provides the CallbackHandler for tracing LangChain and LangGraph invocations with Langfuse. Spans are exported by the LangfuseSpanProcessor from @langfuse/otel; prompt management, datasets/experiments, and evals/scores live in @langfuse/client.
This is the current SDK generation (@langfuse/* scoped packages). The unscoped langfuse-langchain npm package belongs to the legacy v3 SDK β for new integrations use @langfuse/langchain. Migration guides: v3 β v4, v4 β v5.
npm install @langfuse/langchain @langfuse/otel @opentelemetry/sdk-trace-node
LANGFUSE_PUBLIC_KEY="pk-lf-..."
LANGFUSE_SECRET_KEY="sk-lf-..."
LANGFUSE_BASE_URL="https://cloud.langfuse.com" # πͺπΊ EU region. πΊπΈ US: https://us.cloud.langfuse.com
// Register the span processor once at startup
import { LangfuseSpanProcessor } from "@langfuse/otel";
import { NodeTracerProvider } from "@opentelemetry/sdk-trace-node";
new NodeTracerProvider({
spanProcessors: [new LangfuseSpanProcessor()],
}).register();
// Pass the CallbackHandler to your LangChain invocations
import { CallbackHandler } from "@langfuse/langchain";
import { ChatOpenAI } from "@langchain/openai";
const handler = new CallbackHandler({
sessionId: "session-123",
userId: "user-456",
});
const model = new ChatOpenAI({ model: "gpt-5.1" });
const response = await model.invoke("What is Langfuse?", {
callbacks: [handler],
});
| Package | NPM | Description | Environments |
|---|---|---|---|
| @langfuse/tracing | OpenTelemetry-based tracing instrumentation | Node.js 20+ | |
| @langfuse/otel | LangfuseSpanProcessor to export OpenTelemetry spans to Langfuse |
Node.js 20+ | |
| @langfuse/client | Prompt management, datasets, experiments, scores, full REST API | Universal JS | |
| @langfuse/openai | observeOpenAI wrapper for tracing the OpenAI SDK |
Universal JS | |
| @langfuse/langchain | CallbackHandler for LangChain / LangGraph tracing |
Universal JS | |
| @langfuse/vercel-ai-sdk | Telemetry integration for Vercel AI SDK v7 | Universal JS | |
| @langfuse/browser | Browser score ingestion with public-key auth | Browser | |
| @langfuse/core | Shared core: generated API client, logger, utilities | Universal JS |