Pencarian Vektor
Menjelaskan query manual/Automated Embedding untuk Vector Search, ANN/ENN, filter sebelum/setelah, opsi nested vector Driver 5.10, dan jalur ekstensi Bson.
Vector Search dasar.
Vector Search memerlukan nama indeks yang eksplisit dan $vectorSearch menjadi tahap pertama agregasi.
Query vector / Automated Embedding
queryVector(float[]/double[]/Collection<Double>)
Meneruskan vector yang dihasilkan oleh aplikasi.
queryVector(BinaryVector)
Menggunakan representasi vector biner kompak dari MongoDB Driver secara langsung.
query(String)
Meneruskan teks query itu sendiri ke indeks Automated Embedding MongoDB.
query(VectorSearchQuery)
Hatch pelarian yang kompatibel di masa depan untuk meneruskan tipe query asli Driver.
Fungsi inti DSL tidak mencakup pemanggilan penyedia embedding eksternal untuk menghasilkan vector. Vector manual dihasilkan oleh aplikasi pemanggil dan diteruskan ke queryVector(...).
ANN / ENN
ANN
Gunakan approximate(numCandidates) atau numCandidates(...). Dalam ANN, jumlah kandidat diperlukan.
ENN
Gunakan exact() atau exact(true). Mengaktifkan exact akan menghapus nilai numCandidates yang ada.
Pre-filter / post-filter
filter()/filterFields()
Pre-filter yang masuk ke $vectorSearch.filter mempengaruhi pemilihan kandidat itu sendiri.
fields(...)
Post-filter umum $match setelah $vectorSearch.
Embedding nested / array (Driver 5.10)
filter / filterFields
Filter dokumen daun dari embedding nested.
parentFilter / parentFilterFields
parentFilter Driver 5.10 yang diterapkan pada dokumen root.
nestedScoreMode
Menggabungkan beberapa skor embedding yang cocok dari satu dokumen dengan AVG atau MAX.
Skor / proyeksi / terminal
findAll / find
Mengembalikan hasil Vektor sebagai Flux/Mono.
count().execute()
Menghitung jumlah hasil pipeline setelah batas vektor. Ini bukan jumlah total corpus.
existsQuery().execute()
Memeriksa apakah hasil pipeline Vektor ada.
post stage / opsi native Driver
stage(Bson) dieksekusi segera setelah $vectorSearch, sebelum post-filter/metadata/projection. driverOptions(...) adalah escape hatch untuk menggunakan opsi Driver saat ini/yang akan datang yang belum ada di API convenience.