Integrations/LangChain
Agent Framework

LangChain Monitoring & Chain Tracing

Auto-instrument every LangChain chain step, LLM calls, tool use, retriever queries, with zero code changes. Get full span trees, per-step cost attribution, and inline evals on every response.

Free tier · No credit card · 2-minute setup

What you get with Fluiq for LangChain

Per-step span tree

Every chain step, LLM call, tool invocation, retriever query, embedding, becomes its own span with input, output, token counts, latency, and USD cost.

Cost attribution

USD cost broken down per LLM node in the chain, across nested sub-chains and tool calls, know exactly which step in your pipeline is expensive.

Inline evals

LLM-as-judge scoring (hallucination, relevance, faithfulness, toxicity) runs automatically on chain outputs, warn mode logs scores, block mode intercepts bad responses.

Setup

Add Fluiq to your LangChain app in 2 lines

import fluiq
fluiq.instrument(api_key="fl_...")  # patches LangChain automatically

from langchain_openai import ChatOpenAI
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.output_parsers import StrOutputParser

llm = ChatOpenAI(model="gpt-4o")
prompt = ChatPromptTemplate.from_template("Summarise this: {text}")
chain = prompt | llm | StrOutputParser()

# Every step is a separate trace span with cost:
result = chain.invoke({"text": "Your document content here"})

What Fluiq instruments in LangChain

Every call to these methods is automatically traced, no decorators, no wrappers, no manual spans.

BaseLLM.__call__() / invoke()
BaseChatModel.__call__() / invoke()
BaseChain.invoke() / run()
BaseTool.run() / arun()
BaseRetriever.get_relevant_documents()
BaseEmbeddings.embed_documents()
BaseEmbeddings.embed_query()
ConversationalRetrievalChain.invoke()

Start tracing LangChain in 2 minutes

Free tier. No credit card. Full traces, security scanning, and evals on your first LangChain call.

50,000 free traces / month · 1,000 evals / month · 14-day retention