Skip to main content

使用搜索进行自问

本教程展示了使用搜索进行自问的链式操作。

from langchain import OpenAI, SerpAPIWrapper  
from langchain.agents import initialize_agent, Tool
from langchain.agents import AgentType

llm = OpenAI(temperature=0)
search = SerpAPIWrapper()
tools = [
Tool(
name="Intermediate Answer",
func=search.run,
description="在需要使用搜索进行提问时很有用",
)
]

self_ask_with_search = initialize_agent(
tools, llm, agent=AgentType.SELF_ASK_WITH_SEARCH, verbose=True
)

self_ask_with_search.run(
"谁是现任男子美国公开赛冠军的家乡?"
)

API 参考:

> 进入新的 AgentExecutor 链...
是的。
追问:谁是现任男子美国公开赛冠军?
中间答案:Carlos Alcaraz Garfia
追问:Carlos Alcaraz Garfia 来自哪里?
中间答案:西班牙的埃尔帕尔马尔
所以最终答案是:西班牙的埃尔帕尔马尔

> 链结束。
'西班牙的埃尔帕尔马尔'