Skip to content

Add ChromaDB support as vector store #8

@ahmed-sekka

Description

@ahmed-sekka

Description

Currently only Qdrant is supported for vector storage. Add ChromaDB as an alternative, which is very popular in the RAG community.

Why ChromaDB?

  • No Docker required (embedded mode)
  • Popular choice for local development
  • Simple API
  • Good for prototyping

Tasks

  • Add chromadb to optional dependencies in pyproject.toml
  • Create src/core/vector/chroma.py module
  • Implement ChromaVectorStore class with same interface as Qdrant
  • Add --vector-db chroma option to ingest command
  • Support persistent and in-memory modes
  • Add integration tests
  • Update documentation

Example usage

# Ingest into ChromaDB (local)
ragctl ingest chunks.jsonl --vector-db chroma --collection my-docs

# With persistence
ragctl ingest chunks.jsonl --vector-db chroma --path ./chroma_data

Files to create/modify

  • src/core/vector/chroma.py (new)
  • src/core/vector/__init__.py
  • src/core/cli/commands/ingest.py
  • pyproject.toml

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions