langchain.agents.agent.RunnableAgent

class langchain.agents.agent.RunnableAgent[source]

基础: BaseSingleActionAgent

由可运行对象供电的智能体。

通过解析和验证关键字参数中的输入数据来创建一个新的模型。

如果输入数据无法解析成有效的模型,则抛出 ValidationError。

参数 input_keys_arg : List[str] = []
参数 return_keys_arg : List[str] = []
参数 runnable: Runnable[dict, Union[AgentAction, AgentFinish]] [必需]

用来获取智能体行为的可运行对象。

参数 stream_runnable : bool = True

是否从可运行对象进行流式读取。

如果为 True,则底层 LLM 以流式方式调用,以便在使用 Agent Executor 的 stream_log 时可以访问到单个 LLM 令牌。

如果为 False,则 LLM 以非流式方式调用,stream_log 中将不可用单个 LLM 令牌。

async aplan(intermediate_steps: List[Tuple[AgentAction, str]], callbacks: Optional[Union[List[BaseCallbackHandler], BaseCallbackManager]] = None, **kwargs: Any) Union[AgentAction, AgentFinish][源代码]

根据历史记录和当前输入异步确定要做什么。

参数:
返回值:

指定使用哪个工具的动作。

返回类型

联合[AgentAction, AgentFinish]

classmethod from_llm_and_tools(llm: BaseLanguageModel, tools: Sequence[BaseTool], callback_manager: Optional[BaseCallbackManager] = None, **kwargs: Any) BaseSingleActionAgent

从LLM和工具中构建一个智能体。

参数:
  • llm (BaseLanguageModel) – 要使用的语言模型。

  • tools (Sequence[BaseTool]) – 要使用的工具。

  • callback_manager (Optional[BaseCallbackManager]) – 要使用的回调管理器。

  • kwargs (Any) – 其他参数。

返回值:

智能体对象。

返回类型

BaseSingleActionAgent

get_allowed_tools() Optional[List[str]]
返回类型

Optional[List[str]]

plan(intermediate_steps: List[Tuple[AgentAction, str]], callbacks: Optional[Union[List[BaseCallbackHandler], BaseCallbackManager]], **kwargs: Any) Union[AgentAction, AgentFinish][source]

根据历史数据和当前输入决定要做什么。

参数:
  • intermediate_steps (列表[[元组[(AgentAction, str]]]]) - LLM至今已采取的步骤以及观察结果。

  • callbacks (可选[联合[列表[BaseCallbackHandler], BaseCallbackManager]]) - 要运行的回调。

  • **kwargs (任何) - 用户输入。

返回值:

指定使用哪个工具的动作。

返回类型

联合[AgentAction, AgentFinish]

return_stopped_response(early_stopping_method: str, intermediate_steps: List[Tuple[AgentAction, str]], **kwargs: Any) AgentFinish

当代理因达到最大迭代次数而被停止时,返回响应。

参数:
  • early_stopping_method (str) - 用于早期停止的方法。

  • intermediate_steps (列表[元组[AgentAction, str]]) - LLM 已采取的步骤和观察结果。

  • **kwargs (任何) - 用户输入。

返回值:

代理结束对象。

返回类型

AgentFinish

引发

ValueError – 如果不支持 early_stopping_method

save(file_path: Union[Path, str]) None

保存代理。

参数:

file_path (Union[Path, str]) – 要保存代理的路径。

返回类型

None

示例:.. code-block:: python

# 当与代理执行器代理一起使用时 agent.agent.save(file_path="path/agent.yaml")

tool_run_logging_kwargs() Dict

返回工具运行的日志kwargs。

返回类型

Dict

property input_keys: List[str]

返回输入键。

property return_values: List[str]

返回代理的值。