LangChain API 参考文档简介
LangChain API 参考文档 概述LangChain 是一个用于构建由大型语言模型LLM驱动的应用程序和代理的框架。本文档整理了 LangChain 主要模块中的Classes类、Functions函数、Modules模块和Types类型的完整列表及其功能说明。 Classes类结构化输出错误类类名功能说明StructuredOutputError结构化输出错误的基类MultipleStructuredOutputsError当模型返回多个结构化输出工具调用但只期望一个时的异常StructuredOutputValidationError当结构化输出工具调用参数无法根据约束解析时发生结构化输出策略类类名功能说明ToolStrategy使用工具调用策略处理模型响应ProviderStrategy使用模型提供商的原生结构化输出方法OutputToolBinding用于跟踪结构化输出工具的元数据信息ProviderStrategyBinding用于跟踪原生结构化输出元数据的信息AutoStrategy自动选择最佳的结构化输出策略Shell 执行策略类类名功能说明BaseExecutionPolicy持久化 Shell 会话的配置契约HostExecutionPolicy在宿主进程上直接运行 ShellCodexSandboxExecutionPolicy通过 Codex CLI 沙箱运行 ShellDockerExecutionPolicy在专用 Docker 容器中运行 Shell模型调用限制中间件类类名功能说明ModelCallLimitStateModelCallLimitMiddleware 的状态架构ModelCallLimitExceededError当模型调用限制超出时会抛出的异常ModelCallLimitMiddleware追踪模型调用计数并强制执行限制的中间件人在回路中间件类类名功能说明Action表示一个具有名称和参数的操作ActionRequest表示具有名称、参数和描述的操作请求ReviewConfig审查人在回路请求的策略配置HITLRequest对人类反馈的请求用于获取模型请求的一系列操作ApproveDecision当人类批准操作时返回的响应EditDecision当人类编辑操作时返回的响应RejectDecision当人类拒绝操作时返回的响应HITLResponseHITLRequest 的响应有效负载InterruptOnConfig要求人在回路中的操作的配置HumanInTheLoopMiddleware实现人在回路中的中间件隐私数据保护类类名功能说明PIIDetectionError从内容中检测个人可识别信息PII失败时发生的异常RedactionRule处理单一 PII 类型的配置ResolvedRedactionRule解析好的、准备好执行的隐私保护规则PIIMiddleware检测和处理对话中的个人可识别信息PII的中间件对话摘要中间件类类名功能说明SummarizationMiddleware当接近令牌限制时对对话历史进行摘要的中间件中间件基础类类名功能说明ModelRequest代理的模型请求信息ModelResponse模型执行返回的响应包括消息和可选的结构化输出ExtendedModelResponse带有来自 ‘wrap_model_call’ 中间件的可选命令的模型响应OmitFromSchema注解用于标记状态属性是否从输入或输出架构中省略AgentState代理的状态架构AgentMiddleware代理中间件的基类Shell 工具中间件类类名功能说明ShellToolState用于追踪 Shell 会话资源的代理状态扩展CommandExecutionResult命令执行的结构化结果ShellSession支持顺序命令执行的持久化 Shell 会话ShellToolMiddleware为代理注册持久化 Shell 工具的中间件工具调用限制类类名功能说明ToolCallLimitStateToolCallLimitMiddleware 的状态架构ToolCallLimitExceededError当工具调用限制超出时会抛出的异常ToolCallLimitMiddleware在代理执行期间追踪和强制工具调用限制的中间件上下文编辑类类名功能说明ContextEdit描述上下文编辑策略的协议ClearToolUsesEdit当令牌限制超出时清除工具输出的配置ContextEditingMiddleware自动修剪工具结果以管理上下文大小的中间件高级中间件类类名功能说明ToolRetryMiddleware使用可配置回退自动重试失败工具调用的中间件ModelFallbackMiddleware在出错时自动回退到替代模型的中间件FilesystemFileSearchMiddleware提供对文件系统文件的 Glob 和 Grep 搜索的中间件ModelRetryMiddleware使用可配置回退自动重试失败模型调用的中间件Todo 管理中间件类类名功能说明Todo一个单独的待办事项包含内容和状态PlanningStateTodo 中间件的状态架构WriteTodosInputwrite_todos 工具的输入架构TodoListMiddleware为代理提供待办事项列表管理功能的中间件工具仿真和选择类类名功能说明LLMToolEmulator使用 LLM 而非执行他们的指定工具的仿真器LLMToolSelectorMiddleware在调用主模型之前使用 LLM 选择相关工具的中间件 Functions函数代理工厂函数函数名功能说明create_agent创建一个代理图循环调用工具直到满足停止条件PII 检测函数函数名功能说明detect_email检测内容中的电子邮件地址detect_credit_card使用 Luhn 验证检测内容中的信用卡号码detect_ip检测内容中的 IPv4 或 IPv6 地址detect_mac_address检测内容中的 MAC 地址detect_url使用正则表达式和标准库验证检测内容中的 URL隐私保护策略函数函数名功能说明apply_strategy将配置的策略应用于内容中的匹配项resolve_detector为给定的配置返回一个可调用的检测器中间件装饰器函数函数名功能说明hook_config装饰器用于在中间件方法中配置钩子行为before_model装饰器用于动态创建具有 before_model 钩子的中间件after_model装饰器用于动态创建具有 after_model 钩子的中间件before_agent装饰器用于动态创建具有 before_agent 钩子的中间件after_agent装饰器用于动态创建具有 after_agent 钩子的中间件dynamic_prompt装饰器用于为模型动态生成系统提示wrap_model_call从函数创建 wrap_model_call 钩子中间件wrap_tool_call从函数创建 wrap_tool_call 钩子中间件Shell 和文件搜索函数函数名功能说明shell_tool提供 Shell 命令执行功能的工具glob_search快速文件模式匹配工具适用于任何代码库大小grep_search快速内容搜索工具适用于任何代码库大小任务管理函数函数名功能说明write_todos为当前工作会话创建和管理结构化任务列表重试功能函数函数名功能说明validate_retry_params验证重试参数should_retry_exception检查异常是否应触发重试calculate_delay计算带有指数退避和可选抖动的重试尝试的延迟模型初始化函数函数名功能说明init_embeddings从模型名称和可选提供商初始化向量模型init_chat_model使用统一接口从任何支持的提供商初始化聊天模型 Modules模块核心模块模块名功能说明langchainLangChain 的主入口点tools工具集合模块tool_node用于向后兼容导入的工具文件代理模块模块名功能说明agents使用 LangChain 构建代理的入口点agents.factory支持中间件的代理工厂agents.structured_output用于设置代理响应格式的类型中间件模块模块名功能说明agents.middleware使用代理中间件插件的入口点agents.middleware.model_call_limit代理的调用追踪中间件agents.middleware.human_in_the_loop人在回路中间件agents.middleware.redactionPII 隐私数据保护隐私数据脱敏中间件agents.middleware.summarization对话摘要中间件agents.middleware.types中间件类型定义和基类agents.middleware.shell_toolShell 工具中间件agents.middleware.tool_call_limit工具调用限制追踪中间件agents.middleware.context_editing上下文编辑和修剪中间件agents.middleware._executionShell 执行策略模块agents.middleware._redactionPII 检测和隐私保护实现agents.middleware._retry重试逻辑的基础实现agents.middleware.piiPII 中间件实现agents.middleware.tool_retry工具调用重试中间件agents.middleware.model_fallback模型回退中间件agents.middleware.file_search文件搜索工具中间件agents.middleware.todo任务管理中间件agents.middleware.tool_emulator工具仿真中间件agents.middleware.tool_selection基于 LLM 的工具选择中间件agents.middleware.model_retry模型调用重试中间件速率限制模块模块名功能说明rate_limiters速率限制器的基础抽象和内存实现向量模块模块名功能说明embeddings向量模型embeddings.base向量模型的工厂函数聊天模型模块模块名功能说明chat_models在 LangChain 中使用聊天模型的入口点chat_models.base聊天模型的工厂函数消息模块模块名功能说明messages消息和消息内容类型️ Types类型响应格式与决策类型类型名功能说明ResponseFormat所有支持的响应格式策略的联合类型Decision人类决策响应的联合类型批准、编辑或拒绝上下文与调用结果类型类型名功能说明ContextSize上下文大小规范的联合类型ModelCallResult模型调用处理程序返回值的类型别名重试配置类型类型名功能说明RetryOn用于指定要重试的异常的类型OnFailure用于指定失败处理行为的类型 快速入门安装 LangChainpipinstalllangchain创建简单代理fromlangchain.agentsimportcreate_agentfromlangchain.toolsimporttoolfromlangchain.chat_modelsimportinit_chat_model# 定义工具tooldefcalculator(expression:str)-str:Evaluate a math expressionreturnstr(eval(expression))# 初始化模型modelinit_chat_model(gpt-4)# 创建代理agentcreate_agent(modelmodel,tools[calculator],)使用中间件增强代理fromlangchain.agents.middlewareimport(HumanInTheLoopMiddleware,ModelCallLimitMiddleware)# 添加人在回路中间件agent_with_hitlagent.with_middleware(HumanInTheLoopMiddleware())# 添加模型调用限制agent_with_limitsagent_with_hitl.with_middleware(ModelCallLimitMiddleware(max_calls10)) 相关资源官方文档: LangChain DocsAPI 参考: API ReferenceChat LangChain: 在线对话GitHub: LangChain Repository提示: 这份文档是基于 LangChain 官方 API 参考生成的如有更新请参考官方最新文档。