可运行代理#
- class langchain.agents.agent.RunnableAgent[source]#
-
由Runnables驱动的代理。
通过解析和验证来自关键字参数的输入数据来创建一个新模型。
如果输入数据无法验证以形成有效模型,则引发 [ValidationError][pydantic_core.ValidationError]。
self 被显式地设为仅位置参数,以允许 self 作为字段名称。
- param input_keys_arg: List[str] = []#
- param return_keys_arg: List[str] = []#
- param runnable: Runnable[dict, AgentAction | AgentFinish] [Required]#
调用以获取代理操作的可运行对象。
- param stream_runnable: bool = True#
是否从可运行对象进行流式传输。
- If True then underlying LLM is invoked in a streaming fashion to make it possible
在使用stream_log与Agent Executor时,获取对单个LLM令牌的访问权限。如果为False,则LLM将以非流式方式调用,并且stream_log中将无法获取单个LLM令牌。
- async aplan(intermediate_steps: List[Tuple[AgentAction, str]], callbacks: list[BaseCallbackHandler] | BaseCallbackManager | None = None, **kwargs: Any) AgentAction | AgentFinish [source]#
基于过去的历史和当前的输入,决定要做什么。
- Parameters:
intermediate_steps (List[Tuple[AgentAction, str]]) – LLM 迄今为止采取的步骤,以及观察结果。
callbacks (list[BaseCallbackHandler] | BaseCallbackManager | None) – 要运行的回调函数。
**kwargs (Any) – 用户输入。
- Returns:
指定使用什么工具的操作。
- Return type:
- classmethod from_llm_and_tools(llm: BaseLanguageModel, tools: Sequence[BaseTool], callback_manager: BaseCallbackManager | None = None, **kwargs: Any) BaseSingleActionAgent #
从LLM和工具构建一个代理。
- Parameters:
llm (BaseLanguageModel) – 使用的语言模型。
tools (Sequence[BaseTool]) – 要使用的工具。
callback_manager (BaseCallbackManager | None) – 要使用的回调管理器。
kwargs (Any) – 额外的参数。
- Returns:
代理对象。
- Return type:
- get_allowed_tools() List[str] | None #
- Return type:
列表[str] | 无
- plan(intermediate_steps: List[Tuple[AgentAction, str]], callbacks: list[BaseCallbackHandler] | BaseCallbackManager | None = None, **kwargs: Any) AgentAction | AgentFinish [来源]#
根据过去的历史和当前的输入,决定要做什么。
- Parameters:
intermediate_steps (List[Tuple[AgentAction, str]]) – LLM 到目前为止所采取的步骤,以及观察结果。
callbacks (list[BaseCallbackHandler] | BaseCallbackManager | None) – 要运行的回调函数。
**kwargs (Any) – 用户输入。
- Returns:
指定使用什么工具的操作。
- Return type:
- return_stopped_response(early_stopping_method: str, intermediate_steps: List[Tuple[AgentAction, str]], **kwargs: Any) AgentFinish #
当代理由于达到最大迭代次数而停止时返回响应。
- Parameters:
early_stopping_method (str) – 用于早停的方法。
intermediate_steps (List[Tuple[AgentAction, str]]) – LLM 迄今为止采取的步骤,以及观察结果。
**kwargs (Any) – 用户输入。
- Returns:
代理完成对象。
- Return type:
- Raises:
ValueError – 如果 early_stopping_method 不被支持。
- save(file_path: Path | str) None #
保存代理。
- Parameters:
file_path (Path | str) – 保存代理的文件路径。
- Return type:
无
示例: .. code-block:: python
# 如果使用代理执行器 agent.agent.save(file_path=”path/agent.yaml”)
- tool_run_logging_kwargs() Dict #
返回工具运行的日志参数。
- Return type:
字典
- property input_keys: List[str]#
返回输入键。
- property return_values: List[str]#
代理的返回值。