# Langgraph evals

LangGraph is LangChain's library for building an agent as a graph. Each node is a function,
edges decide which node runs next, and one state object is passed through the whole run. That
structure is what makes a LangGraph agent easier to evaluate than a loop of model calls: every
step has a name, and a failure can be pinned to a node rather than to "the agent".

Three things follow from it. LangGraph saves the state after every step, keyed by a thread id,
and that is what makes pause, human approval, and resume work. It also means you can rewind a
failed run to a checkpoint, change the state, and run it forward again with the exact context it
had at the time, which is real replay rather than a reconstruction. Because each node is a unit,
a check can be scoped to one node, so "the router picked the wrong branch" is a separate finding
from "the answer was wrong". And a change to the graph is a diff, so when a regression appears
after a change, the set of nodes that could have caused it is short.

Tracing is where teams get stuck. LangGraph does not emit OpenTelemetry spans on its own. It
traces to LangSmith, and the way to send those same spans anywhere else is LangSmith's OTLP
export: set LANGSMITH_TRACING and LANGSMITH_OTEL_ENABLED, and point OTEL_EXPORTER_OTLP_ENDPOINT
at your collector.

## Questions answered under this concept

- [How do I catch a regression caused by a graph change?](https://tessary.ai/answers/langgraph-evals/how-do-i-catch-a-regression-caused-by-a-graph-change)
- [How do I grade one node of a LangGraph graph?](https://tessary.ai/answers/langgraph-evals/how-do-i-grade-one-node-of-a-langgraph-graph)
- [How do I replay a failed LangGraph run?](https://tessary.ai/answers/langgraph-evals/how-do-i-replay-a-failed-langgraph-run)
- [How do I test a LangGraph agent that pauses for human approval?](https://tessary.ai/answers/langgraph-evals/how-do-i-test-a-langgraph-human-in-the-loop-pause)
- [How do I trace a LangGraph agent?](https://tessary.ai/answers/langgraph-evals/how-do-i-trace-a-langgraph-agent)
- [What's the difference between a LangGraph agent and an AWS Strands agent?](https://tessary.ai/answers/langgraph-evals/langgraph-agent-vs-aws-strands-agent)
- [What's the difference between a LangGraph workflow and a LangGraph agent?](https://tessary.ai/answers/langgraph-evals/langgraph-workflow-vs-agent)
- [What's the difference between a LangChain agent and a LangGraph agent?](https://tessary.ai/answers/langgraph-evals/whats-the-difference-between-a-langchain-agent-and-a-langgraph-agent)
- [What's the difference between LangGraph and Deep Agents?](https://tessary.ai/answers/langgraph-evals/whats-the-difference-between-langgraph-and-deep-agents)

---

Source: https://tessary.ai/answers/langgraph-evals
All concepts: https://tessary.ai/answers
From Tessary, agent reliability for AI agents in production: https://tessary.ai
