Zugang aus Übersee: www.kdjingpai.com
Ctrl + D Lesezeichen für diese Seite

ReCall ist ein Open-Source-Framework, das entwickelt wurde, um Large Language Models (LLMs) für den Aufruf von Tools und die Inferenz durch Reinforcement Learning zu trainieren, ohne auf überwachte Daten angewiesen zu sein. ReCall unterstützt benutzerdefinierte Tools und eignet sich für die Entwicklung von Allzweckintelligenzen. Das Projekt basiert auf dem Qwen2.5-Modell und stellt synthetische Datensätze SynTool und MuSiQue zur Verfügung, um die Inferenz von Mehrschrittaufgaben zu unterstützen. ReCall ist eine erweiterte Version von ReSearch, die umfassender ist und sich für die Entwicklung von Werkzeugen für mehrere Szenarien eignet.

 

Funktionsliste

  • Training großer Modelle durch Verstärkungslernen ohne überwachte Daten und Unterstützung autonomer Werkzeugaufrufe.
  • Unterstützung benutzerdefinierter, beliebiger Werkzeuge, flexible Anpassung an eine Vielzahl von Aufgabenszenarien.
  • SynTool stellt synthetische Datensätze mit verschiedenen Umgebungen und komplexen mehrstufigen Aufgaben zur Verfügung.
  • Integrierte FlashRAG-Evaluierungsumgebung für die Validierung von Multi-Hop-Q&A-Aufgaben.
  • Effiziente Sandboxing- und Modellierungsdienste auf der Grundlage von FastAPI und SGLang.
  • Unterstützung für MuSiQue-Datensätze, kombiniert mit Wikipedia-Suchwerkzeugen zur Datenvorverarbeitung.
  • Detaillierte Skripte und Dokumentationen werden bereitgestellt, um benutzerdefinierte Daten und Modellschulungen zu erleichtern.

 

Hilfe verwenden

ReCall ist ein Open-Source-Projekt für Entwickler, das auf GitHub gehostet wird und den Benutzern einen schnellen Einstieg ermöglicht, indem sie Code klonen, Abhängigkeiten installieren und Beispielskripte ausführen. Im Folgenden finden Sie einen detaillierten Leitfaden, der die Installation, die wichtigsten Funktionen und den Entwicklungsprozess abdeckt, um Ihnen den Einstieg in ReCall von Grund auf zu erleichtern.

Einbauverfahren

  1. Klonen der Codebasis
    Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus, um das ReCall-Repository zu klonen:

    git clone https://github.com/Agent-RL/ReCall.git
    cd ReCall
    
  2. Installation von Abhängigkeiten
    ReCall hängt von der Python-Umgebung ab, Python 3.8 oder höher wird empfohlen. Installieren Sie die Kern-Abhängigkeiten:

    pip3 install -e .
    pip3 install flash-attn --no-build-isolation
    

    Wenn Sie ein auf FlashRAG basierendes Wikipedia-RAG-System betreiben wollen, müssen Sie die zusätzliche faiss-gpu::

    conda install -c pytorch -c nvidia faiss-gpu=1.8.0
    

    Zu den Abhängigkeiten gehören transformersundvllm==0.8.4undsglang usw., für eine vollständige Liste siehe setup.py.

  3. Download vorverarbeiteter Daten
    ReCall bietet vorverarbeitete SynTool- und MuSiQue-Datensätze für das Training und die Auswertung. Die Benutzer können sie direkt herunterladen:

    # 访问提供的下载链接(见 GitHub README)
    

    Alternativ kann der Benutzer auch data/prepare_musique_recall.py Skripte zur Anpassung der Generierung von MuSiQue-Daten, kombiniert mit Wikipedia-Suchwerkzeugen.

  4. Starten des Modelldienstes
    ReCall verwendet SGLang für die Modellierung von Diensten. Beispiel für den Start eines Dienstes:

    python3 -m sglang.launch_server \
    --served-model-name {trained/model/name} \
    --model-path {trained/model/path} \
    --tp 2 \
    --context-length 8192 \
    --enable-metrics \
    --dtype bfloat16 \
    --host 0.0.0.0 \
    --port 80 \
    --trust-remote-code \
    --disable-overlap \
    --disable-radix-cache
    

    Benutzer austauschbar {trained/model/name} im Gesang antworten {trained/model/path} für Ihren eigenen Modellnamen und Pfad.

