s3 - RL ile Verimli ve Etkili Arama Ajanı Eğitimi
Bir Arama Ajanı Eğitmek İçin O Kadar Fazla Veriye İhtiyacınız YokPerformans Genel Bakışı:

s3 nedir?

s3 Çerçevesi
s3, arama ajanlarını geri alma ile artırılmış üretim (RAG) kapsamında eğitmek için basit ama güçlü bir çerçevedir. Dil modellerine, üreticiyi değiştirmeden daha etkili arama yapmayı öğretir. Yalnızca arama bileşenine odaklanarak, s3 önceki yöntemlere kıyasla kullanılan verinin sadece küçük bir kısmıyla QA görevlerinde yüksek performans elde eder. Modülerdir, verimlidir ve herhangi bir kara kutu LLM ile sorunsuz çalışacak şekilde tasarlanmıştır.
İçindekiler
📦 Kurulum
Arama ve Üretici Ortamı
conda create -n s3 python=3.9
install torch [or you can skip this step and let vllm to install the correct version for you]
pip install torch==2.4.0 --index-url https://download.pytorch.org/whl/cu121
install vllm
pip3 install vllm==0.6.3 # or you can install 0.5.4, 0.4.2 and 0.3.1
pip3 install rayverl
cd code
pip install -e .flash attention 2
pip3 install flash-attn --no-build-isolationwe use pyserini for efficient retrieval and evaluation
pip install pyserini # the version we used is 0.22.1quality of life
pip install wandb IPython matplotlib huggingface_hub
Retriever Ortamıconda create -n ret python=3.10
conda activate retconda install pytorch==2.4.0 torchvision==0.19.0 torchaudio==2.4.0 pytorch-cuda=12.1 -c pytorch -c nvidia
pip install transformers datasets pyserini
conda install -c pytorch -c nvidia faiss-gpu=1.8.0
pip install uvicorn fastapi
💡 Hazırlık
Dizin ve Korpus İndirpython scripts/download.py --save_path $save_path
cat $save_path/part_* > $save_path/e5_Flat.index
gzip -d $save_path/wiki-18.jsonl.gzNaif RAG Başlatmasını Önceden Hesapla (veya işlenmiş verimizi buradan indirebilirsiniz: huggingface)
# deploy retriever
bash scripts/deploy_retriever/retrieval_launch.sh # or scripts/deploy_retriever/retrieval_launch_mirage.sh for MedCorp corpus.
deploy generator
bash generator_llms/host.sh # modify tensor-parallel-size to the number of GPUs you use
run precompute
bash scripts/precompute.sh # this step will take a while, as it will precompute the naïve RAG Cache for training
🏋️ Antrenmanı Başlat
Bu adım S3'ün eğitimi içindir# deploy retriever
bash scripts/deploy_retriever/retrieval_launch.sh
deploy generator
bash generator_llms/host.sh
run training
bash scripts/train/train_s3.sh
🔍 Arama/Alma İşlemini Çalıştırın
Bu adım, s3 / temel modeller için bağlam toplama içindirs3
# deploy retriever
bash scripts/deploy_retriever/retrieval_launch.sh
run s3 inference
bash scripts/s3_inference/evaluate-8-3-3.sh
Temel Değerler
RAG
bash scripts/deploy_retriever/retrieval_launch.sh # or retrieval_launch_bm25.sh # deploy retriever
bash scripts/baselines/rag.sh # run RAG
DeepRetrieval
DeepRetrieval
bash retrieval_launch_bm25.sh # deploy BM25 Model
bash generator_llms/deepretrieval.sh # deploy DeepRetrieval Model
bash scripts/baselines/deepretrieval.sh # run DeepRetrieval Query Rewriting + Retrieval
Ara-R1bash retrieval_launch.sh # deploy e5 retriever
bash scripts/baselines/search_r1.sh # run Search-R1
IRCoTbash retrieval_launch.sh # deploy e5 retriever
python scripts/baselines/ircot.py
Arama-o1bash retrieval_launch.sh # deploy e5 retriever
bash scripts/baselines/search_o1.sh # run Search-o1
📈 Değerlendirme Çalıştırma
Bu adım s3 / temel modellerin değerlendirmesi içindirbash scripts/evaluation/run.shSSS
Özelleştirilmiş Veri?
s3'ü kendi veri kümeniz/datanız üzerinde test etmek istiyorsanız, kendi boru hattınızı oluşturmak için yapmanız gerekenleri görmek adına bu commit'e bakabilirsiniz: commit 8420538Sonuçların Tekrar Üretimi?
Birçok geliştirici sonuçlarımızı başarıyla tekrar üretti. Sorularınız olursa ya da bir sorunla karşılaşırsanız, issue açmaktan çekinmeyin — uygulamalı olarak yardımcı olmaktan memnuniyet duyarız (bakınız bu örnek).Modeli kendinizin tekrar üretmesi oldukça kolaydır — ve aslında sıfırdan eğitmenizi öneriyoruz, çünkü değerlendirme genellikle eğitimden çok daha fazla zaman alır — ayrıca bir referans kontrol noktası da sunuyoruz: s3-8-3-3-20steps, yaklaşık bir saatte eğitilmiştir.
Atıf
@article{jiang2025s3,
title={s3: You Don't Need That Much Data to Train a Search Agent via RL},
author={Jiang, Pengcheng and Xu, Xueqiang and Lin, Jiacheng and Xiao, Jinfeng and Wang, Zifeng and Sun, Jimeng and Han, Jiawei},
journal={arXiv preprint arXiv:2505.14146},
year={2025}
}
Çalışmamıza gösterdiğiniz ilgi için teşekkür ederiz!--- Tranlated By Open Ai Tx | Last indexed: 2025-12-30 ---