FiturHargaBlogDownload

AI Integration

Pencarian Semantik & Embeddings

Pahami bagaimana penyematan vektor mendukung OmniSearch Snipset.

Halaman ini mencakup dasar-dasar teknis OmniSearch: penyematan vektor. Jika Anda belum menyiapkan OmniSearch, mulailah dengan Halaman fitur OmniSearch . Panduan ini membahas lebih dalam tentang cara kerja sistem penyematan dan cara mengelola database Anda.

Apa itu Penyematan Vektor?

Komputer tidak memahami “makna” kata-kata secara organik. Untuk mengatasi hal ini, AI menggunakan penyematan vektor.

  • Penyematan adalah representasi matematis dari makna teks sebagai daftar angka ("vektor").
  • Dua teks dengan makna serupa akan memiliki vektor matematika serupa, meskipun menggunakan kata-kata yang sama sekali berbeda.
  • Misalnya: "Saya harus membatalkan langganan" dan "Bagaimana cara berhenti berlangganan?" akan memiliki penyematan yang sangat mirip, memungkinkan mesin pencari untuk menghubungkannya.
  • Snipset menggunakan model embedding lokal (misalnya hf.co/lmstudio-community/embeddinggemma-300m-qat-GGUF) yang berjalan melalui Ollama untuk menghasilkan vektor-vektor ini.

Basis Data Penyematan

Karena penghitungan penyematan memerlukan pemrosesan AI, Snipset tidak melakukannya dengan cepat saat Anda melakukan penelusuran. Sebaliknya, ia menghitung terlebih dahulu dan menyimpannya.

  • Penyematan disimpan dalam tabel vektor khusus di dalam database SQLite lokal Anda ( snipset.db).
  • Setiap cuplikan mendapat tepat satu entri penyematan. Entri ini merupakan kombinasi Nama cuplikan, Kata Kunci, dan Konten.
  • Jejak basis datanya sangat kecil—bertambah sekitar 1,5 KB per cuplikan.

Kontrol Sinkronisasi

Di panel pengaturan OmniSearch, Anda memiliki kontrol yang tepat atas proses pembuatan penyematan:

Tindakan Apa fungsinya
Mulai Pematrian Mulai menyematkan semua cuplikan yang belum memiliki entri vektor. Benar-benar aman untuk menjalankan ini kapan saja.
Jeda Menghentikan sinkronisasi untuk sementara. Kemajuan saat ini disimpan, memungkinkan Anda melanjutkan kapan pun Anda mau.
Lanjutkan Melanjutkan proses dari tempat yang dijeda. Ini hanya memproses sisa cuplikan yang tidak tersemat.
Paksa Semua Menghapus SEMUA embeddings yang ada di database dan membuatnya kembali dari awal.

Menjaga Penyematan Tetap Terkini

Pembaruan Otomatis: Saat Anda membuat cuplikan baru atau mengedit cuplikan yang sudah ada, Snipset secara otomatis memperbarui penyematannya di latar belakang. Anda tidak perlu menjalankan sinkronisasi secara manual setiap kali Anda menambahkan cuplikan!
Anda hanya perlu menggunakan tombol Paksa Semua dalam skenario tertentu:
  • Jika Anda melakukan impor CSV/JSON secara besar-besaran sebanyak ratusan cuplikan.
  • Jika Anda mengubah Model Penyematan di pengaturan Konfigurasi AI.
  • Jika hasil penelusuran semantik tampak tidak akurat atau ketinggalan zaman.

Pertimbangan Kinerja

Menghasilkan embeddings memerlukan CPU atau GPU Anda untuk memproses data melalui Ollama.

  • Untuk perpustakaan besar (misalnya, 500+ cuplikan), Sinkronisasi Paksa mungkin memerlukan waktu beberapa menit.
  • Sistem Jeda/Lanjutkan memastikan Anda tidak pernah terkunci. Anda dapat menghentikan sinkronisasi kapan saja jika komputer Anda menjadi lamban.
  • Tidak ada dampak pengetikan: Mesin perluasan teks inti Snipset berjalan pada thread terpisah dengan prioritas tinggi. Meskipun sinkronisasi besar-besaran berjalan di latar belakang, cuplikan Anda akan terus terpicu secara instan tanpa jeda.