Skip to content

Block 06: Chat & Conversational AI für Finance & Risk

📋 Block-Überblick

  • Thema: Konversationsfähige KI-Systeme für Finanz- und Risikodokumente
  • Zeitbedarf: 45-60 Minuten
  • Schwierigkeitsgrad: Fortgeschritten
  • Aufbauend auf: Block 04 (Retrieval) & Block 05 (Q&A)

🎯 Lernziele

Nach diesem Block können Sie: - Den Unterschied zwischen einfachen Q&A-Systemen und Chatbots verstehen - Conversational Memory-Konzepte für Finance-Anwendungen implementieren - Chat-Interfaces für komplexe Finanz- und Risikofragen erstellen - Die Vorteile von kontextuellem Dialog bei der Dokumentenanalyse nutzen

📚 Theorieteil

Conversational AI erweitert die bisherigen Retrieval-Q&A-Systeme um die Fähigkeit, natürliche Dialoge zu führen. Der entscheidende Unterschied liegt in der Memory-Funktion: Das System kann sich an vorherige Fragen und Antworten erinnern und diese in den Kontext neuer Fragen einbeziehen.

In Finance und Risk Management ist dies besonders wertvoll, da Analysen oft iterativ erfolgen: "Wie hoch ist unser Kreditrisiko?" → "Welche Branchen sind am stärksten betroffen?" → "Wie können wir das Risiko reduzieren?"

Das ConversationalRetrievalChain-System von LangChain kombiniert die Stärken des Retrieval-Systems mit fortgeschrittener Gesprächsführung und ermöglicht so eine natürlichere Interaktion mit Ihren Unternehmensdokumenten.

🛠 Aufgaben & Übungen

Aufgabe 1: Chat-System Setup

Implementieren Sie ein grundlegendes Chat-System für Finanzdokumente:

from langchain.memory import ConversationBufferMemory
from langchain.chains import ConversationalRetrievalChain

# Memory für Gesprächskontext
memory = ConversationBufferMemory(
    memory_key="chat_history",
    return_messages=True
)

# Conversational Chain erstellen
qa = ConversationalRetrievalChain.from_llm(
    llm,
    retriever=vectordb.as_retriever(),
    memory=memory
)

Download: 📓 06_chat.ipynb - Vollständiges Notebook mit Setup und Beispielen

Aufgabe 2: Memory-Strategien testen

Experimentieren Sie mit verschiedenen Memory-Typen: - ConversationBufferMemory (vollständiger Verlauf) - ConversationSummaryMemory (zusammengefasster Verlauf) - ConversationBufferWindowMemory (begrenzte Anzahl Nachrichten)

📊 Benötigte Daten & Assets

Starter-Code & Notebooks

Beispieldokumente

🖼 Key Visuals & Diagramme

Abbildung 1: Wie Conversational AI den Kontext zwischen Fragen beibehält

Abbildung 2: Memory-Architektur in Conversational Systems

Abbildung 3: Beispiel eines Finance-Chat-Interfaces

⚙️ Setup & Konfiguration

Erforderliche Pakete

pip install langchain openai chromadb panel
pip install pypdf python-dotenv

Download: 📋 requirements.txt - Vollständige Abhängigkeitsliste

Umgebungsvariablen

Erstellen Sie eine .env-Datei mit:

OPENAI_API_KEY=ihr_api_key_hier
LANGCHAIN_API_KEY=optional_für_langsmith

Template: 🔧 .env.example

Erste Schritte

  1. OpenAI API-Key konfigurieren
  2. Jupyter Notebook starten
  3. 06_chat.ipynb öffnen und durcharbeiten
  4. Mit eigenen PDF-Dokumenten experimentieren

Anleitung: Setup-Anweisungen (siehe Aufgaben unten)

🚨 Hinweise & Troubleshooting

Häufige Probleme

Problem: Chat verliert Kontext nach wenigen Nachrichten - Lösung: Memory-Typ anpassen (ConversationBufferWindowMemory statt ConversationBufferMemory) - Tipp: Token-Limits von OpenAI beachten

Problem: Sehr langsame Antworten bei langen Gesprächen - Lösung: ConversationSummaryMemory verwenden oder Memory regelmäßig leeren - Code-Beispiel: memory.clear() oder memory.prune()

Problem: Chatbot antwortet nicht auf Basis der Dokumente - Lösung: Retriever-Parameter überprüfen (k-Wert, Similarity-Threshold) - Debug-Tipp: return_source_documents=True für Transparenz nutzen

API-Key Management

  • Verwenden Sie separate API-Keys für Entwicklung und Produktion
  • Beachten Sie Rate-Limits bei OpenAI (besonders bei GPT-4)
  • Implementieren Sie Error-Handling für API-Ausfälle

Performance-Optimierung

  • Nutzen Sie lokale Embeddings (HuggingFace) für bessere Performance
  • Implementieren Sie Caching für häufige Fragen
  • Experimentieren Sie mit verschiedenen Chunk-Größen für Ihre Dokumente

💡 Tipp: Testen Sie Ihr Chat-System mit typischen Finance-Dialogverläufen, bevor Sie es produktiv einsetzen. Beispiel-Dialoge finden Sie in den Übungsmaterialien.