KI-Unterhaltungen managen

Einführung in Amazon Bedrock

Nikhil Rangarajan

Data Scientist

Zustandsmanagement von Unterhaltungen in Bedrock

  • Gesprächsmanagement: wichtig für natürliche, stimmige KI-Interaktionen
  • Kontext: umfasst Verlauf und Metadaten
  • Claude-Modelle berücksichtigen Kontext

Eine Grafik mit Kreisen für je ein Element der Unterhaltung: Nachricht, Verlauf und Metadaten.

Einführung in Amazon Bedrock

Gesprächsmanagement implementieren

  • Klasse ConversationManager übernimmt Kernfunktionen
  • Nachrichtenverlauf speichert User- und Assistant-Nachrichten mit Rollen
  • Strukturierter Ansatz sorgt für Skalierbarkeit und Wartbarkeit
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
})
Einführung in Amazon Bedrock

ConversationManager in der Praxis

  • Neue Nachrichten im Log speichern
  • Eingaben der Nutzerin/des Nutzers protokollieren
  • Dem Modell helfen, Kontext zu halten

 

conversation_manager = ConversationManager()
conversation_manager.add_message("user", "What's the weather like?")
Einführung in Amazon Bedrock

ConversationManager in der Praxis

  • Als Nachricht formatieren
  • Gesendeten Text begrenzen
  • Formatierte Unterhaltung ans Modell senden
# 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)
Einführung in Amazon Bedrock

Lass uns üben!

Einführung in Amazon Bedrock

Preparing Video For Download...