MulaiMulai sekarang secara gratis

Ajukan pertanyaan tentang riwayat percakapan

Dengan agen ReAct dasar di LangChain, Anda dapat mengajukan pertanyaan lanjutan dengan mempertahankan riwayat percakapan agen. Karena LLM memiliki akses ke semua pesan sebelumnya, Anda kini dapat mengajukan pertanyaan baru, dan agen dapat menggunakan konteks pesan secara penuh untuk merespons.

Sekarang Anda akan mengajukan pertanyaan lanjutan tentang sisi-sisi segitiga yang berbeda.

Agar dapat menggunakan kapabilitas HumanMessage dan AIMessage, modul berikut telah diimpor untuk Anda: HumanMessage, AIMessage.

Latihan ini adalah bagian dari kursus

Merancang Sistem Agentic dengan LangChain

Lihat Kursus

Petunjuk latihan

  • Tetapkan pertanyaan bahasa natural yang diberikan ke new_query.
  • Panggil objek app, dengan meneruskan semua pesan, termasuk message_history dan new_query.
  • Gunakan list comprehension untuk mengekstrak pesan dari response["messages"] yang berlabel HumanMessage atau AIMessage.
  • Teruskan kueri baru sebagai masukan dan cetak pesan yang diekstraksi dengan meneruskan kelas pesan ke "agent_output".

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

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 ____]
})
Edit dan Jalankan Kode