\n\n\n\n Wie man ein Multi-Agent-System mit Weaviate erstellt (Schritt für Schritt) - AgntBox Wie man ein Multi-Agent-System mit Weaviate erstellt (Schritt für Schritt) - AgntBox \n

Wie man ein Multi-Agent-System mit Weaviate erstellt (Schritt für Schritt)

📖 6 min read1,081 wordsUpdated Mar 30, 2026

Erstellen eines Multi-Agenten-Systems mit Weaviate

Wir bauen ein Multi-Agenten-System mit Weaviate, da es sich um eine beeindruckende Datenbank handelt, die für die Verarbeitung von Vektorsuchen und semantischen Abfragen optimiert ist. Mit seiner Fähigkeit, Daten effizient zu speichern und abzurufen, wird es zu einem entscheidenden Bestandteil jeder modernen Anwendung. Wie erstellt Weaviate also genau ein Multi-Agenten-System? Lassen Sie uns ins Detail gehen.

Voraussetzungen

  • Go 1.18+
  • Docker 20.10+
  • Python 3.9+
  • Weaviate v1.19.0
  • Grundkenntnisse über REST-APIs

Schritt 1: Weaviate mit Docker einrichten

Um zu beginnen, richten wir Weaviate mit Docker ein. Ich weiß, einige von euch denken vielleicht: „Docker schon wieder? Wirklich?“ Aber es ist immer noch der einfachste Weg, um alles zum Laufen zu bringen.


docker run -p 8080:8080 \
 -e WEAVIATE_HOST=localhost \
 -e AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED=true \
 --name weaviate \
 semitechnologies/weaviate:1.19.0

Warum das tun? Das Ausführen von Weaviate in einem Container isoliert es und ermöglicht es Ihnen, fast sofort damit zu arbeiten, ohne sich um lokale Umgebungsprobleme kümmern zu müssen. Vergessen Sie jedoch nicht, die Containerprotokolle zu überwachen! Sie können dies mit:


docker logs -f weaviate

Wenn Sie eine Fehlermeldung erhalten, die besagt: „Kann Container nicht starten“, stellen Sie sicher, dass Sie Ihre Docker-Installation und -Konfiguration überprüft haben. Ich habe einmal Stunden damit verbracht, herauszufinden, warum ein Container nicht gestartet werden konnte, nur um festzustellen, dass Docker nicht lief.

Schritt 2: Schema für das Multi-Agenten-System konfigurieren

Als nächstes erstellen wir ein Schema für unser Multi-Agenten-Setup. Denken Sie an ein Schema als den Plan für Ihre Datenstruktur.


import requests

url = "http://localhost:8080/v1/schema"
data = {
 "classes": [{
 "class": "Agent",
 "properties": [{
 "name": "name",
 "dataType": ["string"]
 }, {
 "name": "role",
 "dataType": ["string"]
 }]
 }]
}

response = requests.post(url, json=data)

if response.status_code == 200:
 print("Schema erfolgreich erstellt.")
else:
 print("Fehler:", response.json())

Dies initialisiert eine `Agent`-Klasse mit Eigenschaften für `name` und `role`. Die Herausforderung besteht darin, wie die Datentypen konstruiert werden. Falsche Bezeichnungen der Datentypen führen zu Fehlern, die einen denken lassen, der Code sei defekt. Achten Sie auf die API-Antwort.

Schritt 3: Agenten in Weaviate einfügen

Jetzt, wo wir unser Schema eingerichtet haben, ist es Zeit, einige Agenten hinzuzufügen. Hier geschieht die Magie.


agents = [
 {"name": "Agent A", "role": "Researcher"},
 {"name": "Agent B", "role": "Analyst"},
]

url = "http://localhost:8080/v1/objects"

for agent in agents:
 response = requests.post(url, json={"class": "Agent", "properties": agent})
 if response.status_code == 201:
 print(f"{agent['name']} hinzugefügt.")
 else:
 print("Fehler:", response.json())

Verwenden Sie dieses Snippet, um Agenten im Batch einzufügen. Es kann sein, dass Sie auf eine Schwierigkeit mit doppelten Einträgen oder falschen Eigenschaftsnamen stoßen. Achten Sie darauf! Ich habe versehentlich Duplikate verursacht, die meine Ergebnisse verfälschten. Niemand möchte mit Agent A zweimal arbeiten!

Schritt 4: Abfragen von Agenten

Die Agenten in der Datenbank zu haben, ist schön und gut, aber wie erhalten wir Informationen zurück? Hier kommt die Abfrage ins Spiel.


query = """
{
 Get {
 Agent {
 name
 role
 }
 }
}
"""

response = requests.post("http://localhost:8080/v1/graphql", json={"query": query})
if response.status_code == 200:
 data = response.json()
 for agent in data['data']['Get']['Agent']:
 print(f"Name: {agent['name']}, Rolle: {agent['role']}")
else:
 print("Fehler:", response.json())

