Bygg ett Wikipedia-verktyg
Skolans administration är mycket nöjd med ditt arbete! De vill göra chattbotten ännu kraftfullare genom att integrera externa resurser. Du föreslår att utrusta chattbotten med tillgång till Wikipedia. Administrationen godkänner att utöka ditt uppdrag, och du bestämmer dig för att bygga ett verktyg för chattbotten med hjälp av Wikipedia API.
Följande moduler har redan importerats för dig: WikipediaQueryRun, WikipediaAPIWrapper
Den här övningen är en del av kursen
Designa agentbaserade system med LangChain
Övningsinstruktioner
- Skapa en
api_wrappersom initierarWikipediaAPIWrapper()medtop_k_results=1för att hämta enbart det översta Wikipedia-resultatet. - Skapa ett
WikipediaQueryRun()-verktyg med namnetwikipedia_tool, skicka inapi_wrappersom argument och spara det i en lista kalladtools. - Bind
tools-listan tillllmgenom att skicka den till.bind_tools()-metoden. - För att dirigera chattbotten att svara med verktyget, skicka innehållet i
"messages"frånstatetill.invoke()-metoden och tillämpa det pållm_with_tools.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Initialize Wikipedia API wrapper to fetch top one result
api_wrapper = ____(top_k_results=1)
# Create a Wikipedia query tool using the API wrapper
wikipedia_tool = ____(api_wrapper=____)
tools = [____]
# Bind the Wikipedia tool to the language model
llm_with_tools = ____.____(____)
# Modify chatbot function to respond with Wikipedia
def chatbot(state: State):
return {"messages": [____.____(____["____"])]}