常见问题
速查表;原理见各章。
核心概念
| 问题 | 要点 |
|---|---|
| Runnable 和 Chain 区别? | Chain 是 Runnable 子类/实现;习惯统称 Runnable |
| LCEL 是什么? | pipe 声明式组链 |
| LangChain 和 LangGraph? | 前者组件,后者有状态图;见 07 |
Runnable / 链
| 问题 | 要点 |
|---|---|
| pipe 类型报错? | 上步输出与下步输入不匹配 |
| stream 没 token? | 最后一环是否为 ChatModel;是否用了 stream 而非 invoke |
| callback 没触发? | config 是否传到子调用 |
模型与消息
| 问题 | 要点 |
|---|---|
| 401 / 429? | 密钥与 retry;429 降并发 |
| 多模态报错? | 当前模型是否支持该 content 类型 |
| Tool 不被调用? | description、schema 是否清晰 |
Agent
| 问题 | 要点 |
|---|---|
| 死循环调工具? | maxIterations、改 prompt、缩小 tool 集 |
| 状态越来越大? | trimMessages、摘要节点 |
流式
| 问题 | 要点 |
|---|---|
| 链上流式中断? | 中间 Runnable 是否实现 _streamIterator |
| 如何调试? | streamEvents + LangSmith |
性能
| 建议 |
|---|
batch 控制 maxConcurrency |
| 缓存 embedding / 重复 prompt |
| 大文档 RAG 先检索再进 prompt |
| 重计算放 LangGraph 单独节点或 Worker |
总结
多数问题落在:类型匹配的 pipe、Message 顺序、config 透传、Agent 用 LangGraph 管循环。