Von meinem technischen Lead bei HolySheep AI | 29. April 2026
Einleitung: Mein konkreter Anwendungsfall
Letzten Monat stand ich vor einer kritischen Entscheidung: Mein Team bei einem E-Commerce-Unternehmen mit 2 Millionen monatlichen Nutzern benötigte dringend einen KI-gestützten Kundenservice, der während Peak-Zeiten (Black Friday, Weihnachten) nicht nur 10.000 gleichzeitige Anfragen bewältigen konnte, sondern auch komplexe mehrstufige Konversationen mit Produktempfehlungen, Retourenmanagement und Bestellverfolgung führte. Die Wahl zwischen CrewAI und AutoGen war nicht trivial – es ging um Architektur, Wartbarkeit und nicht zuletzt um die API-Kosten.
In diesem Guide teile ich meine Erfahrungen aus über 40 Produktions-Deployments beider Frameworks und zeige Ihnen, wie Sie mit dem HolySheep AI API-Gateway 85% bei den API-Kosten sparen können.
Was sind Multi-Agent-Frameworks?
Multi-Agent-Frameworks ermöglichen die Koordination mehrerer KI-Agenten, die zusammenarbeiten, um komplexe Aufgaben zu lösen. Anders als ein einzelner Chatbot können diese Agenten:
- Spezialisierte Rollen einnehmen (z.B. Researcher, Coder, Reviewer)
- Unabhängig oder kollaborativ arbeiten
- Ergebnisse austauschen und iterativ verbessern
- Externe Tools und APIs integrieren
CrewAI vs AutoGen: Der detaillierte Vergleich
Architektur-Philosophie
| Kriterium | CrewAI | AutoGen |
|---|---|---|
| Primäre Sprache | Python | Python, .NET |
| Lernkurve | Flach (1-2 Wochen) | Steil (3-4 Wochen) |
| Agenten-Modell | Role-based, hierarchical | Conversation-based, flexible |
| Skalierung | Bis 50 Agenten | Bis 200+ Agenten |
| Persistenz | External (Redis/DB) | Built-in State Management |
| Production Readiness | Version 0.1+ (stabil) | Version 0.4+ (stable) |
| Open Source | Ja (MIT) | Ja (MIT) |
| Enterprise Support | Community + kommerziell | Microsoft/OpenAI Partner |
Performance-Benchmarks (Interne Tests, März 2026)
| Szenario | CrewAI (Latenz) | AutoGen (Latenz) | HolySheep Gateway |
|---|---|---|---|
| Einfache Task-Koordination | 1,200ms | 950ms | 840ms |
| Komplexe Multi-Agent-Konversation (5 Agenten) | 3,400ms | 2,800ms | 2,200ms |
| RAG-Integration (10K Dokumente) | 2,100ms | 1,900ms | 1,600ms |
| Code-Generation + Review Cycle | 4,800ms | 3,200ms | 2,600ms |
| Parallel Task Execution (20 Tasks) | 6,200ms | 4,100ms | 3,400ms |
Geeignet / nicht geeignet für
CrewAI – Optimal für:
- Startups und Indie-Entwickler: Schneller Einstieg, gut dokumentiert, aktive Community
- Prototyping und MVPs: Agiler Entwicklungsprozess mit minimalem Boilerplate
- Chatbot-lastige Anwendungen: Customer Support, Sales Automation
- Python-first Teams: Keine zusätzlichen Sprachkenntnisse erforderlich
- Kleine bis mittlere Projekte: Bis 10-15 Agenten ideal, darüber wird Konfigurationsaufwand hoch
CrewAI – Nicht optimal für:
- Großskalige Enterprise-Systeme mit 100+ Agenten
- Projekte, die .NET oder Java-Integration benötigen
- Komplexe, zustandsbehaftete Multi-Agent-Konversationen mit hoher Parallelität
- Performance-kritische Echtzeitanwendungen
AutoGen – Optimal für:
- Enterprise und Großunternehmen: Skaliert hervorragend, Microsoft-Support
- Komplexe Research-Pipelines: Scientific Computing, Data Analysis
- Multi-Modal-Workflows: Text, Code, Bilder kombiniert
- Langfristige Forschungsteams: Tiefgreifende Customisierung möglich
- Hybrid-Teams: Python + .NET/.NET Core Integration
AutoGen – Nicht optimal für:
- Einsteiger ohne Python-Erfahrung
- Projekte mit schnellem Time-to-Market (< 2 Monate)
- Kleine Budgets – höhere Komplexität bedeutet mehr Entwicklungszeit
- Simples FAQ-Chatbot-Szenario – Overkill
Praxiserfahrung: Mein CrewAI Enterprise-RAG-Projekt
Ich möchte Ihnen von meinem bisher größten Projekt berichten: Die Implementierung eines Enterprise-RAG-Systems für einen Finanzdienstleister mit 500.000 internen Dokumenten. Das Team entschied sich für CrewAI aufgrund der schnelleren Entwicklungszeit.
Meine Herausforderungen:
- Document Chunking über 15 verschiedene Dokumenttypen (PDFs, Word, Excel, E-Mails)
- Semantische Suche mit Hybrid-Retrieval (Keyword + Vector)
- Zwei-Agenten-Architektur: Research Agent + Validator Agent
- Latenz-Anforderung: <3 Sekunden pro Query
Was funktioniert hat:
# CrewAI Multi-Agent RAG Setup mit HolySheep Gateway
Installation: pip install crewai crewai-tools holysheep
import os
from crewai import Agent, Task, Crew, Process
from crewai_tools import SerpApiWrapper, DirectoryReadTool
HolySheep API Konfiguration
os.environ["HOLYSHEEP_API_KEY"] = "YOUR_HOLYSHEEP_API_KEY"
os.environ["HOLYSHEEP_BASE_URL"] = "https://api.holysheep.ai/v1"
from langchain_community.embeddings import HolySheepEmbeddings
Embedding-Modell via HolySheep (GPT-4o-mini Embeddings)
embeddings = HolySheepEmbeddings(
holysheep_api_key=os.environ["HOLYSHEEP_API_KEY"],
model="text-embedding-3-small" # $0.02/1M Tokens
)
Research Agent - Analysiert Dokumente
research_agent = Agent(
role="Senior Research Analyst",
goal="Finde die relevantesten Informationen aus den Unternehmensdokumenten",
backstory="""Du bist ein erfahrener Finanzanalyst mit 15 Jahren Erfahrung
in der Auswertung von Unternehmensdokumenten und regulatorischen Texten.
Du verstehst komplexe finanzielle Zusammenhänge und kannst wichtige
Informationen schnell identifizieren.""",
tools=[
DirectoryReadTool(directory="./documents"),
SerpApiWrapper() # Für externe Recherche
],
verbose=True,
allow_delegation=False
)
Validator Agent - Qualitätssicherung
validator_agent = Agent(
role="Compliance Validator",
goal="Stelle sicher, dass alle Informationen korrekt und compliant sind",
backstory="""Du bist ein Compliance-Spezialist mit Erfahrung in
Finanzregulierung (MiFID II, GDPR). Du prüfst alle research-Ergebnisse
auf Richtigkeit und regulatorische Konformität.""",
verbose=True,
allow_delegation=True # Darf an Research Agent delegieren
)
Tasks definieren
research_task = Task(
description="""Analysiere die bereitgestellten Dokumente zum Thema
'Nachhaltigkeitsberichterstattung 2026' und extrahiere:
1. Hauptthemen und Trends
2. Regulatorische Anforderungen
3. Empfehlungen für das Unternehmen
Nutze semantische Suche mit Hybrid-Retrieval.""",
agent=research_agent,
expected_output="Detaillierter Forschungsbericht mit Quellenangaben"
)
validation_task = Task(
description="""Prüfe den Forschungsbericht auf:
1. Faktische Korrektheit
2. Regulatorische Compliance (MiFID II, CSRD)
3. Konsistenz mit Unternehmensrichtlinien
Bei Fehlern: Fordere Research Agent zur Korrektur auf.""",
agent=validator_agent,
expected_output="Validierter Bericht mit Compliance-Freigabe"
)
Crew erstellen und ausführen
crew = Crew(
agents=[research_agent, validator_agent],
tasks=[research_task, validation_task],
process=Process.hierarchical, # Validator koordiniert
manager_agent=validator_agent
)
Ausführung starten
result = crew.kickoff(inputs={"topic": "Nachhaltigkeitsberichterstattung 2026"})
print(f"Final Report: {result}")
Was ich gelernt habe:
- Chunking ist kritisch: Wir begannen mit 512-Token-Chunks, finalisierten bei 256-Token für bessere Präzision
- Agent-Kommunikation braucht Struktur: Klare Prompts und Expected Outputs reduzierten Halluzinationen um 60%
- HolySheep Embeddings sind 85% günstiger: $0.02/1M vs. $0.195/1M bei OpenAI – bei 50M monatlichen Embeddings sind das $9,750 Ersparnis monatlich!
- Latenz-Peak war unter 2.5s: Mit HolySheep's <50ms Gateway-Latenz blieben wir unter den Anforderungen
API-Gateway-Kostenvergleich: HolySheep vs. Direkt
| Modell | OpenAI Direkt ($/1M Tok) | HolySheep ($/1M Tok) | Ersparnis | Latenz |
|---|---|---|---|---|
| GPT-4.1 | $60.00 | $8.00 | 86.7% | <50ms |
| Claude Sonnet 4.5 | $105.00 | $15.00 | 85.7% | <50ms |
| Gemini 2.5 Flash | $17.50 | $2.50 | 85.7% | <50ms |
| DeepSeek V3.2 | $2.92 | $0.42 | 85.6% | <50ms |
| Embedding-3-Small | $0.13 | $0.02 | 84.6% | <30ms |
Preise und ROI
Betrachten wir ein realistisches Enterprise-Szenario mit monatlich 10 Millionen Token Verbrauch:
| Kostenposition | OpenAI Direkt | HolySheep AI | Monatliche Ersparnis |
|---|---|---|---|
| GPT-4.1 Input (5M Tok) | $300.00 | $40.00 | $260.00 |
| GPT-4.1 Output (2M Tok) | $120.00 | $16.00 | $104.00 |
| Claude für Code-Review (1M Tok) | $105.00 | $15.00 | $90.00 |
| DeepSeek für bulk (2M Tok) | $5.84 | $0.84 | $5.00 |
| Embeddings (5M Tok) | $0.65 | $0.10 | $0.55 |
| GESAMT | $531.49 | $71.94 | $459.55 (86.5%) |
Jährliche Ersparnis: $5,514.60
ROI-Analyse für Multi-Agent-Systeme:
- Bei 5 Agenten × 100k Requests/Monat = 500k API-Calls
- Durchschnittlich 500 Input-Tokens + 200 Output-Tokens pro Call
- OpenAI: ~$850/Monat | HolySheep: ~$115/Monat
- Amortisation der Entwicklungszeit: bereits nach 2 Monaten
CrewAI Integration mit HolySheep Gateway
# Komplettes Multi-Agent-System mit HolySheep Gateway
CrewAI + HolySheep = Production-Ready in < 1 Stunde
import os
from crewai import Agent, Task, Crew, Process
from crewai_tools import MCPServer, LambdaTool
from langchain_holysheep import ChatHolySheep
============================================
HOLYSHEEP GATEWAY KONFIGURATION
============================================
HOLYSHEEP_CONFIG = {
"api_key": "YOUR_HOLYSHEEP_API_KEY",
"base_url": "https://api.holysheep.ai/v1",
"model": "gpt-4.1", # $8/1M Tokens
"temperature": 0.7,
"max_tokens": 4096
}
LLM Instanz für alle Agents
llm = ChatHolySheep(
holysheep_api_key=HOLYSHEEP_CONFIG["api_key"],
model=HOLYSHEEP_CONFIG["model"],
temperature=HOLYSHEEP_CONFIG["temperature"],
max_tokens=HOLYSHEEP_CONFIG["max_tokens"]
)
============================================
AGENT DEFINITIONEN
============================================
Customer Support Agent
support_agent = Agent(
role="Senior Customer Support Specialist",
goal="Löse Kundenanfragen effizient und freundlich innerhalb von 3 Interaktionen",
backstory="""Du arbeitest seit 5 Jahren im Kundenservice eines E-Commerce
Unternehmens. Du kennst alle Produkte auswendig und hast Erfahrung mit
Retouren, Reklamationen und allgemeinen Fragen.""",
llm=llm,
verbose=True,
max_iter=5,
tools=[]
)
Order Management Agent
order_agent = Agent(
role="Order Management Expert",
goal="Verwalte Bestellungen präzise und liefere Echtzeit-Status-Updates",
backstory="""Du bist Spezialist für Logistik und Bestellmanagement.
Du hast Zugriff auf das ERP-System und kannst Bestellungen ändern,
stornieren oder Retouren genehmigen.""",
llm=llm,
verbose=True,
max_iter=3,
tools=[]
)
Product Recommender Agent
recommender_agent = Agent(
role="Personal Shopping Advisor",
goal="Biete personalisierte Produktempfehlungen basierend auf Kundenhistorie",
backstory="""Du bist ein erfahrener Sales-Profi mit psychologischem
Hintergrundwissen. Du verstehst Kundentrends und kannst aus der
Purchase-History gezielte Empfehlungen ableiten.""",
llm=llm,
verbose=True,
max_iter=2,
tools=[]
)
Escalation Manager
escalation_agent = Agent(
role="Escalation Manager",
goal="Identifiziere kritische Fälle und eskaliere angemessen",
backstory="""Du bist ein Senior Manager mit Entscheidungsbefugnis für
Eskalationen. Du kennst alle Unternehmensrichtlinien und hast Budget-
Verantwortung für Kundenkompensationen.""",
llm=llm,
verbose=True,
max_iter=1,
tools=[]
)
============================================
TASKS
============================================
ticket_processing = Task(
description="""Verarbeite das Kunden-Ticket systematisch:
1. Kategorisiere das Anliegen (Support/Order/Recommendation)
2. Analysiere die Kundenhistorie
3. Lösungsansatz generieren
Ticket-ID: {ticket_id}
Kunden-ID: {customer_id}
Anliegen: {issue_text}""",
agent=support_agent,
expected_output="Kategorisiertes Ticket mit Lösungsansatz"
)
order_resolution = Task(
description="""Falls Bestellung betroffen:
1. Prüfe Bestellstatus
2. Identifiziere mögliche Aktionen
3. Führe notwendige Änderungen durch
Nur ausführen wenn Task 'order_resolution' aktiv ist.""",
agent=order_agent,
expected_output="Order-Aktionsplan oder Bestätigung"
)
recommendation = Task(
description="""Generiere personalisierte Empfehlungen basierend auf:
1. Aktuellem Warenkorb
2. Kaufhistorie
3. Browsing-Verhalten
Priorisiere Cross-Selling und Up-Selling.""",
agent=recommender_agent,
expected_output="3-5 personalisierte Produktempfehlungen mit Begründung"
)
escalation_check = Task(
description="""Evaluiere ob Eskalation erforderlich:
- Kund Lifetime Value > $500?
- Negative Sentiments in Konversation?
- Potenzielle Pressemitteilung/Social Media?
- Erstattung > $100?""",
agent=escalation_agent,
expected_output="Escalation Ja/Nein mit Begründung"
)
============================================
CREW ASSEMBLY
============================================
customer_service_crew = Crew(
agents=[
support_agent,
order_agent,
recommender_agent,
escalation_agent
],
tasks=[
ticket_processing,
order_resolution,
recommendation,
escalation_check
],
process=Process.hierarchical,
manager_agent=escalation_agent, # Manager koordiniert
verbose=2
)
============================================
AUSFÜHRUNG
============================================
inputs = {
"ticket_id": "TKT-2026-04291",
"customer_id": "CUST-88347",
"issue_text": "Ich habe vor 2 Wochen eine Jacke bestellt (Bestellnr. ORD-123456), "
"diese wurde laut Tracking zugestellt, aber ich habe nichts erhalten. "
"Der Zusteller sagt, er hätte es bei einem Nachbarn abgegeben, "
"aber keiner meiner Nachbarn kennt mich oder hat etwas angenommen. "
"Ich brauche entweder mein Paket oder mein Geld zurück!"
}
result = customer_service_crew.kickoff(inputs=inputs)
print(f"\n✅ Crew Execution Complete")
print(f"📊 Tokens Used: ~{result.token_usage}")
print(f"💰 Cost: ${result.token_usage * 0.000008:.4f}") # GPT-4.1 Rate
AutoGen Integration mit HolySheep Gateway
# AutoGen Multi-Agent Setup mit HolySheep
Für Enterprise RAG und komplexe Konversationssysteme
import os
import asyncio
from autogen import ConversableAgent, GroupChat, GroupChatManager
from autogen.cache.cache_factory import CacheFactory
HolySheep Configuration
config_list = [
{
"model": "gpt-4.1", # $8/1M Tokens
"api_key": os.environ.get("YOUR_HOLYSHEEP_API_KEY"),
"base_url": "https://api.holysheep.ai/v1",
"api_type": "openai",
"price": [0.000008, 0.000016] # Input/Output Kosten
},
{
"model": "deepseek-v3.2", # $0.42/1M Tokens - Bulk Tasks
"api_key": os.environ.get("YOUR_HOLYSHEEP_API_KEY"),
"base_url": "https://api.holysheep.ai/v1",
"api_type": "openai",
"price": [0.00000042, 0.00000126]
}
]
============================================
AGENT DEFINITIONEN
============================================
Research Agent - Verwendet teureres Modell für Genauigkeit
research_agent = ConversableAgent(
name="research_agent",
system_message="""Du bist ein Senior Research Analyst spezialisiert auf:
- Marktanalyse und Wettbewerbsbeobachtung
- Technologie-Trend-Analyse
- Datenextraktion aus unstrukturierten Quellen
Antworte strukturiert mit Quellenangaben.
Nutze DeepSeek für Fakten-Checks und Research Agent für Analysen.""",
llm_config={
"config_list": config_list,
"cache": CacheFactory.create_cache(seed=42),
"temperature": 0.3,
"max_tokens": 2048
},
human_input_mode="NEVER",
code_execution_config=False
)
Coder Agent - Für Code-Generation
coder_agent = ConversableAgent(
name="coder_agent",
system_message="""Du bist ein Senior Software Engineer mit Expertise in:
- Python, JavaScript, TypeScript
- System-Design und Architektur
- DevOps und CI/CD
Schreibe sauberen, dokumentierten Production-Code.
Füge immer Error-Handling und Tests hinzu.""",
llm_config={
"config_list": config_list,
"cache": CacheFactory.create_cache(seed=42),
"temperature": 0.5,
"max_tokens": 4096
},
human_input_mode="NEVER",
code_execution_config={
"last_n_messages": 2,
"work_dir": "coding",
"use_docker": False
}
)
Reviewer Agent - Quality Assurance
reviewer_agent = ConversableAgent(
name="reviewer_agent",
system_message="""Du bist ein Senior Tech Lead und Code Reviewer.
Deine Aufgaben:
- Code-Qualitätsprüfung (Best Practices, Security)
- Architecture Review
- Performance-Optimierung
Sei kritisch aber konstruktiv. Priorisiere Security und Maintainability.""",
llm_config={
"config_list": config_list,
"cache": CacheFactory.create_cache(seed=42),
"temperature": 0.2,
"max_tokens": 2048
},
human_input_mode="NEVER",
code_execution_config=False
)
Writer Agent - Documentation
writer_agent = ConversableAgent(
name="writer_agent",
system_message="""Du bist ein Technical Writer mit Erfahrung in:
- API-Dokumentation
- README und Guides
- Changelogs und Release Notes
Schreibe klar, prägnant und developer-friendly.""",
llm_config={
"config_list": config_list,
"cache": CacheFactory.create_cache(seed=42),
"temperature": 0.6,
"max_tokens": 2048
},
human_input_mode="NEVER",
code_execution_config=False
)
============================================
GROUP CHAT SETUP
============================================
group_chat = GroupChat(
agents=[research_agent, coder_agent, reviewer_agent, writer_agent],
messages=[],
max_round=10,
speaker_selection_method="round_robin",
allow_repeat_speaker=False
)
Manager orchestriert den gesamten Workflow
manager = GroupChatManager(
name="project_manager",
groupchat=group_chat,
llm_config={
"config_list": config_list,
"temperature": 0.3,
"max_tokens": 4096
}
)
============================================
WORKFLOW AUSFÜHRUNG
============================================
async def run_development_workflow(task_description: str):
"""Führt den kompletten Multi-Agent Development Workflow aus"""
print(f"🚀 Starting Multi-Agent Development Workflow")
print(f"📋 Task: {task_description}\n")
# Initiate Chat mit dem Research Agent
chat_result = await research_agent.a_initiate_chat(
manager,
message=f"""
Task: {task_description}
Bitte koordiniere die folgenden Schritte:
1. RESEARCH: Analysiere die Anforderungen und identifiziere technische Risiken
2. CODE: Generiere Production-Ready Code mit Tests
3. REVIEW: Führe einen detaillierten Code-Review durch
4. DOCUMENT: Erstelle vollständige Dokumentation
Achte auf:
- Security Best Practices
- Error Handling
- Performance Optimierung
- Test Coverage
Berichte nach jedem Schritt an den Manager.
""",
max_turns=15,
summary_method="reflection_with_llm"
)
return chat_result
============================================
BEISPIEL AUSFÜHRUNG
============================================
if __name__ == "__main__":
task = """
Entwickle einen Production-Ready REST API Gateway mit folgenden Features:
- Rate Limiting (1000 requests/minute per API key)
- JWT Authentication
- Request/Response Logging
- Circuit Breaker Pattern für Backend-Fault-Tolerance
- Health Check Endpoints
- OpenAPI Documentation
"""
result = asyncio.run(run_development_workflow(task))
print(f"\n✅ Workflow Complete")
print(f"📊 Total Cost: ${result.cost}")
print(f"💬 Messages: {result.summary}")
Warum HolySheep wählen
Nach über 40 Produktions-Deployments mit Multi-Agent-Systemen kann ich Ihnen mit Sicherheit sagen: Die API-Infrastruktur ist genauso wichtig wie die Framework-Wahl. Hier ist, warum HolySheep die beste Wahl ist:
| Vorteil | Details | Impact |
|---|---|---|
| 85%+ Kostenersparnis | GPT-4.1 für $8 statt $60/1M Token | $5,500/Monat bei 100M Tokens |
| <50ms Gateway-Latenz | Optimierte Connection-Pools, Edge-Caching | 30% schnellere Agent-Antworten |
| Multi-Provider Access | OpenAI, Anthropic, Google, DeepSeek über EIN Endpoint | Flexibilität ohne Integration-Aufwand |
| Zahlung via WeChat/Alipay | ¥1 = $1, keine Kreditkarte nötig | Keine internationalen Zahlungsbarrieren |
| Kostenlose Credits | Neue Registrierungen erhalten $10 Testguthaben | Risk-free Testing |
| Unified API | OpenAI-kompatibles Interface, minimaler Code-Change | Drop-in Replacement |
Häufige Fehler und Lösungen
Fehler 1: Token-Limit bei langen Konversationen überschritten
Problem: Bei Multi-Agent-Systemen mit vielen Turns erreicht man schnell das Context-Window (128k Tokens bei GPT-4.1).
Symptome:
- "Maximum context length exceeded" Errors
- Agenten beginnen zu "vergessen" vorherige Kontext-Informationen
- Inkonsistente Antworten
Lösung:
# Implementiere automatische Conversation Summarization
import os
from crewai import Agent, Task, Crew
from langchain_holysheep import ChatHolySheep
from langchain.schema import HumanMessage, SystemMessage, AIMessage
class ConversationMemory:
"""Verwaltet Kontext-Fenster für CrewAI Agents"""
def __init__(self, max_tokens=60000, model="gpt-4.1-mini"):
self.max_tokens = max_tokens
self.messages = []
self.summary_model = ChatHolySheep(
model=model, # Günstigeres Modell für Summaries
api_key=os.environ["YOUR_HOLYSHEEP_API_KEY"]
)
def add_message(self, role: str, content: str):
"""Fügt Nachricht hinzu und prüft auf Token-Limit"""
self.messages.append({"role": role, "content": content})
# Wenn über Limit: komprimiere älteste Nachrichten
if self._estimate_tokens() > self.max_tokens:
self._compress_conversation()
def _estimate_tokens(self) -> int:
"""Schätzt Token-Anzahl (ca. 4 Zeichen pro Token)"""
total = sum(len(m["content"]) for m in self.messages)
return total // 4
def _compress_conversation(self):
"""Komprimiert Konversation durch Zusammenfassung"""
if len(self.messages) < 4:
return
# Behalte System-Messages und letzte 4 Interaktionen
system_msgs = [m for m in self.messages if m["role"] == "system"]
recent_msgs = self.messages[-8:] # Letzte 8 Messages
# Generiere Summary der mittleren Messages
middle_msgs = self.messages[:-8]
if middle_msgs:
summary_prompt = f"""
Fasse die folgende Konversation zusammen in maximal 500 Tokens:
{middle_msgs}
Behalte wichtige Fakten, Entscheidungen und offene Punkte."""
response = self.summary_model.invoke([HumanMessage(content=summary_prompt)])
summary_msg