create_prompt() — langchain Function Reference
Architecture documentation for the create_prompt() function in base.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 2fef2a4a_7604_ff34_36d8_f37a8a5d4c24["create_prompt()"] 5a1abcb7_8fb7_225b_061e_00eff67795db["StructuredChatAgent"] 2fef2a4a_7604_ff34_36d8_f37a8a5d4c24 -->|defined in| 5a1abcb7_8fb7_225b_061e_00eff67795db 8bb74a99_0c88_ed39_398b_2f6f455b302d["from_llm_and_tools()"] 8bb74a99_0c88_ed39_398b_2f6f455b302d -->|calls| 2fef2a4a_7604_ff34_36d8_f37a8a5d4c24 style 2fef2a4a_7604_ff34_36d8_f37a8a5d4c24 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/langchain/langchain_classic/agents/structured_chat/base.py lines 93–119
def create_prompt(
cls,
tools: Sequence[BaseTool],
prefix: str = PREFIX,
suffix: str = SUFFIX,
human_message_template: str = HUMAN_MESSAGE_TEMPLATE,
format_instructions: str = FORMAT_INSTRUCTIONS,
input_variables: list[str] | None = None,
memory_prompts: list[BasePromptTemplate] | None = None,
) -> BasePromptTemplate:
tool_strings = []
for tool in tools:
args_schema = re.sub("}", "}}", re.sub("{", "{{", str(tool.args)))
tool_strings.append(f"{tool.name}: {tool.description}, args: {args_schema}")
formatted_tools = "\n".join(tool_strings)
tool_names = ", ".join([tool.name for tool in tools])
format_instructions = format_instructions.format(tool_names=tool_names)
template = f"{prefix}\n\n{formatted_tools}\n\n{format_instructions}\n\n{suffix}"
if input_variables is None:
input_variables = ["input", "agent_scratchpad"]
_memory_prompts = memory_prompts or []
messages = [
SystemMessagePromptTemplate.from_template(template),
*_memory_prompts,
HumanMessagePromptTemplate.from_template(human_message_template),
]
return ChatPromptTemplate(input_variables=input_variables, messages=messages) # type: ignore[arg-type]
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does create_prompt() do?
create_prompt() is a function in the langchain codebase, defined in libs/langchain/langchain_classic/agents/structured_chat/base.py.
Where is create_prompt() defined?
create_prompt() is defined in libs/langchain/langchain_classic/agents/structured_chat/base.py at line 93.
What calls create_prompt()?
create_prompt() is called by 1 function(s): from_llm_and_tools.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free