Quick Start
1
Use the default location
Pass sources and let the store persist under the per-project default.Data lands at
<project>/.praisonai/knowledge/chroma.2
Choose your own location
Set
vector_store.config.path to store data anywhere you like.Where Is My Data Stored?
Omitpath and Knowledge persists to an absolute directory derived from your project root.
The default is absolute and per-project, so two projects — or a test harness that changes directories — never write to the same sqlite file.
Earlier releases defaulted to the cwd-relative string
"knowledge_db", which let unrelated projects collide. Upgrade to the release built from PraisonAI PR #4422 for the isolated default.How to Change It
Pointpath at any directory via the Agent config or a standalone Knowledge instance.
path always wins over the default.
What If the Store Is Corrupt?
A corrupt, locked, or version-mismatched Chroma store now raises aRuntimeError instead of crashing the interpreter.
PanicException (a BaseException, not Exception) that previously unwound through Agent.start and killed Python — on Windows this showed up as a SIGSEGV or hang (issue #4376). The SDK now catches it and re-raises an actionable Python error, while KeyboardInterrupt still propagates so Ctrl-C keeps working.
Directory indexing behaves the same: a backend panic on one file surfaces as RuntimeError: Knowledge indexing backend crashed on <file> rather than terminating the process.
Recovery: delete the persist directory and re-index, or point path at a fresh directory.
Configuration Options
Chroma persistence is controlled by a single option undervector_store.config.
Best Practices
Omit path for local development
Omit path for local development
Leave
path unset and rely on the per-project default. Each project keeps its own isolated store with zero configuration.Recover instead of retrying on a panic
Recover instead of retrying on a panic
A
RuntimeError: Chroma persist failed ... means the store is corrupt or locked. Delete the directory or switch to a fresh path — re-running against the same broken store repeats the failure.Isolate per environment
Isolate per environment
Use distinct paths for development, test, and production so an experiment never corrupts a shared index.
Related
Knowledge
Add documents and query them from an agent
Knowledge Backends
Pick and configure a vector store

