langchain_cohere.sql_agent.agent.create_sql_agent

langchain_cohere.sql_agent.agent.create_sql_agent(llm: BaseLanguageModel, toolkit: Optional[SQLDatabaseToolkit] = None, callback_manager: Optional[BaseCallbackManager] = None, prefix: Optional[str] = None, suffix: Optional[str] = None, top_k: int = 10, max_iterations: Optional[int] = 15, max_execution_time: Optional[float] = None, early_stopping_method: str = 'force', verbose: bool = False, agent_executor_kwargs: Optional[Dict[str, Any]] = None, extra_tools: Sequence[BaseTool] = (), *, db: Optional[SQLDatabase] = None, prompt: Optional[BasePromptTemplate] = None, **kwargs: Any) AgentExecutor[source]

从LLM和工具包或数据库中构建SQL代理。

参数
  • llm (BaseLanguageModel) – 用于代理的语言模型。如果agent_type是“工具调用”则llm应该支持工具调用。

  • toolkit (可选[SQLDatabaseToolkit]) – 代理要使用的SQLDatabaseToolkit。必须提供‘toolkit’或’db’中的一个。如果想要为代理和工具包使用不同的模型,请指定‘toolkit’。

  • callback_manager (可选[BaseCallbackManager]) – 已废弃。将“callbacks”键传递到‘agent_executor_kwargs’中,以将构造回调传递给AgentExecutor。

  • prefix (可选[str]) – 提示前缀字符串。必须包含变量“top_k”和“dialect”。

  • suffix (可选[str]) – 提示后缀字符串。默认值取决于代理类型。

  • input_variables – 已废弃。

  • top_k (int) – 默认查询的行数。

  • max_iterations (可选[int]) – 传递给AgentExecutor初始化。

  • max_execution_time (可选[float]) – 传递给AgentExecutor初始化。

  • early_stopping_method (str) – 传递给AgentExecutor初始化。

  • verbose (bool) – AgentExecutor的冗长级别。

  • agent_executor_kwargs (可选[Dict[str, Any]]) – 任意额外的AgentExecutor参数。

  • extra_tools (序列[BaseTool]) – 给代理提供的额外工具,除了SQLDatabaseToolkit自带的外。

  • db (可选[SQLDatabase]) – 从中创建SQLDatabaseToolkit的SQLDatabase。使用“db”和“llm”创建工具包。必须提供“db”或“toolkit”中的精确一项。

  • prompt (可选[BasePromptTemplate]) – 完整的代理提示。prompt和{prefix, suffix, format_instructions, input_variables}是互斥的。必须包含变量“top_k”和“dialect”。如果提示需要,还可以包含变量“table_info”或“table_names”。

  • **kwargs (Any) – 任意额外的代理参数。

返回值

具有指定代理类型agent的AgentExecutor。

返回类型

AgentExecutor

示例


from langchain_cohere import ChatCohere, create_sql_agent from langchain_community.utilities import SQLDatabase

db = SQLDatabase.from_uri(“sqlite:///Chinook.db”) llm = ChatCohere(model=”command-r-plus”, temperature=0) agent_executor = create_sql_agent(llm, db=db, verbose=True) resp = agent_executor.run(“Show me the first 5 rows of the ‘Album’ table.”) print(resp.get(“output”))

使用create_sql_agent的示例