Hauptfunktionen

Die Kernfunktion von ReCall ist das Trainieren großer Modelle für die Inferenz von Werkzeuganrufen durch verstärkendes Lernen. Im Folgenden werden die wichtigsten Funktionen und der Arbeitsablauf beschrieben:

  1. Werkzeugaufruf-Inferenz
    ReCall ermöglicht es den Modellen, Werkzeuge wie Suche, Rechner oder benutzerdefinierte Werkzeuge selbständig auszuwählen und zu verwenden. Kern-Klassen ReCall Verantwortlich für die Koordination der Modellerstellung und der Werkzeugausführung. Die Benutzer können sich auf die scripts/inference/re_call_use_case.py Beispielskripte, um zu sehen, wie man das Tool aufruft, um eine Aufgabe zu erledigen. Beispiel:

    • Geben Sie eine komplexe Frage ein (z. B. ein Multi-Hop-Quiz).
    • Das Modell wählt das geeignete Werkzeug (z. B. die Wikipedia-Suche) durch Verstärkungslernen aus.
    • Gibt die Ergebnisse der strukturierten Argumentation zurück.
      Der Benutzer lädt einfach das trainierte Modell, ruft die ReCall Klassenschnittstelle, geben Sie einfach die Frage und die Werkzeugkonfiguration ein.
  2. Erzeugung synthetischer Datensätze
    ReCall stellt SynTool-Datensätze zur Verfügung, um die Erzeugung verschiedener Umwelt- und Mehrschritt-Aufgabendaten zu unterstützen. Benutzer können Folgendes ausführen data/prepare_musique_recall.py Skripte, die benutzerdefinierte Datensätze erzeugen. Beispiel:

    python data/prepare_musique_recall.py
    

    Das Skript generiert Trainingsdaten auf der Grundlage von benutzerdefinierten Tools (z. B. Wikipedia-Suche) für komplexe Inferenzaufgaben. Die generierten Trainingsdaten können direkt für das Modelltraining verwendet werden.

  3. Bewertung von Multi-hop-Quiz
    ReCall verwendet FlashRAG als Evaluierungsumgebung für Multi-Hop-Quizze. Benutzer können Evaluierungsdatensätze herunterladen und Tests durchführen:

    # 下载 FlashRAG 评估数据(见 GitHub 说明)
    

    Die Evaluierungsergebnisse bestätigen die Leistung des Modells bei mehrstufigen Inferenzaufgaben und eignen sich zum Testen der Werkzeugaufrufe.

  4. Entwicklung kundenspezifischer Werkzeuge
    Der Benutzer kann jedes beliebige Werkzeug definieren, um die Funktionalität von ReCall zu erweitern. Fügen Sie zum Beispiel einen Taschenrechner hinzu:

    • Definieren Sie die Werkzeugschnittstelle im Code, um die Eingabe- und Ausgabeformate festzulegen.
    • Integrieren Sie Werkzeugkonfigurationen in ReCall Im Unterricht.
    • Führen Sie Trainings- oder Inferenzskripte aus, um die Wirksamkeit neuer Tools zu testen.
      Siehe GitHub für Dokumentation und Beispielcode.

Featured Function Bedienung

ReCall bietet Tool-Call-Inferenz durch Reinforcement Learning, ohne dass überwachte Daten benötigt werden. Hier sehen Sie, wie die vorgestellten Funktionen verwendet werden:

  • Intensives LerntrainingReCall Use verl Framework für Reinforcement Learning Training. Benutzer können Trainingsparameter konfigurieren und Trainingsskripte ausführen:
    # 示例训练命令(具体参数见 GitHub 文档)
    python train.py --config {config_file}
    

    Beim Trainingsprozess werden die SynTool- und MuSiQue-Datensätze verwendet, um die Werkzeugauswahl und die Schlussfolgerungsmöglichkeiten des Modells zu optimieren.

  • Flexibles InstrumentariumBenutzer können mehrere Werkzeuge (z. B. Suche, Datenbankabfrage usw.) über eine Konfigurationsdatei definieren, und das Modell wählt und kombiniert die Werkzeuge automatisch entsprechend der Aufgabe. Arbeitsschritte:
    1. Bearbeiten Sie die Werkzeugkonfigurationsdatei (z.B. im YAML-Format).
    2. Laden auf ReCall Klasse.
    3. Führen Sie das Inferenzskript aus und beobachten Sie, wie das Modell das Werkzeug dynamisch aufruft.
  • Effiziente ModellierungsdiensteDer SGLang-basierte Modelldienst unterstützt hochgradig konkurrierende Schlussfolgerungen und ist für Produktionsumgebungen geeignet. Benutzer können Modelle über API aufrufen, um Echtzeitaufgaben zu bearbeiten.

