Pengenalan
Talian Paip Generasi Tambahan (RAG) Meningkatkan bagaimana sistem AI berinteraksi dengan data tersuai, tetapi dua komponen kritikal yang akan kami fokuskan di sini: memori dan carian hibrid. Dalam artikel ini, kami akan meneroka bagaimana mengintegrasikan ciri-ciri yang kuat ini dapat mengubah sistem RAG anda dari alat soal jawab yang mudah ke dalam ejen perbualan yang cerdas dan cerdas.
Memori dalam RAG membolehkan sistem anda mengekalkan dan memanfaatkan sejarah perbualan, mewujudkan interaksi yang lebih koheren dan kontekstual yang relevan. Sementara itu, carian hibrid menggabungkan pemahaman semantik carian vektor dengan ketepatan pendekatan berasaskan kata kunci, dengan ketara meningkatkan ketepatan pengambilan saluran paip RAG anda.
Dalam artikel ini, kami akan menggunakan Llamaindex untuk melaksanakan kedua -dua memori dan carian hibrid menggunakan QDrant sebagai kedai vektor dan Gemini Google sebagai model bahasa besar kami.
Objektif pembelajaran
- Dapatkan pemahaman pelaksanaan tentang peranan memori dalam sistem RAG dan impaknya untuk menjana tindak balas yang tepat secara kontekstual.
- Belajar untuk mengintegrasikan Gemini LLM Google dan embeddings cepat QDrant dalam rangka Llamaindex, ini berguna kerana OpenAI adalah lalai LLM dan model embed yang digunakan dalam Llamaindex.
- Membangunkan pelaksanaan teknik carian hibrid menggunakan kedai vektor qdrant, menggabungkan vektor dan carian kata kunci untuk meningkatkan ketepatan pengambilan semula dalam aplikasi RAG.
- Terokai keupayaan QDrant sebagai kedai vektor, yang memberi tumpuan kepada fungsi carian hibrid terbina dalam dan ciri-ciri penyembuhan yang cepat.
Artikel ini diterbitkan sebagai sebahagian daripada Blogathon Sains Data.
Jadual Kandungan
- Carian Hibrid di QDrant
- Memori dan carian hibrid menggunakan llamaindex
- Langkah 1: Keperluan Pemasangan
- Langkah 2: Tentukan model LLM dan membenamkan
- Langkah 3: Memuatkan data anda
- Langkah 4: Menyediakan QDrant dengan Carian Hibrid
- Langkah 5: Mengindeks dokumen anda
- Langkah 6: Menanyakan enjin pertanyaan indeks
- Langkah 7: Tentukan Memori
- Langkah 8: Membuat enjin sembang dengan memori
- Langkah 9: Menguji Memori
- Soalan yang sering ditanya
Carian Hibrid di QDrant
Bayangkan anda sedang membina chatbot untuk tapak e-dagang yang besar. Seorang pengguna bertanya, "Tunjukkan kepada saya model iPhone terkini." Dengan carian vektor tradisional, anda mungkin mendapat hasil yang sama semantik, tetapi anda boleh terlepas perlawanan yang tepat. Carian kata kunci, sebaliknya, mungkin terlalu tegar. Carian hibrid memberi anda yang terbaik dari kedua -dua dunia:
- Carian vektor menangkap makna dan konteks semantik
- Carian kata kunci memastikan ketepatan untuk istilah tertentu
QDrant adalah pilihan kedai vektor kami untuk artikel ini, dan alasan yang baik:
- QDrant membuat pelaksanaan carian hibrid dengan mudah dengan hanya membolehkan parameter hibrid apabila ditakrifkan.
- Ia dilengkapi dengan model embedding yang dioptimumkan menggunakan Fastembed di mana model dimuatkan dalam format ONNX.
- Pelaksanaan QDrant mengutamakan melindungi maklumat sensitif, menawarkan pilihan penempatan serba boleh, meminimumkan masa tindak balas, dan mengurangkan perbelanjaan operasi.
Memori dan carian hibrid menggunakan llamaindex
Kami akan menyelam ke dalam pelaksanaan praktikal memori dan carian hibrid dalam rangka kerja Llamaindex, mempamerkan bagaimana ciri -ciri ini meningkatkan keupayaan pengambilan semula sistem Generasi Tambahan (RAG). Dengan mengintegrasikan komponen-komponen ini, kita boleh mencipta ejen perbualan yang lebih pintar dan konteks yang berkesan menggunakan kedua-dua data sejarah dan teknik carian lanjutan.
Langkah 1: Keperluan Pemasangan
Baiklah, mari kita pecahkan langkah demi langkah ini. Kami akan menggunakan llamaindex, kedai vektor qdrant, fastembed dari QDrant, dan model Gemini dari Google. Pastikan anda memasang perpustakaan ini:
! Pip memasang llama-index llama-index-llms-gemini llama-index-vector-stores-qdrant fastembed ! Pip memasang llama-index-embeddings-fastembed
Langkah 2: Tentukan model LLM dan membenamkan
Pertama, mari kita mengimport kebergantungan kami dan menetapkan kunci API kami:
Import OS dari Getpass Import Getpass dari llama_index.llms.gemini import Gemini dari llama_index.embeddings.fastembed import fastembedembedding Google_API_KEY = getpass ("Masukkan API Gemini anda:") os.environ ["Google_API_KEY"] = Google_API_KEY LLM = Gemini () # Gemini 1.5 Flash embed_model = fastembedembedding ()
Sekarang mari kita menguji jika API kini ditakrifkan dengan menjalankan LLM pada pertanyaan pengguna sampel.
llm_response = llm.complete ("Bilakah satu bahagian bermula?"). Teks cetak (llm_response)
Di Llamaindex, OpenAI adalah model lalai LLM dan embedding, untuk mengatasi bahawa kita perlu menentukan tetapan dari Llamaindex Core. Di sini kita perlu mengatasi kedua -dua model LLM dan embed.
dari tetapan import llama_index.core Settings.llm = llm Settings.embed_model = Embed_model
Langkah 3: Memuatkan data anda
Untuk contoh ini, mari kita anggap kita mempunyai PDF dalam folder data, kita boleh memuatkan folder data menggunakan pembaca SimpleDirectory di Llamaindex.
dari llama_index.core import SimpleDirectoryReader Dokumen = SimpleDirectoryReader ("./ Data/"). LOAD_DATA ()
Langkah 4: Menyediakan QDrant dengan Carian Hibrid
Kita perlu menentukan contoh qdrantvectorstore dan menetapkannya dalam ingatan untuk contoh ini. Kami juga boleh menentukan klien QDrant dengan perkhidmatan awan atau localhostnya, tetapi dalam artikel kami dalam ingatan, definisi dengan nama koleksi harus dilakukan.
Pastikan enable_hybrid = benar kerana ini membolehkan kita menggunakan keupayaan carian hibrid QDrant. Nama koleksi kami ialah `Paper`, kerana folder data mengandungi PDF pada kertas penyelidikan mengenai ejen.
dari llama_index.core import vectorstoreIndex, storageContext dari llama_index.vector_stores.qdrant import qdrantvectorstore import qdrant_client pelanggan = qdrant_client.qdrantClient ( Lokasi = ": Memori:", ) vector_store = qdrantvectorstore ( koleksi_name = "kertas", pelanggan = pelanggan, enable_hybrid = benar, # carian hibrid akan berlangsung batch_size = 20, )
Langkah 5: Mengindeks dokumen anda
Dengan melaksanakan ingatan dan carian hibrid dalam sistem RAG kami, kami telah mencipta lebih pintar dan konteks-a
storage_context = storageContext.from_defaults (vector_store = vector_store) indeks = vectorstoreindex.from_documents ( dokumen, storage_context = storage_context, )
Langkah 6: Menanyakan enjin pertanyaan indeks
Pengindeksan adalah bahagian di mana kita menentukan rantaian retriever dan penjana di Llamaindex. Ia memproses setiap dokumen dalam koleksi dokumen kami dan menghasilkan embeddings untuk kandungan setiap dokumen. Kemudian ia menyimpan embeddings ini di kedai vektor qdrant kami. Ia mewujudkan struktur indeks yang membolehkan pengambilan semula yang cekap. Semasa menentukan enjin pertanyaan, pastikan mod pertanyaan dalam hibrid.
query_engine = index.as_query_engine ( vector_store_query_mode = "hibrid" ) respons1 = query_engine.query ("Apakah maksud kehidupan?") cetak (respons1) respons2 = query_engine.query ("Berikan abstrak dalam 2 ayat") cetak (respons2)
Dalam enjin pertanyaan di atas, kami menjalankan dua pertanyaan yang berada dalam konteks dan yang lain di luar konteks. Inilah output yang kami dapat:
Output #respons-1 Teks yang disediakan memberi tumpuan kepada penggunaan model bahasa besar (LLMS) untuk merancang ejen autonomi. Ia tidak membincangkan makna kehidupan. #respons-2 Dokumen ini meneroka penggunaan model bahasa besar (LLMS) sebagai agen untuk menyelesaikan tugas kompleks. Ia memberi tumpuan kepada dua pendekatan utama: kaedah penguraian-pertama, di mana tugas itu dipecah menjadi sub-tugas sebelum pelaksanaan, dan Kaedah penguraian interleaved, yang secara dinamik menyesuaikan penguraian berdasarkan maklum balas.
Langkah 7: Tentukan Memori
Walaupun chatbot kami berfungsi dengan baik dan memberikan respons yang lebih baik, ia masih tidak mempunyai kesedaran kontekstual dalam pelbagai interaksi. Di sinilah ingatan masuk ke dalam gambar.
dari llama_index.core.Memory import chatmemorybuffer Memori = chatmemoryBuffer.from_defaults (token_limit = 3000)
Langkah 8: Membuat enjin sembang dengan memori
Kami akan membuat enjin sembang yang menggunakan kedua -dua carian dan ingatan hibrid. Dalam Llamaindex untuk aplikasi berasaskan RAG apabila kami mempunyai data luar atau luaran pastikan mod sembang adalah konteks.
chat_engine = index.as_chat_engine ( chat_mode = "konteks", Memori = Memori, system_prompt = ( "Anda adalah pembantu AI yang menjawab soalan pengguna" )) )
Langkah 9: Menguji Memori
Mari kita jalankan beberapa pertanyaan dan periksa sama ada memori berfungsi seperti yang diharapkan atau tidak.
dari ipython.display import markdown, paparan check1 = chat_engine.chat ("Beri abstrak dalam 2 ayat") check2 = chat_engine.chat ("Teruskan abstrak, tambahkan satu lagi ayat pada dua ayat sebelumnya") check3 = chat_engine.chat ("Buat abstrak di atas ke dalam puisi")
Kesimpulan
Kami meneroka bagaimana mengintegrasikan memori dan carian hibrid ke dalam sistem Generasi Tambahan (RAG) pengambilan semula dengan ketara meningkatkan keupayaan mereka. Dengan menggunakan llamaindex dengan qdrant sebagai kedai vektor dan Gemini Google sebagai model bahasa yang besar, kami menunjukkan bagaimana carian hibrid dapat menggabungkan kekuatan vektor dan pengambilan berasaskan kata kunci untuk memberikan hasil yang lebih tepat. Penambahan memori terus meningkatkan pemahaman kontekstual, yang membolehkan chatbot memberikan respons yang koheren merentasi pelbagai interaksi. Bersama-sama, ciri-ciri ini mewujudkan sistem yang lebih pintar dan konteks, menjadikan saluran paip RAG lebih berkesan untuk aplikasi AI yang kompleks.
Takeaways utama
- Pelaksanaan komponen memori dalam saluran paip RAG dengan ketara meningkatkan kesedaran dan keupayaan kontekstual chatbot untuk mengekalkan perbualan yang koheren merentasi pelbagai interaksi.
- Integrasi carian hibrid menggunakan QDRant sebagai kedai vektor, menggabungkan kekuatan kedua -dua vektor dan carian kata kunci untuk meningkatkan ketepatan pengambilan semula dan kaitan dalam sistem RAG yang meminimumkan risiko halusinasi. Penafian, ia tidak sepenuhnya menghapuskan halusinasi dan bukannya mengurangkan risiko.
- Penggunaan chatmemorybuffer Llamaindex untuk pengurusan sejarah perbualan yang cekap, dengan had token yang boleh dikonfigurasikan untuk mengimbangi pengekalan konteks dan sumber pengiraan.
- Penggabungan model Gemini Google sebagai pembekal LLM dan penyembuhan dalam rangka Llamaindex mempamerkan fleksibiliti Llamaindex dalam menampung model AI yang berbeza dan teknik penyembuhan.
Soalan yang sering ditanya
Q 1. Apakah carian hibrid, dan mengapa penting dalam kain?A. Carian hibrid menggabungkan carian vektor untuk pemahaman semantik dan carian kata kunci untuk ketepatan. Ia meningkatkan ketepatan keputusan dengan membenarkan sistem mempertimbangkan kedua -dua konteks dan istilah yang tepat, yang membawa kepada hasil pengambilan yang lebih baik, terutamanya dalam dataset yang kompleks.
S2. Mengapa menggunakan qdrant untuk carian hibrid dalam kain?A. QDrant menyokong carian hibrid keluar dari kotak, dioptimumkan untuk embeddings cepat, dan berskala. Ini menjadikannya pilihan yang boleh dipercayai untuk melaksanakan kedua-dua vektor dan carian berasaskan kata kunci dalam sistem RAG, memastikan prestasi pada skala.
Q3. Bagaimanakah memori meningkatkan sistem RAG?A. Memori dalam sistem RAG membolehkan pengekalan sejarah perbualan, yang membolehkan chatbot memberikan respons yang lebih koheren dan kontekstual yang tepat merentasi interaksi, dengan ketara meningkatkan pengalaman pengguna.
Q 4. Bolehkah saya menggunakan model tempatan dan bukan API berasaskan awan untuk aplikasi RAG?A. Ya, anda boleh menjalankan LLM tempatan (seperti Ollama atau Huggingface) dan bukannya menggunakan API berasaskan awan seperti OpenAI. Ini membolehkan anda mengekalkan kawalan penuh data anda tanpa memuat naiknya ke pelayan luaran, yang merupakan kebimbangan umum untuk aplikasi sensitif privasi.
Media yang ditunjukkan dalam artikel ini tidak dimiliki oleh Analytics Vidhya dan digunakan atas budi bicara penulis.
Atas ialah kandungan terperinci Memori dan carian hibrid dalam kain menggunakan llamaindex. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

