RAG vektorandmebaasi majutus (ChromaDB & pgvector)
lugemisaeg · 7 min
Retrieval-augmented generation vajab kohta, kus embedding’uid hoida. Selle vektorhoidla ise majutamine VPS-il hoiab sinu dokumendid privaatsena ja kulud kontrolli all. Kaks head valikut: ChromaDB (lihtne) või PostgreSQL koos pgvectoriga (tootmiskeskkonna jaoks).
Sammud
Variant A — ChromaDB
ChromaDB on kiireim viis alustada. Paigalda see pip-iga ja käivita server püsiva andmekaustaga.
$ python3 -m venv venv && source venv/bin/activate
$ pip install chromadb
$ chroma run --path ~/chroma-data --port 8000 Variant B — PostgreSQL + pgvector
Tootmisseadistuse jaoks lisa pgvector laiendus PostgreSQL-i ja salvesta embedding’ud kõrvuti relatsiooniliste andmetega.
$ sudo apt-get install -y postgresql postgresql-16-pgvector
$ sudo -u postgres psql -c "CREATE EXTENSION vector;" Loo vektor-veerg
pgvector’is salvesta embedding’ud vektor-veeruna ja lisa indeks kiireks sarnasusotsinguks.
CREATE TABLE docs (id bigserial PRIMARY KEY, content text, embedding vector(1536));
CREATE INDEX ON docs USING hnsw (embedding vector_cosine_ops); Salvesta ja varunda andmed
Salvesta andmekaust püsivale andmekandjale, mis elab üle ka serveri taaskäivituse, ning seadista regulaarsed varukoopiad, et vältida indeksi kadumist.
$ pg_dump -Fc ragdb > ~/backups/rag-$(date +%F).dump Hoia privaatsena Tailscale’iga
Vektorhoidlat ei tohi jätta avatuks avalikku internetti. Luba ligipääs ainult läbi Tailscale’i turvalise liidese.
$ sudo ufw allow in on tailscale0 to any port 8000 proto tcp Korduvad küsimused
ChromaDB või pgvector — kumba valida? +
ChromaDB on kiireim prototüüpide ja puhtalt vektor-koormuste jaoks. Vali pgvector, kui kasutad juba PostgreSQL-i või tahad vektoreid ja relatsioonilisi andmeid ühes ACID-andmebaasis.
Kui palju ketast embedding’ud vajavad? +
Umbes dimensioonide arv korda 4 baiti vektori kohta, pluss indeksi lisakulu. 1536-dimensiooniline embedding on umbes 6 KB; miljon neist on mõni GB — mahub hõlpsalt VPS-i kettale.
Kuidas seda varundada? +
pgvector’i jaoks kasuta pg_dump ajakava alusel; ChromaDB jaoks tee persist-kaustast snapshot. Hoia koopiaid serverist väljas.
Seotud juhendid
Majuta oma RAG-stack ise
VPS ketta ja mäluga, mida privaatne vektorandmebaas vajab.
Vaata VPS pakette →