No description
Find a file
toki fdc86c7ff4
Some checks are pending
ci / validate (push) Waiting to run
initial commit
2026-07-18 18:41:17 +09:00
.claude initial commit 2026-07-18 18:41:17 +09:00
.gitea/workflows initial commit 2026-07-18 18:41:17 +09:00
agent-ops initial commit 2026-07-18 18:41:17 +09:00
api initial commit 2026-07-18 18:41:17 +09:00
apps initial commit 2026-07-18 18:41:17 +09:00
configs initial commit 2026-07-18 18:41:17 +09:00
db initial commit 2026-07-18 18:41:17 +09:00
deploy initial commit 2026-07-18 18:41:17 +09:00
gen/go/rara/v1 initial commit 2026-07-18 18:41:17 +09:00
packages initial commit 2026-07-18 18:41:17 +09:00
.aiexclude initial commit 2026-07-18 18:41:17 +09:00
.clineignore initial commit 2026-07-18 18:41:17 +09:00
.clinerules initial commit 2026-07-18 18:41:17 +09:00
.cursorignore initial commit 2026-07-18 18:41:17 +09:00
.cursorrules initial commit 2026-07-18 18:41:17 +09:00
.editorconfig initial commit 2026-07-18 18:41:17 +09:00
.env.example initial commit 2026-07-18 18:41:17 +09:00
.geminiignore initial commit 2026-07-18 18:41:17 +09:00
.gitignore initial commit 2026-07-18 18:41:17 +09:00
AGENTS.md initial commit 2026-07-18 18:41:17 +09:00
ARCHITECTURE.md initial commit 2026-07-18 18:41:17 +09:00
CLAUDE.md initial commit 2026-07-18 18:41:17 +09:00
GEMINI.md initial commit 2026-07-18 18:41:17 +09:00
go.mod initial commit 2026-07-18 18:41:17 +09:00
go.sum initial commit 2026-07-18 18:41:17 +09:00
Makefile initial commit 2026-07-18 18:41:17 +09:00
opencode.json initial commit 2026-07-18 18:41:17 +09:00
README.md initial commit 2026-07-18 18:41:17 +09:00
sqlc.yaml initial commit 2026-07-18 18:41:17 +09:00

RARA

RARA is an internal, storage-agnostic platform for operating the complete RAG lifecycle and promoting verified data into optional LoRA/QLoRA workflows.

RARA owns the logical RAG contract end to end:

  • source synchronization and normalization
  • versioned datasets and artifact lineage
  • retrieval, reranking, context assembly, and answer generation
  • evaluation, release promotion, and rollback
  • training-candidate curation and adaptation execution

Physical retrieval stores, artifact stores, model providers, and executors stay replaceable behind capability-aware integrations.

Repository layout

apps/
  control-plane/   Go lifecycle and management API
  rag-api/         Go online retrieve/answer data plane
  worker/          Go workflow step worker
  client/          reserved for the operations UI
api/
  openapi/         public HTTP API contract
  proto/           internal Go/Python executor contract
packages/
  go/              shared Go packages
  python/          Python adaptation worker
db/
  migrations/      PostgreSQL schema migrations
  queries/         sqlc queries
configs/           service configuration examples
deploy/            local deployment assets

Baseline

  • Go 1.26
  • Python 3.12
  • PostgreSQL 18
  • Protobuf for internal executor contracts
  • HTTP/JSON and SSE for the public RAG API

PostgreSQL is the required control-state database. It is not the default RAG retrieval backend and there is no SQLite fallback.

Development

The local prerequisites are Go, Python, and protoc. make setup installs version-pinned Go code-generation tools under .tools/ and creates .venv/.

Bootstrap the Python environment and generate contracts:

make setup

Run checks and build the three Go services:

make test
make build

Start PostgreSQL when a container runtime is available:

make db-up
make migrate-up

The current workspace may instead use an external PostgreSQL instance through RARA_DATABASE_URL.

Run services after PostgreSQL is migrated:

bin/rara-control-plane --config configs/control-plane.yaml
bin/rara-rag-api --config configs/rag-api.yaml
bin/rara-worker --config configs/worker.yaml

The Python executor starts with:

.venv/bin/rara-python-worker

ML dependencies are optional. Install packages/python[training] or packages/python[training,quantized] only on hosts that execute adaptation jobs.

Status

This repository currently contains the platform scaffold. Retrieval backends, model providers, source connectors, and production workflows are added as versioned integrations rather than hard-coded infrastructure.