Menyimpan Vektor dalam PostgreSQL
Pelajari cara mencipta jadual dengan lajur vektor dan memasukkan data benaman terus ke dalam pangkalan data PostgreSQL anda.
Menyimpan Vektor dalam PostgreSQL ialah pelajaran Pangkalan Data Vektor: Pinecone, Weaviate & pgvector percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Pangkalan Data Vektor: Pinecone, Weaviate & pgvector, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Pangkalan Data Vektor: Pinecone, Weaviate & pgvector merangkumi sejumlah 4 pelajaran.
Menyimpan Vektor dalam PostgreSQL
Selamat datang kembali! Dalam pelajaran sebelumnya, kita menyediakan pgvector. Kini, mari kita belajar secara praktikal cara menyimpan pembenaman vektor sebenar dalam pangkalan data PostgreSQL anda.
Pelajaran ini merangkumi penciptaan jadual dengan lajur vektor serta penyisipan data pembenaman.
Peringatan tentang Jadual PostgreSQL
Sebelum menyimpan vektor, mari kita mengimbas kembali cara jadual berfungsi dalam PostgreSQL. Anda menggunakan pernyataan CREATE TABLE untuk mentakrifkan struktur jadual, termasuk nama lajur dan jenis datanya.
Dengan pgvector dipasang, kita memperoleh jenis data baharu yang hebat!
Jenis Data `vector`
Asas penyimpanan pembenaman dengan pgvector ialah jenis data vector. Apabila anda mentakrifkan lajur sebagai vector(N), N mewakili dimensi pembenaman anda.
vector(3): Menyimpan vektor berdimensi 3.vector(1536): Menyimpan vektor berdimensi 1536 (biasa untuk pembenaman OpenAI).
Amat penting bahawa N sepadan dengan dimensi pembenaman yang anda gunakan.
Mencipta Jadual dengan Vektor
Untuk menyimpan pembenaman, anda akan mencipta jadual seperti biasa, tetapi menentukan satu atau lebih lajur sebagai jenis vector(N).
Berikut ialah contoh penciptaan jadual ringkas untuk menyimpan item dan pembenamannya yang berdimensi 3:
CREATE TABLE items (
id SERIAL PRIMARY KEY,
embedding vector(3)
);Memahami Dimensi Vektor
Nombor N dalam vector(N) amat penting. Nombor itu mesti sepadan tepat dengan bilangan nilai (dimensi) dalam vektor pembenaman sebenar anda. Jika model pembenaman anda menghasilkan vektor berdimensi 768, lajur anda mestilah vector(768).
Dimensi yang tidak sepadan akan menyebabkan ralat ketika menyisipkan data. Sentiasa semak dimensi output model pembenaman anda!
Menyisipkan Data Vektor Tunggal
Setelah jadual anda disediakan, anda boleh menyisipkan data vektor menggunakan perintah SQL standard INSERT INTO. Nilai vektor diberikan sebagai perwakilan rentetan bagi senarai nombor, contohnya '[1.2, 3.4, 5.6]'.
INSERT INTO items (embedding)
VALUES ('[1.0, 2.0, 3.0]');Menyisipkan Berbilang Vektor
Anda boleh menyisipkan berbilang vektor ke dalam jadual dengan cekap dengan memberikan beberapa set nilai dalam satu pernyataan INSERT INTO.
Setiap set nilai sepadan dengan satu baris baharu dalam jadual anda.
INSERT INTO items (embedding) VALUES
('[4.0, 5.0, 6.0]'),
('[7.0, 8.0, 9.0]');Menyimpan Vektor dengan Metadata
Dalam aplikasi dunia sebenar, anda hampir sentiasa akan menyimpan maklumat tambahan (metadata) bersama-sama vektor anda. Maklumat ini boleh berupa kandungan teks, ID pengguna, cap masa atau apa-apa data lain yang berkaitan.
Tambahkan sahaja lebih banyak lajur pada takrifan jadual anda:
CREATE TABLE documents (
id SERIAL PRIMARY KEY,
content TEXT,
category VARCHAR(50),
embedding vector(4)
);Menyisipkan Vektor dan Metadata
Apabila menyisipkan data ke dalam jadual yang mempunyai metadata, berikan sahaja nilai untuk semua lajur yang ingin anda isi. Pastikan susunan nilai sepadan dengan susunan lajur yang dinyatakan dalam pernyataan INSERT INTO anda.
INSERT INTO documents (content, category, embedding) VALUES
('The quick brown fox.', 'animal', '[0.1, 0.2, 0.3, 0.4]');Semakan Ringkas: Penciptaan Jadual
Antara pernyataan SQL berikut, yang manakah mencipta jadual bernama products dengan kunci primer yang meningkat secara automatik id serta lajur vektor product_embedding berdimensi 1536?
Ulang Kaji: Menyimpan Vektor Anda
Syabas! Anda telah mempelajari langkah asas untuk menyimpan pembenaman vektor dalam PostgreSQL menggunakan pgvector:
- Mentakrifkan lajur vektor dengan
vector(N), sambil memastikanNsepadan dengan dimensi pembenaman anda. - Mencipta jadual dengan lajur vektor dan metadata.
- Menyisipkan satu dan beberapa titik data vektor berserta metadata yang berkaitan.
Seterusnya, kita akan meneroka cara membuat pertanyaan terhadap data ini untuk mencari vektor yang serupa!
Pelajari Pangkalan Data Vektor: Pinecone, Weaviate & pgvector dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 12
- Pelajaran
- 48
Soalan Lazim
Adakah pelajaran “Menyimpan Vektor dalam PostgreSQL” percuma?
Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Pangkalan Data Vektor: Pinecone, Weaviate & pgvector, termasuk “Menyimpan Vektor dalam PostgreSQL”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Pangkalan Data Vektor: Pinecone, Weaviate & pgvector merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Menyimpan Vektor dalam PostgreSQL”?
Pelajari cara mencipta jadual dengan lajur vektor dan memasukkan data benaman terus ke dalam pangkalan data PostgreSQL anda. Anda berlatih Pangkalan Data Vektor: Pinecone, Weaviate & pgvector menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Pangkalan Data Vektor: Pinecone, Weaviate & pgvector?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Pangkalan Data Vektor: Pinecone, Weaviate & pgvector di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.
Berapa lamakah pelajaran “Menyimpan Vektor dalam PostgreSQL” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Pangkalan Data Vektor: Pinecone, Weaviate & pgvector ini?
Ya. Setiap pelajaran Pangkalan Data Vektor: Pinecone, Weaviate & pgvector menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Menyediakan Sambungan pgvector
- Menyimpan Vektor dalam PostgreSQL
- Melaksanakan Pertanyaan Keserupaan
- Memilih Metrik Jarak dalam pgvector