Diese GraphQL-Abfrage ruft alle Agenten ab. Wenn die Abfrage fehlschlägt, stellen Sie sicher, dass Ihr Schema dem entspricht, was Sie abzurufen versuchen. Es ist üblich, zu vergessen, das Schema zu aktualisieren, was dazu führt, dass Abfragen nichts zurückgeben. Ich habe die Zählung verloren, wie oft ich versucht habe zu fragen, nur um festzustellen, dass ich eine andere Version des Schemas verwendet habe.

Die Fallstricke

Hier sind einige Punkte zu beachten, die die meisten Tutorials außer Acht lassen:

  • Versionsprobleme: Die Schema-Evolution von Weaviate ist nicht perfekt. Wenn Sie Ihr Schema ändern, erstellen Sie die Klassen vorsichtig neu, sonst verlieren Sie Daten.
  • Typen und Eigenschaften: Inkonsistenzen bei den Eigenschaftstypen führen zu frustrierenden Fehlern. Überprüfen Sie immer Ihr Schema und Ihre Dateneinstellungen, bevor Sie abfragen.
  • Fehlerbehandlung: Nicht alle API-Fehler sind selbsterklärend. Verwenden Sie die Debug-Ausgabe großzügig, um zu erfassen, was schiefgeht.
  • Datenformat: Stellen Sie beim Senden von Daten sicher, dass sie im richtigen Format vorliegen, insbesondere bei Datumsangaben oder geschachtelten Datentypen. Unstimmigkeiten führen dazu, dass Sie Zeit mit der Verfolgung von Sackgassen verlieren.
  • Skalierungsprobleme: Die Leistung kann bei zu vielen Agenten oder Abfragen abnehmen. Überwachen Sie Ihre Docker-Ressourcen. Ich habe einmal meinen Laptop mit einer einfachen Schleife ineffizienter Abfragen zum Stillstand gebracht!

Vollständiges Codebeispiel

Alle Schritte kombiniert, hier ist der komplette, ausführbare Code, um sicherzustellen, dass Sie ein funktionierendes Multi-Agenten-System haben.


import requests

# Schritt 1: Weaviate mit Docker einrichten
# (Führen Sie den vorherigen Docker-Befehl in Ihrer CLI aus)

# Schritt 2: Schema konfigurieren
schema_url = "http://localhost:8080/v1/schema"
schema_data = {
 "classes": [{
 "class": "Agent",
 "properties": [{
 "name": "name",
 "dataType": ["string"]
 }, {
 "name": "role",
 "dataType": ["string"]
 }]
 }]
}
requests.post(schema_url, json=schema_data)

# Schritt 3: Agenten einfügen
agents = [
 {"name": "Agent A", "role": "Researcher"},
 {"name": "Agent B", "role": "Analyst"},
]

insert_url = "http://localhost:8080/v1/objects"
for agent in agents:
 requests.post(insert_url, json={"class": "Agent", "properties": agent})

# Schritt 4: Agenten abfragen
query = """
{
 Get {
 Agent {
 name
 role
 }
 }
}
"""
response = requests.post("http://localhost:8080/v1/graphql", json={"query": query})
if response.status_code == 200:
 data = response.json()
 for agent in data['data']['Get']['Agent']:
 print(f"Name: {agent['name']}, Rolle: {agent['role']}")
else:
 print("Fehler:", response.json())

Was kommt als Nächstes

Nachdem Sie Ihr Multi-Agenten-System eingerichtet haben, ziehen Sie in Betracht, die Funktionen zu erweitern. Integrieren Sie ein Echtzeit-Nachrichtensystem zwischen den Agenten oder beginnen Sie, Aktionen zwischen Agenten mithilfe einer Orchestrierungs-Engine zu verknüpfen. Es ist lohnend zu sehen, wie die Interaktionen zum Leben erwachen.

FAQ

Wie behebe ich Probleme mit Weaviate?

Beginnen Sie damit, die Protokolle mithilfe von Docker zu überprüfen. Stellen Sie auch sicher, dass Ihre API-Endpunkte wie erwartet reagieren. Die Internetverbindung oder die Firewall-Einstellungen können manchmal die Netzwerkaufrufe stören.

Kann ich Weaviate bei einem Cloud-Anbieter ausführen?

Absolut! Weaviate kann auf AWS, GCP oder Azure mit Docker oder den offiziellen verwalteten Servicediensten bereitgestellt werden. Achten Sie nur auf Ihre Cloud-Rechnung, sonst enden Sie wie ich in Tränen!

Ist Weaviate für Produktionslasten geeignet?

Es kann, wenn es richtig eingerichtet ist, aber Sie müssen sicherstellen, dass eine angemessene Überwachung, Skalierung und Sicherung vorhanden ist. Das Testen in Ihrer Umgebung hilft, unangenehme Überraschungen zu vermeiden.

Datenquellen

Letzte Aktualisierung am 30. März 2026. Datenquellen aus offiziellen Dokumenten und Community-Benchmarks.

🕒 Published:

🧰
Written by Jake Chen

Software reviewer and AI tool expert. Independently tests and benchmarks AI products. No sponsored reviews — ever.

Learn more →
Browse Topics: AI & Automation | Comparisons | Dev Tools | Infrastructure | Security & Monitoring

Partner Projects

ClawgoAgntzenClawseoAgntapi
Scroll to Top