Allgemeine Einführung
Bambo ist ein neuartiges Proxy-Framework, das leichter und flexibler als herkömmliche Frameworks ist und eine breite Palette von Lastaufgaben bewältigen kann.Bambo erreicht eine effiziente Proxy-Funktionalität, indem es alle Werkzeuge im Werkzeugkatalog definiert und asynchrone benutzerdefinierte Funktionen verwendet. Die Benutzer können die Modell- und Client-Parameter, die sie aufrufen müssen, in der Datei llm_client.py definieren und dann ihre eigenen Testskripte im Ordner examples erstellen.Das Ziel von Bambo ist es, eine effiziente und flexible Proxy-Lösung für eine Vielzahl von Anwendungsszenarien bereitzustellen.
Traditionelle Agent Rahmen jede Rolle ist ein unabhängiger Agent, die Notwendigkeit für einen "Supervisor", um die Arbeit zu koordinieren, Rollenwechsel durch eine komplexe Handover-Prozess zu gehen, ist die Anzahl der LLM Anrufe relativ hoch, was zu einer schlechten Reaktionsgeschwindigkeit und Glätte.
Bambo löst dieses Problem durch Rollenspiele. Basierend auf Bambo ist ein ähnlicher Effekt von notebooklm implementiert. Der Effekt enthält kein TTS, so dass Sie bei Bedarf den entsprechenden Code in das Testskript einfügen können.
Funktionsliste
- Leichtes und flexibles Proxy-Framework
- Handhabung einer Vielzahl von Lasten
- Unterstützung für asynchrone benutzerdefinierte Funktionen
- Definieren und Aufrufen der erforderlichen Modell- und Client-Parameter
- Erstellung und Ausführung von Testskripten
- Unterstützung von Szenarien mit mehreren Charakteren
- Funktionen zur Codeausführung und -analyse
Hilfe verwenden
Ablauf der Installation
- Klon-Lagerhaus:
git clone https://github.com/LB-Young/Bambo.git cd Bambo
- Installieren Sie die Abhängigkeit:
pip install -r anforderungen.txt
- Installieren Sie PyTorch manuell (falls erforderlich):
pip3 install torch torchvision torchaudio
Einrichtung und Konfiguration
- Definieren Sie alle Werkzeuge im Werkzeugkatalog und stellen Sie sicher, dass die benutzerdefinierten Funktionen asynchron sind.
- Definieren Sie die Modell- und Client-Parameter für die erforderlichen Aufrufe in der Datei llm_client.py.
- Erstellen Sie Ihre eigenen Testskripte im Ordner examples, indem Sie die erforderlichen Rollen und Werkzeuge definieren.
- Initialisieren Sie das Bambo-Objekt und geben Sie die erforderlichen Parameter ein:
from src.bambo importieren Bambo from src.llm_client importiert Client, Modell from src.tools.code_execute importieren code_execute roles = { "finance_expert": "finance_expert", "law_expert". "computer_expert": "computer_expert", } tools = {} bambo = Bambo(client=client, bambo_role=None, roles=roles, tools=tools, agents=None, model=model) query = "Ich bin ein Gymnasiast und möchte ein Hauptfach wählen, aber ich weiß nicht, was ich wählen soll. Könnten Sie mir bitte sagen, was die Vor- und Nachteile der drei Hauptfächer Finanzen, Jura und Informatik sind?" async for item in bambo.execute(query=query). print(item, end="", flush=True)
Bambo verwenden
- Führen Sie die Bambo-Schnittstelle aus:
python Beispiele/Notizbuchlm.py
- oder den Agenten im Hintergrund laufen lassen:
nohup python examples/multi_roles.py &> multi_roles.log &
- Das interaktive Menü führt Sie durch die folgenden Optionen:
- Trainingsdatensatz erstellen/aktualisieren
- Ausbildungsmodelle
- Laufende Agenten
- Einen kompletten Arbeitsablauf ausführen
- Abbrechen
konfigurieren.
Bearbeiten Sie die Datei config.py, um sie anzupassen:
- Modellauswahl
- Training von Hyperparametern
- Proxy-Einstellungen
- Reaktionsfähige Vorlagen
- Aufgaben-Filterung
Bambo bietet eine Vielzahl von Möglichkeiten, die bearbeiteten Aufgaben zu filtern:
- Etikettierung (automatisch)
- Schwarze Liste (manuell)