cari
RumahPeranti teknologiAIPengambilan semula Generasi Tambahan di SQLite

Siri dua bahagian ini meneroka menggunakan SQLite untuk pembelajaran mesin. Artikel sebelumnya membincangkan peranan SQLite yang semakin meningkat dalam aplikasi web yang siap pengeluaran. Artikel ini memberi tumpuan kepada pelaksanaan Generasi Pengambilan Pengambilan (RAG) menggunakan SQLite.

Untuk aplikasi web tersuai dengan AI generatif, lawati losangelesaiapps.com

Kod tersedia di sini .

pelaksanaan kain tradisional sering melibatkan:

  1. Mencari tutorial pada kain.
  2. Memilih rangka kerja yang popular (Langchain, Llamaindex).
  3. memilih pangkalan data vektor awan (pinecone, weaviate).
  4. Mengintegrasikan komponen -komponen ini.

Walaupun berkesan, pendekatan ini boleh menjadi terlalu kompleks, terutamanya untuk pemula. Artikel ini menunjukkan kaedah yang lebih mudah menggunakan SQLite dengan lanjutan sqlite-vec dan API OpenAI. Bahagian 1 siri ini memberikan gambaran terperinci tentang keupayaan SQLite. Untuk artikel ini, ia cukup untuk memahami kesederhanaan SQLite sebagai pangkalan data satu fail.

Pendekatan ini menghapuskan keperluan untuk pangkalan data vektor awan dan rangka kerja yang besar.

sqlite-vec: memperluaskan kuasa sqlite

Kekuatan SQLite terletak pada kelanjutannya. Sambungan, sama dengan perpustakaan Python, tambah fungsi yang ditulis dalam C. Contoh utama ialah sambungan carian teks penuh (FTS). sqlite-vec Menambah keupayaan carian vektor, membolehkan pemahaman semantik di luar padanan kata kunci. Mencari "kuda" mungkin kembali "ekuestrian" atau "kuda."

sqlite-vec menggunakan jadual maya, menawarkan:

  • Sumber data tersuai: Data boleh tinggal di luar fail pangkalan data (mis., CSV, API).
  • Fungsi fleksibel: menyokong pengindeksan khusus dan jenis data kompleks.
  • Integrasi Lancar: Bersepadu dengan sintaks pertanyaan SQLite standard.
  • Modul
  • : logik backend dilaksanakan dalam modul yang berasingan.

jadual maya dibuat menggunakan:

CREATE VIRTUAL TABLE my_table USING my_extension_module();

my_extension_module() Menentukan modul (di sini, vec0 dari sqlite-vec).

Walkthrough kod

Kod ( pautan repo ) menggunakan .txt fail sebagai data sampel (kebanyakannya berkaitan fizik). my_docs.db adalah fail pangkalan data SQLite.

  1. Pemasangan: requirements.txt menyenaraikan perpustakaan yang diperlukan (sqlite-vec, openai, python-dotenv). Buat persekitaran maya dan jalankan pip install -r requirements.txt.

  2. Openai API Key: Dapatkan Kunci API Terbuka.

  3. Memuatkan pelanjutan: kod python memuatkan lanjutan sqlite-vec dan mencipta jadual maya:

CREATE VIRTUAL TABLE my_table USING my_extension_module();

The documents Jadual Kedai Embeddings (embedding), Filenames (file_name), dan Kandungan (content). menandakan bidang tambahan.

  1. Embedding and Inscion: Kod ini melewati fail , menghasilkan embeddings menggunakan API OpenAI, dan memasukkannya ke dalam pangkalan data: .txt
db.enable_load_extension(True)
sqlite_vec.load(db)
db.enable_load_extension(False)

db.execute('''
    CREATE VIRTUAL TABLE documents USING vec0(
        embedding float[1536],
        +file_name TEXT,
        +content TEXT
    )
''')
  1. pertanyaan rag: pertanyaan KNN mengambil dokumen serupa berdasarkan persamaan penyembuhan:
# ... (OpenAI embedding function) ...

for file_name in os.listdir("data"):
    # ... (Open file, get content, get embedding) ...
    db.execute(
        'INSERT INTO documents (embedding, file_name, content) VALUES (?, ?, ?)',
        (serialize_float32(embedding), file_name, content)
    )
db.commit()
Hasilnya kemudiannya digunakan sebagai konteks untuk penyelesaian sembang terbuka untuk menjawab pertanyaan.

Kesimpulan

