Skip to content

v0.3.0 - Aquiles-RAG

Choose a tag to compare

@FredyRivera-dev FredyRivera-dev released this 19 Aug 00:12
· 61 commits to main since this release

Release v0.3.0 🥳💥

In this release we add official Qdrant support to Aquiles-RAG while maintaining backwards compatibility with Redis. We also introduce an improved setup experience (interactive Setup Wizard), a unified connection layer, and an enhanced deploy pattern.

Many of the commits and changes are described in detail in this issue: #2
Docs for v0.3.0: https://aquiles-ai.github.io/aqRAG-docs/

Highlights

  • 📡 Unified connection layer (Redis & Qdrant)

    • New async helper get_connectionAll() centralizes connection creation for both Redis and Qdrant.
    • A Redis wrapper RdsWr and a Qdrant wrapper QdrantWr encapsulate backend-specific logic (create index, query, send embeddings, drop index). These wrappers let the rest of the codebase call a consistent API regardless of backend.
    • Note: backend-specific differences still exist (e.g., dtype handling and metrics); see API Reference for details.
  • 🧰 Interactive Setup Wizard (CLI)

    • The previous per-flag configuration flow was deprecated in favor of an interactive wizard. Run:
      aquiles-rag configs
    • The wizard prompts for Redis or Qdrant details (host, ports, TLS/gRPC options, API keys, admin user) and writes the final config to:
      ~/.local/share/aquiles/aquiles_config.json
      
    • Automation / CI: to automate setup in scripts/CI, generate the same JSON schema the wizard writes and place it in the path above, or call gen_configs_file() from a small bootstrap script.
  • 👨‍🚀 Deploy pattern (Redis & Qdrant)

    • Introduced DeployConfigRd and DeployConfigQdrant for deployment-time config generation (the old DeployConfig was replaced by these more explicit classes). Use them with gen_configs_file() inside a deploy_*.py script.
    • Example run command:
      # Redis
      aquiles-rag deploy --host "0.0.0.0" --port 5500 --workers 4 deploy_redis.py
      
      # Qdrant
      aquiles-rag deploy --host "0.0.0.0" --port 5500 --workers 4 deploy_qdrant.py
    • The deploy command imports and executes run() from the supplied script, writes aquiles_config.json, and then starts the FastAPI app.
  • 💻 UI Playground: backend-aware live config

    • The UI Playground can edit and display configuration fields for the currently active backend (if Aquiles-RAG is launched with Qdrant you can tune Qdrant settings; if launched with Redis you can tune Redis settings).
    • Important: document which fields apply in-place and which require a restart — see UI docs for the exact list of editable options.

API & Behavior notes

  • Create index: the POST /create/index endpoint now supports creating an index/collection in Redis or Qdrant. Responses differ slightly by backend (Redis returns schema + fields; Qdrant returns success + index name).
  • Ingestion (/rag/create) and Query (/rag/query-rag) now work with both backends; server validates dtype for Redis and forwards float arrays to Qdrant.
  • Monitoring: /status/ram returns Redis memory stats when Redis is used. For Qdrant, Redis-specific memory metrics are not available — the endpoint will return a short explanatory message in redis field.

Developer notes & migration tips

  • Deprecated: manual CLI flags for config. Use the wizard or the deploy pattern for new installs.
  • CI / automation: call gen_configs_file(dp_cfg, force=True) from your bootstrap script to create the runtime config non-interactively.
  • Testing after upgrade:
    1. Run aquiles-rag serve --host "0.0.0.0" --port 5500.
    2. Check readiness: curl http://localhost:5500/health/ready.
    3. Create a quick index and sanity-test ingestion/query (see API Reference).

Breaking / notable changes (callouts)

  • The per-flag CLI configuration flow has been removed/deprecated in favor of the Setup Wizard. If you relied on the old flags in scripts, update to the deploy pattern or write the JSON config file directly.
  • DeployConfig was replaced with DeployConfigRd and DeployConfigQdrant — update any deployment scripts accordingly.

Thanks & where to get help

Thanks to everyone who contributed to the Qdrant integration and the new setup/deploy flow. For details and migration examples see the updated documentation: https://aquiles-ai.github.io/aqRAG-docs/ and the issue tracker (#2).