What you get
- Retrieval-augmented answers from your own documents
- One of 6 vector stores, chosen by configuration rather than code
- Ingestion sources: website crawling and uploaded files, with schedules and run history
How it works in EDDI
- Run a Chroma server and note its URL and a collection name.
- Create a RagConfiguration with
storeType: "chroma"and the store parameters, plus the embedding provider. - Bind it to the agent with an
eddi://ai.labs.ragworkflow step. - Select it in the LLM task by name under
knowledgeBases, then ingest documents.
Configuration
Taken from the EDDI documentation. Placeholders such as your-agent-id are yours to replace.
{
"name": "product-docs",
"embeddingProvider": "openai",
"embeddingParameters": {
"model": "text-embedding-3-small",
"apiKey": "${vault:openai-key}"
},
"storeType": "chroma",
"storeParameters": {
"baseUrl": "http://localhost:8000",
"collectionName": "product-docs"
},
"chunkStrategy": "recursive",
"chunkSize": 512,
"chunkOverlap": 64,
"maxResults": 5,
"minScore": 0.6
}// 1. workflow step: binds the knowledge base to the agent
{ "type": "eddi://ai.labs.rag",
"extensions": {},
"config": { "uri": "eddi://ai.labs.rag/ragstore/rags/{ragId}?version=1" } }
// 2. LLM task: selects it by the "name" of the RagConfiguration
{ "tasks": [{
"actions": ["*"],
"type": "openai",
"knowledgeBases": [{ "name": "product-docs", "maxResults": 5, "minScore": 0.7 }],
"parameters": { "systemMessage": "You are a helpful assistant." }
} ] }Governance
- Embedding API keys are vault references, so the document corpus and the credentials stay separate.
- Embedding calls send document text to a hosted embedding provider. If the data may not leave your infrastructure, use a self-hosted embedding model.
- An open vector store is a copy of your corpus. Run Chroma with authentication and off public interfaces.
Good to know
- Replacing a document's chunks is verified for in-memory and pgvector. For Chroma it is expected to work but not covered by tests, so re-ingested documents may leave stale chunks.
Related integrations
Configuration and behavior on this page follow the EDDI documentation, checked on 2026-10-14. Field names and defaults can change between releases, so confirm them in the docs for your version.