Как развернуть базу данных цветности (векторную базу данных) в производстве
Я работаю над проектом, в котором хочу сохранить вложения в векторной базе данных. нужна помощь или ресурсы для развертывания базы данных Chroma для производственного использования
1 ответ
Обновление 1
На GCP или любой другой платформе вы можете запустить новый экземпляр. Установите docker и docker Compose. Затем запустите следующий файл создания Docker. База данных Chroma будет запущена и работает. Затем вы можете получить доступ к базе данных по адресуexternal-ip:8000
# docker-compose.yml
version: '3.3'
services:
server:
image: ghcr.io/chroma-core/chroma:latest
volumes:
- index_data:/index_data
environment:
- CHROMA_DB_IMPL=clickhouse
- CLICKHOUSE_HOST=clickhouse
- CLICKHOUSE_PORT=8123
ports:
- 8000:8000
depends_on:
- clickhouse
clickhouse:
image: clickhouse/clickhouse-server:22.9-alpine
environment:
- ALLOW_EMPTY_PASSWORD=yes
- CLICKHOUSE_TCP_PORT=9000
- CLICKHOUSE_HTTP_PORT=8123
ports:
- '8123:8123'
- '9000:9000'
volumes:
- clickhouse_data:/bitnami/clickhouse
- backups:/backups
- ./config/backup_disk.xml:/etc/clickhouse-server/config.d/backup_disk.xml
- ./config/chroma_users.xml:/etc/clickhouse-server/users.d/chroma.xml
volumes:
clickhouse_data:
driver: local
index_data:
driver: local
backups:
driver: local
также создатьconfig/chroma_users.xml
файл
<clickhouse>
<profiles>
<default>
<allow_experimental_lightweight_delete>1</allow_experimental_lightweight_delete>
<mutations_sync>1</mutations_sync>
</default>
</profiles>
</clickhouse>
Оригинальный ответ
На данный момент команда Chroma опубликовала только подробную информацию о том, как развернуть базу данных на AWS https://docs.trychroma.com/deployment . Но он находится в стадии альфа-версии и использует AWS EC2 для развертывания базы данных.
Я провел небольшое исследование по развертыванию базы данных с помощью Kubernetes. Вы можете использовать образ докера для создания развертывания https://github.com/chroma-core/chroma/pkgs/container/chroma . Это один из вариантов, но я его еще не проверял. Я работаю над этим, буду обновлять.