让LangChain代理提出澄清问题

emi*_*laz 5 langchain

我正在尝试实现一个 langchain 代理,它能够在某些信息丢失的情况下提出澄清问题。这是可能吗?一个简单的例子是

Input: "Please give me a recipe for a cake"
Agent: "Certainly. What kind of cake do you have in mind?"
Input: "A chocolate cake"
Agent: "Certainly, here is a recipe for a chocolate cake..."
Run Code Online (Sandbox Code Playgroud)

emi*_*laz 10

在文档中找到了它

from langchain.chat_models import ChatOpenAI
from langchain.llms import OpenAI
from langchain.agents import load_tools, initialize_agent
from langchain.agents import AgentType

llm = ChatOpenAI(temperature=0.0)
math_llm = OpenAI(temperature=0.0)
tools = load_tools(
    ["human", "llm-math"], 
    llm=math_llm,
)

agent_chain = initialize_agent(
    tools,
    llm,
    agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION,
    verbose=True,
)

agent_chain.run("When's my friend Eric's surname?")
Run Code Online (Sandbox Code Playgroud)

这产生

> Entering new AgentExecutor chain...
I don't know Eric's surname, so I should ask a human for guidance.
Action: Human
Action Input: "What is Eric's surname?"

What is Eric's surname?
Run Code Online (Sandbox Code Playgroud)


归档时间:

查看次数:

3110 次

最近记录:

2 年,11 月 前