OpenViSTAI · Agents · Blockchain · Crypto
Menu
Agent Frameworks

S3

S3 is an open-source Python framework for training search agents used in retrieval-augmented generation (RAG). It applies reinforcement learning to improve a language model’s search behavior while leaving the generator unchanged, and provides repository workflows for data preparation, training, retrieval inference and evaluation.

Independent OpenViST project profile, based on linked sources.

S3 — OpenViST project profile in Agent Frameworks.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use S3 when you want to develop or assess the RAG search component independently of the generator, using the repository’s reinforcement-learning training and retrieval workflows.

Who it is for

  • RAG researchers and engineers developing search agents.
  • Practitioners comparing search and retrieval approaches using documented baselines.
  • Teams exploring reinforcement-learning training for search with limited data.

Documented uses

  • Train a search agent for a RAG application.
  • Prepare a corpus and retrieval index for the documented workflow.
  • Run search-agent inference and evaluate S3 or listed baselines.
  • Adapt the pipeline for a custom corpus or dataset by following the repository’s referenced customization commit.
Before you choose

Requirements & limits

The project is publicly available on GitHub under the Apache-2.0 license.

  • The README separates retriever setup from the searcher/generator environment and lists distinct dependencies for each.
  • The example setup includes CUDA 12.1 packages, PyTorch and GPU-oriented components such as FAISS GPU and Flash Attention 2.
  • The repository includes scripts for S3 training, inference and evaluation, plus baseline workflows for RAG, DeepRetrieval, Search-R1, IRCoT and Search-o1.
  • Custom-corpus use is described through a linked commit rather than a complete customization walkthrough in the README.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Prepare data and RAG initialization

Download the example index and corpus, then follow the documented preparation workflow for a naïve RAG training cache.

Before you start

  • A local copy of the S3 repository and its documented Python, retriever and searcher/generator environments.
  • A configured retriever and generator; the generator host script’s tensor-parallel-size is set to the number of GPUs used.
  • A save path for downloaded data.

Steps

  1. Run scripts/download.py with --save_path set to the chosen data directory.

  2. Combine the downloaded part_* files into e5_Flat.index and decompress wiki-18.jsonl.gz in that directory.

  3. Start the retriever using scripts/deploy_retriever/retrieval_launch.sh and start the generator with generator_llms/host.sh.

  4. Run scripts/precompute.sh to create the naïve RAG cache used for training.

Expected outcome

The README describes a downloaded index and corpus plus a precomputed naïve RAG cache for training.

Guide limitations

  • The README warns that precomputation takes a while.
  • This workflow describes data preparation, not a completed training run or a verified result.
  • The documented setup includes GPU-oriented dependencies; no hardware minimum is stated.
Source-based practical guide

Launch the documented S3 training workflow

Start S3 search-agent training after preparing its environment and training inputs.

Before you start

  • The repository’s documented searcher/generator and retriever environments.
  • The required corpus and training preparation, including the naïve RAG cache or processed data referenced by the README.

Steps

  1. Start the retriever with scripts/deploy_retriever/retrieval_launch.sh.

  2. Start the generator with generator_llms/host.sh.

  3. Run scripts/train/train_s3.sh.

Expected outcome

The documented training script is launched with the retriever and generator services started.

Guide limitations

  • The README does not specify a universal hardware requirement or guarantee successful training on a particular machine.
  • This guide covers launching the documented workflow, not evaluating or interpreting its results.
COMPARE OPTIONS

Compare options for Retrieval-augmented applications

These projects document a common task and share a project role. This is a source-based comparison, not an execution benchmark or a guarantee of interchangeability.

ProjectDocumented purposePlatformAccess and requirements
S3Train a search agent for a RAG application.Linux, macOS, WindowsThe project is publicly available on GitHub under the Apache-2.0 license.
Hydra — hassenhamdiIngest Markdown documents into a searchable knowledge base.CLI, Self-hosted, ServerThe repository is public and identifies an MIT license. Local setup requires Python 3.10+, a Gemini API key and Docker with Docker Compose for Milvus.
AgentnexusConfigure agents from stored models, tools, prompts, memory, and knowledge sources.Docker, Self-hosted, ServerThe project is documented as open source, and its README states that it uses the MIT License.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
9 October 2026
Original website title
pat-jj/s3 · Official homepage title · retained in its source language