AI Personal Learning
und praktische Anleitung
CyberKnife-Zeichenspiegel

ReSearch: ein Qwen2.5-7B-Modell für erweitertes Search Reasoning (experimentell)

Allgemeine Einführung

ReSearch ist ein Open-Source-Forschungstool, das vom Agent-RL-Team entwickelt wurde, um die Such- und Inferenzfähigkeiten von Large Language Models (LLMs) durch Reinforcement Learning (RL) zu verbessern. Inspiriert von Deepseek-R1-Zero und OpenAI's Deep Research, basiert ReSearch auf dem Qwen2.5-7B Modell, das von Grund auf mit GRPO (Generalised Reward Policy Optimization) trainiert wurde, was es dem Modell ermöglicht, selbstständig Suchwerkzeuge allein auf der Basis von Belohnungssignalen und ohne überwachte Daten aufzurufen. ReSearch wurde mit dem HotpotQA-Datensatz validiert und lässt sich auf Datensätze wie Bamboogle und StrategyQA verallgemeinern. ReSearch wird auf GitHub gehostet, mit vollständigem Code und experimenteller Dokumentation, und eignet sich für Forscher, um ihre Erkundungen der Kombination von RL und LLM zu reproduzieren oder zu erweitern.

ReSearch: das Qwen2.5-7B-Modell für erweitertes Search Reasoning (experimentell)-1


 

Funktionsliste

  • Erweitertes Lernen Training PipelineUnterstützung für das Training großer Modelle von Grund auf, vollständige Parameterkonfigurationen und Reward-Signaldesigns.
  • Suchwerkzeug AufrufModelle können automatisch Suchwerkzeuge auf der Grundlage von Fragen aufrufen, um die Genauigkeit komplexer Argumentationsaufgaben zu verbessern.
  • Anpassung mehrerer DatensätzeHotpotQA: Nach dem Training in HotpotQA kann es auf Datensätze wie Bamboogle, StrategyQA, etc. erweitert werden.
  • Unterstützung bei der LeistungsbewertungIntegration der FlashRAG-Umgebung zum schnellen Testen der Leistung eines Modells auf einem Entwicklungsset.
  • Open-Source-ImplementierungBereitstellung von detailliertem Code und experimentellen Konfigurationen für die einfache Reproduktion in der Forschung und für sekundäre Entwicklungen.

 

Hilfe verwenden

Ablauf der Installation

ReSearch benötigt eine GPU-Umgebung und stützt sich auf die Frameworks verl und FlashRAG. Nachfolgend finden Sie die detaillierten Installationsschritte:

1. die Vorbereitung der Umwelt

  • SystemanforderungenLinux (z. B. Ubuntu) wird empfohlen, bei Windows kann es Kompatibilitätsprobleme geben.
  • Python-VersionBenötigt Python 3.11 oder höher.
  • GPU-KonfigurationUnterstützung für NVIDIA-GPUs, Installation von CUDA 12.4 (passend zur Torch-Version).

2. das Klonen von Lagern

Geben Sie den folgenden Befehl in das Terminal ein:

git clone https://github.com/Agent-RL/ReSearch.git
cd ReSearch

3. die Installation der verl-Umgebung

ReSearch basiert auf Verl für Reinforcement Learning Training, die Installationsschritte sind wie folgt:

cd verl
pip3 install -e .
cd ...
  • abhängige Versiontorch==2.4.0+cu124, vllm==0.6.3, ray==2.10.0. Wenn es einen Konflikt gibt, installieren Sie es manuell:
    pip install torch==2.4.0+cu124 vllm==0.6.3 ray==2.10.0
    

4. die Installation der FlashRAG-Umgebung

FlashRAG dient der Bewertung und RAG Service, Installationsmethode:

git clone https://github.com/RUC-AIBox/FlashRAG.git
cd FlashRAG
pip3 install -e .
cd ... /ReSearch

5) Herunterladen von vortrainierten Modellen

Standardmäßig wird Qwen2.5-7B verwendet, heruntergeladen von Hugging Face:

git lfs install
git clone https://huggingface.co/Qwen/Qwen2.5-7B

Zeichnen Sie den Modellpfad auf und konfigurieren Sie ihn für die spätere Verwendung.

Verwendung