Memudahkan kain dengan ketara. Ia menghapuskan keperluan untuk kerangka kerja kompleks dan perkhidmatan awan, menjadikannya kos efektif dan mudah untuk diulangi. Walaupun skala mungkin akhirnya memerlukan pangkalan data yang lebih mantap, sqlite-vec menawarkan penyelesaian yang menarik untuk projek yang lebih kecil. Pelanjutan ini menyokong pelbagai bahasa pengaturcaraan. sqlite-vec

Atas ialah kandungan terperinci Pengambilan semula Generasi Tambahan di SQLite. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Saya cuba pengekodan getaran dengan kursor AI dan ia menakjubkan!Saya cuba pengekodan getaran dengan kursor AI dan ia menakjubkan!Mar 20, 2025 pm 03:34 PM

Pengekodan Vibe membentuk semula dunia pembangunan perisian dengan membiarkan kami membuat aplikasi menggunakan bahasa semulajadi dan bukannya kod yang tidak berkesudahan. Diilhamkan oleh penglihatan seperti Andrej Karpathy, pendekatan inovatif ini membolehkan Dev

Ejen replit: panduan dengan contoh praktikalEjen replit: panduan dengan contoh praktikalMar 04, 2025 am 10:52 AM

Merevolusi pembangunan aplikasi: menyelam mendalam ke dalam ejen replit Bosan dengan gusti dengan persekitaran pembangunan yang kompleks dan fail konfigurasi yang tidak jelas? Ejen replit bertujuan untuk memudahkan proses mengubah idea ke dalam aplikasi berfungsi. Ini AI-P

Top 5 Genai dilancarkan pada Februari 2025: GPT-4.5, Grok-3 & More!Top 5 Genai dilancarkan pada Februari 2025: GPT-4.5, Grok-3 & More!Mar 22, 2025 am 10:58 AM

Februari 2025 telah menjadi satu lagi bulan yang berubah-ubah untuk AI generatif, membawa kita beberapa peningkatan model yang paling dinanti-nantikan dan ciri-ciri baru yang hebat. Dari Xai's Grok 3 dan Anthropic's Claude 3.7 Sonnet, ke Openai's G

Bagaimana cara menggunakan Yolo V12 untuk pengesanan objek?Bagaimana cara menggunakan Yolo V12 untuk pengesanan objek?Mar 22, 2025 am 11:07 AM

Yolo (anda hanya melihat sekali) telah menjadi kerangka pengesanan objek masa nyata yang terkemuka, dengan setiap lelaran bertambah baik pada versi sebelumnya. Versi terbaru Yolo V12 memperkenalkan kemajuan yang meningkatkan ketepatan

Cara Menggunakan Dall-E 3: Contoh, Contoh, dan CiriCara Menggunakan Dall-E 3: Contoh, Contoh, dan CiriMar 09, 2025 pm 01:00 PM

Dall-E 3: Alat Penciptaan Imej AI Generatif AI Generatif merevolusi penciptaan kandungan, dan Dall-E 3, model penjanaan imej terbaru OpenAI, berada di barisan hadapan. Dikeluarkan pada bulan Oktober 2023, ia dibina pada pendahulunya, Dall-E dan Dall-E 2

Elon Musk & Sam Altman bertembung lebih daripada $ 500 bilion projek StargateElon Musk & Sam Altman bertembung lebih daripada $ 500 bilion projek StargateMar 08, 2025 am 11:15 AM

Projek AI Stargate $ 500 bilion, yang disokong oleh gergasi teknologi seperti Openai, Softbank, Oracle, dan Nvidia, dan disokong oleh kerajaan A.S., bertujuan untuk mengukuhkan kepimpinan AI Amerika. Usaha bercita -cita tinggi ini menjanjikan masa depan yang dibentuk oleh AI Advanceme

5 grok 3 arahan yang dapat memudahkan kerja anda5 grok 3 arahan yang dapat memudahkan kerja andaMar 04, 2025 am 10:54 AM

Grok 3 - Elon Musk dan model AI terbaru Xai adalah ceramah bandar hari ini. Dari Andrej Karpathy kepada Influencers Tech, semua orang bercakap tentang keupayaan model baru ini. Pada mulanya, akses terhad kepada

Google ' s Gencast: Peramalan Cuaca dengan Demo Mini GencastGoogle ' s Gencast: Peramalan Cuaca dengan Demo Mini GencastMar 16, 2025 pm 01:46 PM

Google Deepmind's Gencast: AI Revolusioner untuk Peramalan Cuaca Peramalan cuaca telah menjalani transformasi dramatik, bergerak dari pemerhatian asas kepada ramalan berkuasa AI yang canggih. Google Deepmind's Gencast, tanah air

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

EditPlus versi Cina retak

EditPlus versi Cina retak

Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

MantisBT

MantisBT

Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).