mirror of
https://github.com/qdrant/landing_page.git
synced 2026-10-05 10:58:32 +02:00
* initial commit; fixed anchor links on internal docs pages * add back in absolute paths for links in code comments * fix: update linkchecker include filter to match server port 1314 PR #1629 changed the Hugo server to port 1314 but forgot to update the --include filter, which still matched port 1313. This caused all links to be excluded, making the checker a no-op (0 checked, 82277 excluded). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Fix url rewrite regex so images are not impacted * Fix links from non-documentation pages * Fix broken links * more broken links * more broken links * broken link * Add srcset width descriptor to .lycheeignore * Ignore URLs that contain a % character * Anchor regex so it matches the entire URL --------- Co-authored-by: kanungle <neil.kanungo@gmail.com> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Co-authored-by: Abdon Pijpelink <abdon.pijpelink@qdrant.com>
3.0 KiB
3.0 KiB
title, weight, partition
| title | weight | partition |
|---|---|---|
| From Chroma | 40 | ecosystem |
Migrate from Chroma to Qdrant
What You Need from Chroma
- Chroma URL — the HTTP endpoint of your Chroma server
- Collection name — the collection to migrate
- Authentication — API token or basic auth credentials, if configured
Concept Mapping
| Chroma | Qdrant | Notes |
|---|---|---|
| Collection | Collection | One-to-one mapping |
| Document | Point | Each document becomes a point |
| Embeddings | Vector | Mapped automatically |
| Metadata | Payload | Direct mapping |
| Documents (text) | Payload field | Stored via --qdrant.document-field |
Run the Migration
docker run --net=host --rm -it registry.cloud.qdrant.io/library/qdrant-migration chroma \
--chroma.url 'http://localhost:8000' \
--chroma.collection 'your-collection' \
--qdrant.url 'https://your-instance.cloud.qdrant.io:6334' \
--qdrant.api-key 'your-qdrant-api-key' \
--qdrant.collection 'your-collection'
With Authentication
docker run --net=host --rm -it registry.cloud.qdrant.io/library/qdrant-migration chroma \
--chroma.url 'https://your-chroma-host:8000' \
--chroma.collection 'your-collection' \
--chroma.auth-type token \
--chroma.token 'your-chroma-token' \
--qdrant.url 'https://your-instance.cloud.qdrant.io:6334' \
--qdrant.api-key 'your-qdrant-api-key' \
--qdrant.collection 'your-collection'
All Chroma-Specific Flags
| Flag | Required | Description |
|---|---|---|
--chroma.url |
No | Chroma HTTP endpoint (default: http://localhost:8000) |
--chroma.collection |
Yes | Collection name to migrate |
--chroma.tenant |
No | Chroma tenant |
--chroma.database |
No | Chroma database |
--chroma.auth-type |
No | none, basic, or token (default: none) |
--chroma.username |
No | Username (when auth-type is basic) |
--chroma.password |
No | Password (when auth-type is basic) |
--chroma.token |
No | Token (when auth-type is token) |
--chroma.token-header |
No | Custom header name for token auth |
Qdrant-Side Options
| Flag | Default | Description |
|---|---|---|
--qdrant.document-field |
document |
Payload field name to store Chroma document text |
--qdrant.id-field |
__id__ |
Payload field name for original Chroma IDs |
--qdrant.distance-metric |
euclid |
cosine, dot, manhattan, or euclid |
Gotchas
- Document text: Chroma stores raw document text alongside embeddings. Use
--qdrant.document-fieldto preserve this text as a payload field in Qdrant. - ID mapping: Chroma uses string IDs. The migration tool maps these to Qdrant point IDs and stores the original Chroma ID in a payload field (default:
__id__). - Distance metric: Chroma defaults to L2 distance. Verify which metric your collection uses and set
--qdrant.distance-metricaccordingly.
Next Steps
After migration, verify your data arrived correctly with the Migration Verification Guide.