Sage ist ein Open-Source-Multi-Agenten-System-Framework, das sich auf die Zerlegung komplexer Aufgaben in überschaubare Teilaufgaben konzentriert, die von mehreren intelligenten Agenten kollaborativ erledigt werden können. Es basiert auf Python und unterstützt DeepSeek-V3, GPT-4, Claude-3.5 und andere Sprachmodelle, die sich für Anwendungen auf Unternehmensebene eignen.Sage bietet einen Deep-Thinking-Modus und einen schnellen Ausführungsmodus, um sich an unterschiedliche Aufgabenanforderungen anzupassen. Benutzer können die Echtzeit-Überwachung und die dynamische Workflow-Verwaltung über eine interaktive Web-Schnittstelle oder die Befehlszeile nutzen. Das Projekt wird auf GitHub unter der MIT-Lizenz gehostet, hat eine aktive Community und wird kontinuierlich auf Version 0.9.2 aktualisiert.
Funktionsliste
- Aufschlüsselung der AufgabenAutomatisches Aufteilen komplexer Aufgaben in Teilaufgaben und Verfolgen von Abhängigkeiten.
- Zusammenarbeit mit der AgenturMehrere Agenten (analysieren, planen, ausführen, beobachten, zusammenfassen) arbeiten nahtlos zusammen.
- WerkzeugsystemUnterstützung von Plug-in-Tools zur automatischen Erkennung und Integration externer APIs.
- Modus der doppelten AusführungBietet einen tiefen Denkmodus (detaillierte Analyse) und einen schnellen Ausführungsmodus (effiziente Ausführung).
- Webschnittstelle: Basierend auf Reagieren Sie und FastAPI mit einer modernen Schnittstelle, die die Visualisierung von Aufgaben in Echtzeit unterstützt.
- Token-ÜberwachungVerfolgen Sie die Modellnutzung in Echtzeit, um Kosten und Leistung zu optimieren.
- Maßgeschneiderte ArbeitsabläufeErstellung und Verwaltung komplexer Arbeitsabläufe mit visuellen Editoren.
- FehlerbehandlungEingebauter Wiederholungsmechanismus und Fehlerbehebung zur Gewährleistung der Systemstabilität.
Hilfe verwenden
Einbauverfahren
Sage ist einfach zu installieren und unterstützt Windows, macOS und Linux. Hier sind die Schritte zur Installation von Sage basierend auf dem GitHub-Repository:
- Klon-Lager
Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus, um den Quellcode von Sage zu erhalten:git clone https://github.com/ZHangZHengEric/Sage.git cd Sage
- Installation von Kernabhängigkeiten
Installieren Sie die Python-Pakete, die für das Sage Core Framework erforderlich sind:pip install -r requirements.txt
- Stellen Sie sicher, dass die Python-Version 3.10 oder höher ist.
- Zu den wichtigsten Abhängigkeiten gehören
openai
undpydantic
undpython-dotenv
usw.
- Installieren von Webinterface-Abhängigkeiten (optional)
Installieren Sie zusätzliche Abhängigkeiten, wenn Sie FastAPI und die Weboberfläche von React verwenden möchten:pip install -r examples/fastapi_react_demo/requirements.txt
- auch durch
fastapi
unduvicorn
undwebsockets
Ich warte auf das Paket.
- auch durch
- Umgebungsvariablen konfigurieren
einrichten..env
Datei und fügen API-Schlüssel und andere Konfigurationen hinzu. Beispiel:echo "OPENAI_API_KEY=your_openai_key" >> .env echo "SAGE_DEBUG=true" >> .env
- verweisbar
mcp_setting_example.json
konfigurieren. MCP Server-Verbindung.
- verweisbar
- Lauf Salbei
- Kommandozeilenmodus: Führen Sie ein Python-Skript direkt aus, um z.B. Sage-Funktionen aufzurufen:
python sagents/main.py
- WebschnittstelleStarten Sie den FastAPI-Server:
cd examples/fastapi_react_demo uvicorn main:app --host 0.0.0.0 --port 8080
Interviews
http://localhost:8080
Zeigen Sie die Webschnittstelle an.
- Kommandozeilenmodus: Führen Sie ein Python-Skript direkt aus, um z.B. Sage-Funktionen aufzurufen:
- Überprüfen der Installation
Nach der Ausführung sollte die Webschnittstelle die interaktive Aufgabenverwaltungsseite anzeigen. Im Befehlszeilenmodus werden Informationen zur Sage-Version ausgegeben (derzeit 0.9.2).
Verwendung der Hauptfunktionen
Sage vereinfacht komplexe Aufgaben durch die Zusammenarbeit mehrerer Agenten und eine moderne Benutzeroberfläche. Hier erfahren Sie, wie Sie die wichtigsten Funktionen nutzen können:
- Aufgabenzerlegung und Zusammenarbeit von Agenten
Sage unterteilt die Aufgaben in Teilaufgaben und weist sie verschiedenen Bearbeitern zu. Benutzer geben Aufgaben wie "Analysiere Markttrends und erstelle einen Bericht" über die Webschnittstelle oder die Befehlszeile ein. Schritt für Schritt:- Webschnittstelle: in
http://localhost:8080
Geben Sie die Aufgabenbeschreibung ein und klicken Sie auf "Absenden". Die Schnittstelle zeigt den Prozess der Aufgabenzerlegung an, einschließlich der Phasen der Analyse, Planung und Ausführung. - Befehlszeile (Informatik): Führen Sie das Beispielskript aus:
from sagents import AgentController controller = AgentController() controller.run_task("分析市场趋势并生成报告")
- Einschließlich der Agenten:
- Analytische MittelVerstehen Sie den Kontext der Aufgabe und liefern Sie kontextbezogene Analysen.
- einen Wirkstoff zersetzenAufteilung der Aufgabe in Teilaufgaben, um einen Abhängigkeitsgraph zu erstellen.
- PlanungsbeauftragterAuswahl der geeigneten Werkzeuge und Reihenfolge der Ausführung.
- ausführender AgentRuft ein Werkzeug oder eine API auf, um Teilaufgaben auszuführen.
- BeobachtungsagentenÜberwachung des Fortschritts und Kontrolle der Qualität der Ausführung.
- Zusammenfassung AgentIntegrieren Sie die Ergebnisse, um eine strukturierte Ausgabe zu erzeugen.
- Webschnittstelle: in
- Maßgeschneiderte Arbeitsabläufe
Sage bietet einen visuellen Workflow-Editor, mit dem Benutzer Aufgabenprozesse entwerfen können:- Rufen Sie die Weboberfläche auf und klicken Sie auf Workflow Editor.
- Verwenden Sie die Drag-and-Drop-Schnittstelle, um Knoten hinzuzufügen (z. B. "Daten analysieren" oder "Diagramm generieren").
- Richten Sie Abhängigkeiten zwischen Knoten ein und speichern Sie sie als Vorlage.
- Beispiel: Erstellen Sie einen Arbeitsablauf, der drei Schritte enthält: "Datensammlung → Analyse → Berichterstellung", die automatisch vom System ausgeführt werden.
- Benutzer der Kommandozeile können YAML-Dateien bearbeiten, um Arbeitsabläufe zu definieren:
workflow: - step: 数据收集 action: call_api params: {url: "https://api.example.com/data"} - step: 数据分析 action: analyze_data depends_on: 数据收集
- Werkzeugsystem
Sage unterstützt Plug-in-Tools, die automatisch lokale oder entfernte Tools erkennen. Zum Beispiel die Verbindung zu einem MCP-Server:- konfigurieren.
mcp_setting.json
::{ "mcp_server": "http://example.com:20040", "api_key": "your_api_key" }
- In der Weboberfläche wird das Werkzeug automatisch im Bildschirm "Werkzeugverwaltung" angezeigt. Klicken Sie auf Aktivieren oder Deaktivieren.
- Benutzer der Befehlszeile können das Tool über ein Skript aufrufen:
from sagents.tools import ToolManager manager = ToolManager() manager.use_tool("excel_parser", file="data.xlsx")
- konfigurieren.
- Modell des tiefen Denkens und Modell der schnellen Umsetzung
- ReflexionsmodusGeeignet für komplexe Aufgaben, die alle Agenten aktivieren und detaillierte Analysen und Zusammenfassungen erstellen.
- Web-Interface: Wählen Sie den "Denkmodus", geben Sie eine Aufgabe ein und sehen Sie sich die komplette Ausführung an.
- Befehlszeile: set
mode=deep
::controller.run_task("分析市场趋势", mode="deep")
- Schneller UmsetzungsmodusÜberspringen Sie die Analyse und führen Sie die Aufgabe direkt aus, geeignet für einfache Anforderungen.
- Webinterface: Wählen Sie den "Schnellmodus", geben Sie die Aufgabe ein und erhalten Sie sofort das Ergebnis.
- Befehlszeile: set
mode=rapid
::controller.run_task("生成图表", mode="rapid")
- ReflexionsmodusGeeignet für komplexe Aufgaben, die alle Agenten aktivieren und detaillierte Analysen und Zusammenfassungen erstellen.
- Token-Überwachung
Sage liefert Echtzeit-Statistiken zur Token-Nutzung, um die Kosten zu optimieren:- Webschnittstelle: Sie können die Verwendung von Eingabe-, Ausgabe- und Cache-Token auf dem Bildschirm Monitor anzeigen.
- Befehlszeile: Aktivieren Sie den Debug-Modus, um Protokolle anzuzeigen:
export SAGE_DEBUG=true python sagents/main.py
- Das System komprimiert Nachrichten automatisch, um den Tokenverbrauch für 30%-70% zu reduzieren.
- Echtzeit-Unterbrechung
Der Benutzer kann die Aufgabe jederzeit unterbrechen:- Webinterface: Klicken Sie auf die Schaltfläche "Stop", das System wird in 1-2 Sekunden pausieren und die Zwischenergebnisse speichern.
- Befehlszeile: Drücken Sie
Ctrl+C
Der Aufgabenstatus wird im Arbeitsbereich gespeichert.
Featured Function Bedienung
- Interaktion mit der Webschnittstelle::
- Interviews
http://localhost:8080
oder Online-Demohttp://36.133.44.114:20040
. - Verwenden Sie "Gedankenblasen", um den Denkprozess des Agenten zu sehen, mit Unterstützung für das Erweitern und Zusammenklappen.
- Konfigurieren Sie die Regelpräferenzen (
/rules
), um KI-Verhaltensweisen wie Sprachstile oder Codespezifikationen anzupassen.
- Interviews
- Dokumentenbetrachter::
- Klicken Sie in der Weboberfläche auf einen Dateilink, um den Inhalt direkt in der Seitenleiste anzuzeigen, ohne ihn herunterzuladen.
- Unterstützung für Markdown, Code und andere Formate, optimiert für die Anzeige mathematischer Formeln.
- MCP-Server-Integration::
- konfigurieren.
mcp_setting.json
Verbindung zu entfernten Servern mit Unterstützung für das SSE-Protokoll und API-Schlüsselauthentifizierung. - Beispiel: Ausführen des MCP-Servers und automatische Erkennung des Tools:
python mcp_servers/main.py --config mcp_setting.json
- konfigurieren.
Anwendungsszenario
- Automatisierte Berichterstellung
Sage löst die Aufgabe der "Erstellung von Marktanalyseberichten", indem es Daten sammelt, Trends analysiert, Diagramme erstellt und strukturierte Berichte für die Analyse von Unternehmensdaten produziert. - Unterstützung bei der Code-Entwicklung
Entwickler verwenden Sage, um die Codestruktur zu planen, Codeschnipsel zu generieren, Logik zu validieren und benutzerdefinierte Codestile für Softwareentwicklungsteams zu unterstützen. - Unterstützung der akademischen Forschung
Forscher verwenden Deep Thought-Muster, um komplexe Probleme zu analysieren, externe APIs aufzurufen, um Daten zu erhalten, und Visualisierungen zu erstellen, die für wissenschaftliche Arbeiten geeignet sind. - Optimierung der Inhaltserstellung
Inhaltsersteller erstellen Artikelentwürfe, Entwürfe und endgültige Inhalte über benutzerdefinierte Workflows mit Unterstützung für mehrsprachige Ausgaben für Marketingteams.
QA
- Welche Sprachmodelle werden von Sage unterstützt?
Sage unterstützt Modelle wie DeepSeek-V3, Qwen-3, GPT-4.1, Claude-3.5 Sonnet usw. und ist kompatibel mit APIs von OpenAI, Anthropic, Google AI und anderen Anbietern. - Wie erhalte ich Zugriff auf die Webschnittstelle?
Zugang nach der Installationhttp://localhost:8080
oder nutzen Sie die Online-Demohttp://36.133.44.114:20040
. - Wie unterscheidet sich Sage von anderen Automatisierungs-Frameworks?
Sage ist spezialisiert auf Multi-Agenten-Zusammenarbeit und Aufgabenzerlegung mit Unterstützung für visuelle Workflow-Bearbeitung und Echtzeit-Überwachung, geeignet für die Automatisierung komplexer Aufgaben. - Wie kann ich Code beisteuern?
Interviewshttps://github.com/ZHangZHengEric/Sage
Um einen Issue oder Pull Request einzureichen, lesen Sie bittedocs/CONTRIBUTING.md
.