deepagents v0.6.0
- - **
CodeInterpreterMiddleware**:(实验性)deepagents现在支持通过作用域 QuickJS 运行时进行代码执行和程序化工具调用。 - - 支持
version="v3"instream_events/astream_events。请参阅 事件流 指南了解更多详情。 - - **
DeltaChannel(测试版)** (博客):Deep Agents 现在使用DeltaChannel用于消息历史和代理文件。与其将完整的累积值重新序列化为每个检查点,不如只存储每个步骤写入的增量增量——使检查点保持较小的规模,因为线程会变得越来越长。 - - **Harness 配置文件**:注册按提供商或按模型划分的配置包(
HarnessProfile),当选择模型时自动应用——系统提示调整、工具覆盖、中间件更改和子代理默认值——而无需修改调用位置。create_deep_agent,这些配置在 - - **
ContextHubBackend** (博客):新的文件系统后端,由 LangSmith Hub 提供支持。代理文件——技能、记忆和其他持久化上下文——作为 Hub 提交存储,为您提供每次写入的版本历史记录和 LangSmith 原生的持久性,而无需配置单独的 LangGraph 存储。
langchain v1.3.0
此版本添加了对 version="v3" in stream_events / astream_events 的 langchain 代理支持。请参阅 事件流 指南了解更多详情。
langgraph v1.2.0
此版本添加了对节点执行的更细粒度控制(超时、错误恢复和优雅关闭)、一种新的通道类型,可减少长运行线程的检查点开销,以及一个新的以内容块为中心的流式 API (v3),具有类型化的每通道投影。
- - **
DeltaChannel(测试版)**:一种新的通道类型,在每个步骤只存储增量增量,而不是将完整的累积值重新序列化。对于随时间增长的大型通道最有用,例如长运行线程中的消息列表。使用snapshot_frequency=K每 K 步写入一次完整快照并限制读取延迟。 - - **每个节点超时**:传递
timeout=toadd_node以限制单次尝试可以运行的时间。设置硬性挂钟限制(run_timeout)、空闲限制(在有进展时重置(idle_timeout),或两者通过TimeoutPolicy。当限制触发时,LangGraph 引发NodeTimeoutError,清除该尝试的写入,并将控制权交给重试策略。仅适用于异步节点。 - - **节点级错误处理程序**:传递
error_handler=to @add_node来在所有重试耗尽后运行恢复函数。处理程序接收一个类型化的 @[NodeError,并可以返回一个 [Commandto update state and route to a different node, useful for Saga/compensation patterns. - - **优雅关闭**:在当前超级步骤完成后协作停止正在进行的运行,并保存可恢复的检查点。创建一个
RunControl并调用request_drain()从任何线程;运行会引发GraphDrained,并可以使用相同的配置稍后恢复。 - 新版事件流式 API(测试版):传递
version="v3"tostream_events()/astream_events()用于以内容块为中心的协议,具有类型化的按通道投影(run.values,run.messages,run.lifecycle,run.subgraphs)加上可选的转换器,用于更新、自定义事件、检查点、任务和调试。run.messages产生一个ChatModelStream每个 LLM 调用,带有文本、推理、工具调用和用量的类型化子投影。version="v1"和version="v2"保持不变。
超时和错误处理程序仅限 Python;重试策略在 Python 和 TypeScript 中继续工作。
deepagents v0.5.0
- - **异步子代理**:深度代理可以启动非阻塞的后台任务,因此用户可以在子代理并发工作的同时继续与代理交互。需要 LangSmith 部署 用于子代理。
- 多模态支持:
read_file工具现在支持 PDF、音频和视频文件以及图像。 - 后端更改:我们对深度代理的 后端协议:
- - 更新了存储在 状态和存储后端 中的文件格式以支持二进制文件。
- - 改进了从后端到工具的错误传播。
- - 现在可以直接实例化
StateBackend()和StoreBackend()。使用工厂指定(例如backend=(lambda rt: StateBackend(rt)))已弃用。 - Anthropic 提示缓存改进:我们对 Anthropic 模型的提示缓存性能做了一些改进。
langgraph v1.1.0
- - **类型安全流式处理(
version="v2")**:传递version="v2"tostream()/astream()以获取统一的StreamPart输出,并在每个块上提供type,ns和data键。每个模式都有自己独立的TypedDict,均可从langgraph.types导入。请参阅 流式处理文档. - - **类型安全调用(
version="v2")**:传递version="v2"toinvoke()/ainvoke()以获取具有GraphOutput和.value属性的.interrupts对象。请参阅 调用文档. - Pydantic 和 dataclass 强制转换:With
version="v2",invoke()和values-mode 流输出会自动转换为你声明的 Pydantic 模型或 dataclass 类型。 - 修复了中断和子图的时光倒流:重放不再复用陈旧的
RESUME值,子图现在能正确恢复父级的历史状态检查点。 - 完全向后兼容:
version="v2"是可选的。GraphOutput支持弃用的字典式访问以便于渐进式迁移。
deepagents v0.4.0
* 用于可插拔沙箱的新集成包: langchain-modal, langchain-daytona、和 langchain-runloop。请参阅 沙箱指南 和示例 数据分析教程. * 变更内容 对话历史摘要: * 摘要现在通过模型节点中的 wrap_model_call 事件发生。因此我们保留了图中完整的消息历史。 * 更精确的令牌计数。 * 如果聊天模型抛出 ContextOverflowError(定义在 langchain-core),摘要现在将自动触发。当前 langchain-anthropic 和 langchain-openai 支持此功能。 * 我们现在默认为以 "openai:". <section class="mdx-block">
使用 Responses API 禁用数据保留
from langchain.chat_models import init_chat_model
agent = create_deep_agent(
model=init_chat_model(
"openai:...",
use_responses_api=True,
store=False,
include=["reasoning.encrypted_content"],
)
)
langchain v1.2.0
- *
create_agent:通过工具上的新extras属性简化了对特定提供商工具参数和定义的支持。示例: tools。示例: - * 特定于提供商的配置,例如 Anthropic 的 编程式工具调用 和 工具搜索.
- * 内置工具在客户端执行,由 Anthropic, OpenAI和其他提供商支持。
- * 支持代理中的严格模式架构遵循
response_format(请参阅ProviderStrategy文档)。
langchain-google-genai v4.0.0
我们重写了 Google GenAI 集成以使用 Google 统一的 Generative AI SDK,它通过同一接口提供对 Gemini API 和 Vertex AI 平台的访问。这包括中的最小破坏性变更以及已弃用的包。 langchain-google-vertexai.
请参阅完整的 发行说明和迁移指南 了解更多详情。
langchain v1.1.0
- * 模型配置文件:聊天模型现在通过
.profile属性公开支持的功能和能力。这些数据来自 models.dev,这是一个提供模型能力数据的开源项目。 - * 摘要中间件: 更新以支持使用模型配置文件进行上下文感知摘要的灵活触发点。
- * 结构化输出:
ProviderStrategy支持(原生结构化输出)现在可以从模型配置文件推断。 - *
SystemMessage用于create_agent: 支持传递SystemMessage实例直接到create_agent'ssystem_prompt参数,实现缓存控制和结构化内容块等高级功能。 - * 模型重试中间件: 用于自动重试失败模型调用的新中间件,支持可配置的指数退避。
- * 内容审核中间件: OpenAI 内容审核中间件,用于检测和处理代理交互中的不安全内容。支持检查用户输入、模型输出和工具结果。