Mengelola percakapan AI

Pengantar Amazon Bedrock

Nikhil Rangarajan

Data Scientist

Manajemen status percakapan di Bedrock

  • Pengelolaan percakapan: penting untuk interaksi AI yang alami dan koheren
  • Konteks percakapan: mencakup riwayat dan metadata
  • Model Claude dapat mempertimbangkan konteks

Ilustrasi menampilkan lingkaran dengan satu elemen percakapan masing-masing: pesan, riwayat, dan metadata.

Pengantar Amazon Bedrock

Menerapkan manajemen percakapan

  • Kelas ConversationManager menangani fungsi inti percakapan
  • Riwayat pesan menyimpan pesan pengguna dan asisten beserta perannya
  • Pendekatan terstruktur memastikan skalabilitas dan keterpeliharaan
class ConversationManager:

def __init__(self): self.bedrock = boto3.client('bedrock-runtime')
self.conversation_history = [] self.max_tokens = 8000
def add_message(self, role, content): self.conversation_history .append({"role": role,
"content": content
})
Pengantar Amazon Bedrock

Menggunakan ConversationManager dalam praktik

  • Tambahkan pesan baru ke log percakapan
  • Pastikan masukan pengguna tercatat
  • Bantu model mempertahankan konteks

 

conversation_manager = ConversationManager()
conversation_manager.add_message("user", "What's the weather like?")
Pengantar Amazon Bedrock

Menggunakan ConversationManager dalam praktik

  • Format sebagai pesan
  • Batasi jumlah teks yang dikirim
  • Kirim percakapan terformat ke model
# Send the latest context to the model
conversation_history = conversation_manager.conversation_history
messages = "\n\n".join(
    f"{msg['role']}: {msg['content']}" 
    for msg in conversation_history[-2:]) # Only most recent exchanges


# Send the full message to the model response = conversation_manager.bedrock.invoke_model( modelId="amazon.nova-micro-v1:0", body=messages)
Pengantar Amazon Bedrock

Ayo berlatih!

Pengantar Amazon Bedrock

Preparing Video For Download...