Zacznij terazZacznij za darmo

Zbuduj narzędzie Wikipedia

Administracja szkoły jest bardzo zadowolona z twojej pracy! Chciałaby jeszcze bardziej rozbudować chatbota, dodając dostęp do zewnętrznych zasobów. Proponujesz wyposażenie go w dostęp do Wikipedii. Administracja zgadza się na rozszerzenie zlecenia, więc postanawiasz zbudować narzędzie dla chatbota z wykorzystaniem API Wikipedii.

Następujące moduły zostały już zaimportowane: WikipediaQueryRun, WikipediaAPIWrapper

To ćwiczenie jest częścią kursu

Projektowanie systemów agentowych z LangChain

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz obiekt api_wrapper, inicjalizując WikipediaAPIWrapper() z parametrem top_k_results=1, aby pobierać tylko najlepszy wynik z Wikipedii.
  • Utwórz narzędzie WikipediaQueryRun() o nazwie wikipedia_tool, przekazując api_wrapper jako argument wejściowy, a następnie zapisz je na liście o nazwie tools.
  • Powiąż listę tools z modelem llm, przekazując ją do metody .bind_tools().
  • Aby skierować chatbota do odpowiedzi z użyciem narzędzia, przekaż zawartość klucza "messages" ze słownika state do metody .invoke() i zastosuj ją na obiekcie llm_with_tools.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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": [____.____(____["____"])]}
Edytuj i uruchom kod