mirror of
https://github.com/hwchase17/langchain
synced 2024-11-10 01:10:59 +00:00
[Commutiy]: Prompts Fixed for ZERO_SHOT_REACT React Agent Type in create_sql_agent
function (#23693)
- **Description:** The correct Prompts for ZERO_SHOT_REACT were not being used in the `create_sql_agent` function. They were not using the specific `SQL_PREFIX` and `SQL_SUFFIX` prompts if client does not provide any prompts. This is fixed. - **Issue:** #23585 --------- Co-authored-by: ccurme <chester.curme@gmail.com>
This commit is contained in:
parent
0f6737cbfe
commit
5ade0187d0
@ -25,6 +25,7 @@ from langchain_core.prompts.chat import (
|
||||
from langchain_community.agent_toolkits.sql.prompt import (
|
||||
SQL_FUNCTIONS_SUFFIX,
|
||||
SQL_PREFIX,
|
||||
SQL_SUFFIX,
|
||||
)
|
||||
from langchain_community.agent_toolkits.sql.toolkit import SQLDatabaseToolkit
|
||||
from langchain_community.tools.sql_database.tool import (
|
||||
@ -140,8 +141,9 @@ def create_sql_agent(
|
||||
toolkit = toolkit or SQLDatabaseToolkit(llm=llm, db=db) # type: ignore[arg-type]
|
||||
agent_type = agent_type or AgentType.ZERO_SHOT_REACT_DESCRIPTION
|
||||
tools = toolkit.get_tools() + list(extra_tools)
|
||||
if prefix is None:
|
||||
prefix = SQL_PREFIX
|
||||
if prompt is None:
|
||||
prefix = prefix or SQL_PREFIX
|
||||
prefix = prefix.format(dialect=toolkit.dialect, top_k=top_k)
|
||||
else:
|
||||
if "top_k" in prompt.input_variables:
|
||||
@ -170,10 +172,10 @@ def create_sql_agent(
|
||||
)
|
||||
template = "\n\n".join(
|
||||
[
|
||||
react_prompt.PREFIX,
|
||||
prefix,
|
||||
"{tools}",
|
||||
format_instructions,
|
||||
react_prompt.SUFFIX,
|
||||
suffix or SQL_SUFFIX,
|
||||
]
|
||||
)
|
||||
prompt = PromptTemplate.from_template(template)
|
||||
|
Loading…
Reference in New Issue
Block a user