Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
** This should land Monday the 17th **
Chroma is upgrading from
0.3.29to0.4.0.0.4.0is easier to build, more durable, faster, smaller, and more extensible. This comes with a few changes:A simplified and improved client setup. Instead of having to remember weird settings, users can just do
EphemeralClient,PersistentClientorHttpClient(the underlying directClientimplementation is also still accessible)We migrated data stores away from
duckdbandclickhouse. This changes the api for thePersistentClientthat used to referencechroma_db_impl="duckdb+parquet". Now we simply setis_persistent=true.is_persistentis set for you totrueif you usePersistentClient.Because we migrated away from
duckdbandclickhouse- this also means that users need to migrate their data into the new layout and schema. Chroma is committed to providing extension notification and tooling around any schema and data migrations (for example - this PR!).After upgrading to
0.4.0- if users try to access their data that was stored in the previous regime, the system will throw anExceptionand instruct them how to use the migration assistant to migrate their data. The migration assitant is a pip installable CLI:pip install chroma_migrate. And is runnable by callingchroma_migrate-- TODO ADD here is a short video demonstrating how it works.
Please reference the readme at chroma-core/chroma-migrate to see a full write-up of our philosophy on migrations as well as more details about this particular migration.
Please direct any users facing issues upgrading to our Discord channel called #get-help. We have also created a email listserv to notify developers directly in the future about breaking changes.
TODO
duckdb+parquetstrings to the new format0.4.0after0.4.0is released.fastapito the chroma branch - as is in-progress here test this range chroma-core/chroma#807