ChromaDB fix

Fix Odysseus chromadb-client conflict

If Odysseus memory, embeddings, or vector search fail after a manual dependency change, check whether an external chromadb-client package is conflicting with the ChromaDB setup expected by the app.

Symptoms

Why it happens

Some Python environments can contain both a client-only Chroma package and the package expected by the app. When imports resolve to the wrong package, Odysseus may start with broken vector features even though the rest of the interface loads.

Safe fix path

  1. Stop Odysseus.
  2. Export or back up data volumes before changing dependencies.
  3. Check the active Python environment or container image, not only your host machine.
  4. Remove the conflicting client package only from the Odysseus environment.
  5. Reinstall or rebuild from the official dependency set.
python -m pip show chromadb chromadb-client
python -m pip uninstall chromadb-client
Do not blindly run uninstall commands on a shared Python environment. Confirm you are inside the Odysseus environment or container first.

How to prevent it

Prefer Docker or a dedicated virtual environment. Avoid installing random AI packages into the same environment as Odysseus unless the official project requests them.