"relevant information, only if necessary"        ))prompt = OpenAIFunctionsAgent.create_prompt(        system_message=system_message,        extra_prompt_messages=[MessagesPlaceholder(variable_name=memory_key)]    )The Agent‚ÄãWe will use the OpenAIFunctionsAgentagent = OpenAIFunctionsAgent(llm=llm, tools=tools, prompt=prompt)The Agent Executor‚ÄãImportantly, we pass in return_intermediate_steps=True since we are recording that with our memory objectfrom langchain.agents import AgentExecutoragent_executor = AgentExecutor(agent=agent, tools=tools, memory=memory, verbose=True,                                   return_intermediate_steps=True)result = agent_executor({"input": "hi, im bob"})            > Entering new AgentExecutor chain...    Hello Bob! How can I assist you today?        > Finished chain.result = agent_executor({"input": "whats my name"})            > Entering new AgentExecutor chain...    Your name is Bob.        > Finished chain.PreviousAnalyze a single long documentNextText splitting by headerThe RetrieverRetriever ToolAgent ConstructorCreating from componentsThe MemoryThe Prompt TemplateThe AgentThe Agent ExecutorCommunityDiscordTwitterGitHubPythonJS/TSMoreHomepageBlogCopyright ¬© 2023 LangChain, Inc.
This is an agent specifically optimized for doing retrieval when necessary and also holding a conversation.
This is an agent specifically optimized for doing retrieval when necessary and also holding a conversation. ->: "relevant information, only if necessary"        ))prompt = OpenAIFunctionsAgent.create_prompt(        system_message=system_message,        extra_prompt_messages=[MessagesPlaceholder(variable_name=memory_key)]    )The Agent‚ÄãWe will use the OpenAIFunctionsAgentagent = OpenAIFunctionsAgent(llm=llm, tools=tools, prompt=prompt)The Agent Executor‚ÄãImportantly, we pass in return_intermediate_steps=True since we are recording that with our memory objectfrom langchain.agents import AgentExecutoragent_executor = AgentExecutor(agent=agent, tools=tools, memory=memory, verbose=True,                                   return_intermediate_steps=True)result = agent_executor({"input": "hi, im bob"})            > Entering new AgentExecutor chain...    Hello Bob! How can I assist you today?        > Finished chain.result = agent_executor({"input": "whats my name"})            > Entering new AgentExecutor chain...    Your name is Bob.        > Finished chain.PreviousAnalyze a single long documentNextText splitting by headerThe RetrieverRetriever ToolAgent ConstructorCreating from componentsThe MemoryThe Prompt TemplateThe AgentThe Agent ExecutorCommunityDiscordTwitterGitHubPythonJS/TSMoreHomepageBlogCopyright ¬© 2023 LangChain, Inc.