Aprendizagem pessoal com IA
e orientação prática
Espelho de desenho CyberKnife

ReSearch: um modelo Qwen2.5-7B para raciocínio de pesquisa aprimorado (experimental)

Introdução geral

O ReSearch é uma ferramenta de pesquisa de código aberto desenvolvida pela equipe do Agent-RL para aprimorar os recursos de pesquisa e inferência de modelos de linguagem grandes (LLMs) por meio do aprendizado por reforço (RL). Inspirado no Deepseek-R1-Zero e no Deep Research da OpenAI, o ReSearch é baseado no modelo Qwen2.5-7B, treinado do zero usando GRPO (Generalised Reward Policy Optimization), que permite que o modelo invoque autonomamente ferramentas de pesquisa com base apenas em sinais de recompensa, sem dados supervisionados. O ReSearch foi validado no conjunto de dados HotpotQA e é generalizado para conjuntos de dados como Bamboogle e StrategyQA. O ReSearch está hospedado no GitHub, com código completo e documentação experimental, e é adequado para que os pesquisadores reproduzam ou ampliem suas explorações de combinação de RL e LLM.

ReSearch: o modelo Qwen2.5-7B para raciocínio de pesquisa aprimorado (experimental)-1


 

Lista de funções

  • Aprendizado aprimorado Pipeline de treinamentoSuporte para treinamento de modelos grandes a partir do zero, configurações completas de parâmetros e projetos de sinais de recompensa.
  • Chamada da ferramenta de pesquisaModelos: os modelos podem invocar automaticamente ferramentas de pesquisa com base em perguntas para melhorar a precisão de tarefas de raciocínio complexas.
  • Adaptação de vários conjuntos de dadosApós o treinamento no HotpotQA, ele pode ser estendido a conjuntos de dados como Bamboogle, StrategyQA, etc.
  • Suporte à avaliação de desempenhoIntegração do ambiente FlashRAG: integre o ambiente FlashRAG para testar rapidamente o desempenho de um modelo em um conjunto de desenvolvimento.
  • implementação de código abertoCódigo detalhado e configurações experimentais para facilitar a reprodução de pesquisas e o desenvolvimento secundário.

 

Usando a Ajuda

Processo de instalação

O ReSearch requer um ambiente de GPU e depende das estruturas verl e FlashRAG. Veja a seguir as etapas detalhadas de instalação:

1. preparação ambiental

  • Requisitos do sistemaRecomendamos o Linux (por exemplo, Ubuntu), pois o Windows pode ter problemas de compatibilidade.
  • Versão PythonRequer Python 3.11 ou superior.
  • Configuração da GPUSuporte para GPUs NVIDIA: instale o CUDA 12.4 (para corresponder à versão do torch).

2. clonagem de armazéns

Digite o seguinte comando no terminal:

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

3. instalação do ambiente verl

O ReSearch é baseado no verl para treinamento de aprendizagem por reforço, e as etapas de instalação são as seguintes:

cd verl
pip3 install -e .
cd ...
  • versão de dependênciaTorch==2.4.0+cu124, vllm==0.6.3, ray==2.10.0. Se houver algum conflito, instale-o manualmente:
    pip install torch==2.4.0+cu124 vllm==0.6.3 ray==2.10.0
    

4. instalação do ambiente FlashRAG

O FlashRAG é usado para avaliar e RAG Serviço, método de instalação:

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

5. download de modelos pré-treinados

O Qwen2.5-7B é usado por padrão, baixado do site Hugging Face:

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

Registre o caminho do modelo e configure-o para uso posterior.

Uso

Início do serviço RAG

  1. Download de dados pré-indexadosObtenha o índice, o corpus e o modelo de recuperação da Wikipédia a partir de um documento FlashRAG.
  2. Serviços de configuração:: Editorial rag_serving/serving_config.yamlAs IDs de GPU dos modelos de pesquisa, índices, caminhos de corpus e IDs de GPU disponíveis são preenchidas.
  3. Serviços operacionais::
    conda activate flashrag
    python rag_serving/serving.py --config rag_serving/serving_config.yaml --num_retriever 1 --port 8000
    

    O suporte à pesquisa é fornecido quando o serviço estiver em execução.

Modelos de treinamento

  1. Preparar dadosFaça o download do conjunto de dados HotpotQA e execute o script de pré-processamento:
    python training/data_preprocess_hpqa.py
    

    Os dados de treinamento e desenvolvimento gerados são salvos no formato parquet.

  2. Parâmetros de configuraçãoModificação treinamento/run.shA seguir estão alguns dos recursos que você pode usar para configurar o caminho do modelo, o URL de pesquisa, o caminho dos dados etc.
  3. treinamento de preparação::
    conda activate 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/
    
    • Treinamento com GPU de nó único 8, vários nós exigem ajuste de raio.

modelo de avaliação

  1. Iniciando o serviço de modeloApós o treinamento, o modelo é implantado usando o SGLang:
    python3 -m sglang.launch_server --served-model-name research --model-path runs/trained_model --tp 2 --context-length 8192 --port 80
    
  2. Avaliação operacional::
    python evaluation/run_eval.py --config_path evaluation/eval_config.yaml --method_name research --split dev --dataset_name hotpotqa
    
    • Os resultados são salvos em avaliação/resultados/Suporte para troca de conjuntos de dados (por exemplo, Bamboogle).

Operação da função em destaque

  • Chamada da ferramenta de pesquisa::
    • Após o treinamento, o modelo pode determinar automaticamente se deve ou não chamar a ferramenta de pesquisa. Por exemplo, digite "How many moons does Jupiter have?" (Quantas luas Júpiter tem?):
      python inference.py --model_path runs/trained_model --question "Quantas luas Júpiter tem?"
      

      Exemplo de saída:Júpiter tem 95 luas conhecidas desde 2025..

    • Processo: o modelo gera uma consulta de pesquisa com base na pergunta e chama o serviço RAG para obter as informações e, em seguida, raciocinar sobre a resposta.
  • Generalização entre conjuntos de dados::
    • Teste de desempenho do modelo no StrategyQA:
      python evaluation/run_eval.py --config_path evaluation/eval_config.yaml --method_name research --split dev --dataset_name strategyqa
      

      O resultado contém o processo de raciocínio e a resposta, verificando a capacidade de generalização.

advertência

  • Requisitos de hardwareMemória de vídeo: 24 GB ou mais de memória de vídeo para treinamento, 16 GB para avaliação.
  • Monitoramento de registrosUse o TensorBoard para visualizar o progresso do treinamento:
    tensorboard --logdir runs/
    
  • resolução de falhasSe você receber um erro, verifique a versão da dependência ou verifique os problemas do GitHub.

Com isso, os usuários podem reproduzir totalmente os experimentos do ReSearch e explorar a combinação de aprendizagem por reforço e modelos grandes.

CDN1
Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " ReSearch: um modelo Qwen2.5-7B para raciocínio de pesquisa aprimorado (experimental)

Chefe do Círculo de Compartilhamento de IA

O Chief AI Sharing Circle se concentra no aprendizado de IA, fornecendo conteúdo abrangente de aprendizado de IA, ferramentas de IA e orientação prática. Nosso objetivo é ajudar os usuários a dominar a tecnologia de IA e explorar juntos o potencial ilimitado da IA por meio de conteúdo de alta qualidade e compartilhamento de experiências práticas. Seja você um iniciante em IA ou um especialista sênior, este é o lugar ideal para adquirir conhecimento, aprimorar suas habilidades e realizar inovações.

Entre em contato conosco
pt_BRPortuguês do Brasil