caveat

  • Sicherstellung der Hardware-Unterstützung (z. B. GPU für faiss-gpu im Gesang antworten flash-attn).
  • Prüfen Sie regelmäßig Ihr GitHub-Repository auf Updates, um die neuesten Funktionen und Korrekturen zu erhalten.
  • Training und Argumentation erfordern viel Speicherplatz, und es wird empfohlen, sich darauf vorzubereiten.

Anwendungsszenario

  1. Entwicklung eines Multi-Hop-Quiz-Systems
    ReCall kann zur Entwicklung von Frage- und Antwortsystemen verwendet werden, die ein mehrstufiges Denken erfordern. Zum Beispiel zur Beantwortung der Frage "Was war die Hauptstadt des Landes, in dem eine historische Figur im 19. Jahrhundert geboren wurde? Das Modell kann die Wikipedia-Suche nutzen, um Schritt für Schritt die genaue Antwort zu finden. Es eignet sich für die Entwicklung von Bildungs- und Wissens-Q&A-Plattformen.
  2. Automatisierte Aufgabenbearbeitung
    ReCall kann komplexe Aufgaben in Verbindung mit einer Vielzahl von Werkzeugen (z. B. Kalkulatoren, Datenbankabfragen) automatisieren. So können Unternehmen mit ReCall beispielsweise Intelligenz entwickeln, um Verkaufsdaten automatisch zu analysieren und Berichte zu erstellen.
  3. KI-Forschung und Experimentieren
    Forscher können die synthetischen Datensätze und das Reinforcement Learning Framework von ReCall nutzen, um die Leistung großer Modelle bei Toolaufrufen und komplexen Inferenzaufgaben zu untersuchen, die für die akademische Forschung und die Entwicklung von Algorithmen geeignet sind.

 

QA

  1. Welche Tools werden von ReCall unterstützt?
    ReCall unterstützt benutzerdefinierte Tools wie Suchen, Rechner, Datenbankabfragen usw. Sie können neue Tools über Konfigurationsdateien hinzufügen, siehe GitHub für Beispiele.
  2. Wie kann ich mit ReCall beginnen?
    Klonen Sie das GitHub-Repository, installieren Sie die Abhängigkeiten, laden Sie die vorverarbeiteten Daten herunter oder generieren Sie benutzerdefinierte Daten, und führen Sie das Beispielskript aus. Siehe die Hilfe für Details.
  3. Was ist der Unterschied zwischen ReCall und ReSearch?
    ReCall ist eine aktualisierte Version von ReSearch, die mehr Werkzeuge und komplexere Inferenzaufgaben unterstützt und als direkter Ersatz für ReSearch verwendet werden kann.
  4. Wie viel Speicherplatz wird benötigt?
    Schulungen und Auswertungen erfordern viel Speicherplatz, z. B. können die FlashRAG-Auswertungsdaten mehrere Dutzend Gigabyte umfassen, daher wird empfohlen, die Hardwarekapazität im Voraus zu prüfen.
0Lesezeichen
0Gelobt

Empfohlen

Sie können keine AI-Tools finden? Versuchen Sie es hier!

Geben Sie einfach das Schlüsselwort Barrierefreiheit Bing-SucheDer Bereich KI-Tools auf dieser Website bietet eine schnelle und einfache Möglichkeit, alle KI-Tools auf dieser Website zu finden.

Posteingang

Kontakt

zurück zum Anfang

de_DEDeutsch