https://undressaitool.ai/ adalah aplikasi mudah alih yang kuat dengan ciri -ciri AI canggih untuk kandungan dewasa. Buat imej atau video pornografi AI yang dihasilkan sekarang!

Tutorial menggunakan Undressai untuk membuat gambar/video lucah: 1. Buka pautan web alat yang sepadan; 2. Klik butang Alat; 3. Muat naik kandungan yang diperlukan untuk pengeluaran mengikut halaman yang diminta; 4. Simpan dan nikmati hasilnya.

Alamat rasmi Undress AI adalah: https: //undressaitool.ai/; Undressai adalah aplikasi mudah alih yang kuat dengan ciri -ciri AI yang canggih untuk kandungan dewasa. Buat imej atau video pornografi AI yang dihasilkan sekarang!

Tutorial menggunakan Undressai untuk membuat gambar/video lucah: 1. Buka pautan web alat yang sepadan; 2. Klik butang Alat; 3. Muat naik kandungan yang diperlukan untuk pengeluaran mengikut halaman yang diminta; 4. Simpan dan nikmati hasilnya.

Alamat rasmi Undress AI adalah: https: //undressaitool.ai/; Undressai adalah aplikasi mudah alih yang kuat dengan ciri -ciri AI yang canggih untuk kandungan dewasa. Buat imej atau video pornografi AI yang dihasilkan sekarang!

