ПочатиПочніть безкоштовно

Ставте запитання про історію розмови

З базовим агентом ReAct у LangChain ви можете ставити додаткові запитання, зберігаючи історію розмови агента. Оскільки LLM має доступ до всіх попередніх повідомлень, ви можете ставити нові запитання, і агент використає весь контекст повідомлень для відповіді.

Тепер ви поставите додаткове запитання про сторони іншого трикутника.

Щоб мати змогу використовувати можливості HumanMessage і AIMessage, для вас уже імпортовано такі модулі: HumanMessage, AIMessage.

Ця вправа є частиною курсу

Проєктування агентних систем з LangChain

Переглянути курс

Інструкції до вправи

  • Присвойте задане питання природною мовою змінній new_query.
  • Викличте об'єкт app, передавши всі повідомлення, включно з message_history і new_query.
  • Використайте спискове включення, щоб витягти повідомлення з response["messages"] з мітками HumanMessage або AIMessage.
  • Передайте новий запит як вхідні дані та виведіть витягнуті повідомлення, передавши класи повідомлень у "agent_output".

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

message_history = response["messages"]
____ = "What about one with sides 12 and 14?"

# Invoke the app with the full message history
response = app.____({"messages": ____ + [("human", ____)]})

# Extract the human and AI messages from the result
filtered_messages = [msg for msg in ____["____"] if isinstance(msg, (____, ____)) and msg.content.strip()]

# Pass the new query as input and print the final outputs
print({
    "user_input": ____,
    "agent_output": [f"{msg.____.____}: {msg.content}" for msg in ____]
})
Редагувати та запускати код