Starten des RAG-Dienstes

  1. Vorindizierte Daten herunterladenAbrufen des Wikipedia-Index, des Korpus und des Suchmodells aus einem FlashRAG-Dokument.
  2. Konfiguration der Dienste:: Leitartikel rag_serving/serving_config.yamlDie GPU-IDs der Suchmodelle, Indizes, Korpuspfade und verfügbaren GPU-IDs werden eingegeben.
  3. Operative Dienste::
    conda flashrag aktivieren
    python rag_serving/serving.py --config rag_serving/serving_config.yaml --num_retriever 1 --port 8000
    

    Sobald der Dienst läuft, wird Suchunterstützung angeboten.

Ausbildungsmodelle

  1. Daten vorbereitenLaden Sie den HotpotQA-Datensatz herunter und führen Sie das Vorverarbeitungsskript aus:
    python training/data_preprocess_hpqa.py
    

    Die erzeugten Trainings- und Entwicklungsdaten werden im Parkettformat gespeichert.

  2. KonfigurationsparameterModifikation training/run.shIm Folgenden finden Sie einige der Funktionen, die Sie zum Einrichten des Modellpfads, der Such-URL, des Datenpfads usw. verwenden können.
  3. Grundlagentraining::
    conda aktivieren verl
    bash training/run.sh --actor_model_path /path/to/Qwen2.5-7B --search_url http://localhost:8000 --train_data_path data/train.parquet --dev_ data_path data/dev.parquet ---save_path runs/
    
    • Einzelknoten 8 GPU-Training, mehrere Knoten erfordern Strahlentuning.

Bewertungsmodell

  1. Starten des ModelldienstesNach dem Training wird das Modell mit SGLang eingesetzt:
    python3 -m sglang.launch_server --served-model-name research --model-path runs/trained_model --tp 2 --context-length 8192 --port 80
    
  2. Operative Bewertung::
    python evaluation/run_eval.py --config_path evaluation/eval_config.yaml --method_name research --split dev --dataset_name hotpotqa
    
    • Die Ergebnisse werden gespeichert in Bewertung/Ergebnisse/Unterstützung für den Wechsel von Datensätzen (z. B. Bamboogle).

Featured Function Bedienung

  • Suchwerkzeug Aufruf::
    • Nach dem Training kann das Modell automatisch feststellen, ob das Suchwerkzeug aufgerufen werden soll oder nicht. Geben Sie zum Beispiel ein: "Wie viele Monde hat der Jupiter?
      python inference.py --model_path runs/trained_model --question "Wie viele Monde hat der Jupiter?"
      

      Beispielhafte Ausgabe:Jupiter hat 95 bekannte Monde (Stand: 2025)..

    • Prozess: Das Modell generiert eine Suchanfrage auf der Grundlage der Frage und ruft den RAG-Dienst auf, um die Informationen zu erhalten und dann über die Antwort nachzudenken.
  • Verallgemeinerung über Datensätze hinweg::
    • Testen der Modellleistung auf StrategyQA:
      python evaluation/run_eval.py --config_path evaluation/eval_config.yaml --method_name research --split dev --dataset_name strategyqa
      

      Die Ausgabe enthält den Argumentationsprozess und die Antwort, wodurch die Generalisierungsfähigkeit überprüft wird.

caveat

  • Hardware-Voraussetzung24 GB oder mehr Videospeicher für das Training, 16 GB für die Auswertung.
  • Log-ÜberwachungTensorBoard verwenden, um den Trainingsfortschritt zu sehen:
    tensorboard --logdir runs/
    
  • FehlerbehebungWenn Sie eine Fehlermeldung erhalten, überprüfen Sie die Version der Abhängigkeit oder sehen Sie auf GitHub Issues nach.

Auf diese Weise können die Benutzer die ReSearch-Experimente vollständig reproduzieren und die Kombination von Reinforcement Learning und großen Modellen erkunden.

CDN1
Darf nicht ohne Genehmigung vervielfältigt werden:Chef-KI-Austauschkreis " ReSearch: ein Qwen2.5-7B-Modell für erweitertes Search Reasoning (experimentell)

Chef-KI-Austauschkreis

Der Chief AI Sharing Circle konzentriert sich auf das KI-Lernen und bietet umfassende KI-Lerninhalte, KI-Tools und praktische Anleitungen. Unser Ziel ist es, den Nutzern dabei zu helfen, die KI-Technologie zu beherrschen und gemeinsam das unbegrenzte Potenzial der KI durch hochwertige Inhalte und den Austausch praktischer Erfahrungen zu erkunden. Egal, ob Sie ein KI-Anfänger oder ein erfahrener Experte sind, dies ist der ideale Ort für Sie, um Wissen zu erwerben, Ihre Fähigkeiten zu verbessern und Innovationen zu verwirklichen.

Kontaktieren Sie uns
de_DE_formalDeutsch (Sie)