Tutorial menggunakan Undressai untuk membuat gambar/video lucah: 1. Buka pautan web alat yang sepadan; 2. Klik butang Alat; 3. Muat naik kandungan yang diperlukan untuk pengeluaran mengikut halaman yang diminta; 4. Simpan dan nikmati hasilnya.
![[Imej gaya Ghibli dengan AI] Memperkenalkan Cara Membuat Imej Percuma Dengan CHATGPT dan Hak Cipta](https://img.php.cn/upload/article/001/242/473/174707263295098.jpg?x-oss-process=image/resize,p_40)
Model terkini GPT-4O yang dikeluarkan oleh OpenAI bukan sahaja dapat menghasilkan teks, tetapi juga mempunyai fungsi penjanaan imej, yang telah menarik perhatian yang meluas. Ciri yang paling menarik ialah generasi "ilustrasi gaya Ghibli". Hanya muat naik foto ke Chatgpt dan berikan arahan mudah untuk menghasilkan imej yang mengasyikkan seperti kerja di Studio Ghibli. Artikel ini akan menerangkan secara terperinci proses operasi sebenar, pengalaman kesan, serta kesilapan dan isu hak cipta yang perlu diberi perhatian. Untuk butiran model terkini "O3" yang dikeluarkan oleh OpenAI, sila klik di sini ⬇️ Penjelasan terperinci mengenai Openai O3 (Chatgpt O3): Ciri-ciri, Sistem Harga dan Pengenalan O4-Mini Sila klik di sini untuk versi Bahasa Inggeris Artikel Ghibli ⬇️ Buat ji dengan chatgpt

Sebagai kaedah komunikasi baru, penggunaan dan pengenalan CHATGPT di kerajaan tempatan menarik perhatian. Walaupun trend ini sedang berjalan di pelbagai bidang, sesetengah kerajaan tempatan enggan menggunakan CHATGPT. Dalam artikel ini, kami akan memperkenalkan contoh pelaksanaan ChatGPT di kerajaan tempatan. Kami akan meneroka bagaimana kami mencapai peningkatan kualiti dan kecekapan dalam perkhidmatan kerajaan tempatan melalui pelbagai contoh pembaharuan, termasuk penciptaan dokumen dan dialog yang menyokong rakyat. Bukan sahaja pegawai kerajaan tempatan yang bertujuan untuk mengurangkan beban kerja kakitangan dan meningkatkan kemudahan untuk rakyat, tetapi juga berminat dengan kes penggunaan lanjutan.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

EditPlus versi Cina retak
Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

Dreamweaver CS6
Alat pembangunan web visual

Muat turun versi mac editor Atom
Editor sumber terbuka yang paling popular

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Penyesuai Pelayan SAP NetWeaver untuk Eclipse
Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.
