Omni meta-search engine for agentic AI.
Project description
API Documentation · API 文檔 · API 文档 · API ドキュメント
RaySearch
RaySearch is an async-first search orchestration engine for AI-overview style workflows. It can be used as:
- a Python package with
Engine - a personal HTTP API service
- a Docker or Docker Compose deployment
Core Capabilities
search: multi-provider retrieval with optional fetch and rerank stagesfetch: page crawling, extraction, abstracts, overview generation, and related linksanswer: grounded answer generation with citationsresearch: multi-round research reports with synthesis and structured output
Start With Docker Compose
git clone https://github.com/radiata-labs/raysearch.git
cd raysearch/docker
cp .env.example .env
Then edit .env with your own values. At minimum:
- set
RAYSEARCH_API_KEY - set
OPENAI_API_KEYif you wantanswer,research, or LLM-powered overview features
Start the service:
docker compose up -d
For development with hot reload:
docker compose -f docker-compose.yml -f docker-compose.override.yml up
The compose setup reads:
- environment from
docker/.env - service config from
docker/raysearch.example.yaml
If you want a separate config file, copy docker/raysearch.example.yaml and point RAYSEARCH_CONFIG_FILE to it in .env.
Start With uv
From the repository root:
uv run --extra service --env-file docker/.env raysearch-api --config docker/raysearch.example.yaml
Or from inside the docker directory:
uv run --project .. --extra service --env-file .env raysearch-api --config raysearch.example.yaml
Python Package Usage
from raysearch import Engine, SearchRequest
async def main() -> None:
async with Engine.from_settings("docker/raysearch.example.yaml") as engine:
response = await engine.search(
SearchRequest(
query="latest multimodal model papers",
user_location="US",
mode="deep",
max_results=8,
fetchs={"content": True},
)
)
print(response.results)
Personal API
The personal API exposes:
GET /healthzPOST /v1/searchPOST /v1/fetchPOST /v1/answerPOST /v1/research
It uses one shared static bearer token from api.bearer_token or RAYSEARCH_API_KEY. This service is intended for a single user or a private trusted environment.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file raysearch-0.1.2.tar.gz.
File metadata
- Download URL: raysearch-0.1.2.tar.gz
- Upload date:
- Size: 281.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
676da671a10b63af54c21bfdbb41677408536ac0116f9bf452793d5922496096
|
|
| MD5 |
7d0d73f79ca1f4f59062b1a9e2f9d152
|
|
| BLAKE2b-256 |
d4a3f2036d15a72aff696d41e4e80e69f6241f98e851fb388095ccbf923c99cb
|
File details
Details for the file raysearch-0.1.2-py3-none-any.whl.
File metadata
- Download URL: raysearch-0.1.2-py3-none-any.whl
- Upload date:
- Size: 362.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c1d5f8d02109adfb077e4b8304e48649ce3ce968e413ba687e4a10e966c6dd21
|
|
| MD5 |
da750580da8169939a3f7546e354e970
|
|
| BLAKE2b-256 |
ddc88a52f2ab6aa2d720e73ff2097719f819587e0d82c0cb6ff9248de825da41
|