Rumah > Peranti teknologi > AI > Pengambilan Rekursif untuk RAG: Pelaksanaan dengan Llamaindex

Pengambilan Rekursif untuk RAG: Pelaksanaan dengan Llamaindex

尊渡假赌尊渡假赌尊渡假赌
Lepaskan: 2025-03-02 09:22:11
asal
220 orang telah melayarinya

Recursive Retrieval for RAG: Implementation With LlamaIndex

Banyak aplikasi RAG menggunakan proses pengambilan semula yang dipermudahkan: Dokumen dibahagikan kepada ketulan, ditukar menjadi embeddings, dan disimpan dalam pangkalan data vektor. Pertanyaan mencetuskan pengambilan semula dokumen yang paling serupa berdasarkan ke atas persamaan. Walau bagaimanapun, pendekatan ini mengalami batasan, terutamanya dengan dataset yang luas. Pengambilan maklumat dan pengambilan maklumat suboptimal boleh menjejaskan ketepatan.

pengambilan semula rekursif meningkatkan ketepatan pengambilan dengan memanfaatkan struktur dokumen. Daripada mengambil bahagian secara langsung, ia mengutamakan ringkasan yang relevan, seterusnya menggerudi ke ketulan yang berkaitan untuk hasil yang lebih fokus.

Butiran artikel ini Rekursif Recursive dan membimbing anda melalui pelaksanaannya menggunakan llamaindex.

Rag dan Langchain

Langchain memudahkan integrasi data luaran dengan LLMS melalui pengambilan semula generasi tambahan (RAG).

pengambilan semula rekursif dijelaskan

Tidak seperti kaedah yang bergantung semata -mata pada embeddings mentah, Rekursif Retursive REPURIVE Ringkasan Ringkasan Dokumen, menghubungkannya dengan ketulan yang sepadan. Pertanyaan pada mulanya mengambil ringkasan yang relevan, kemudian menentukan maklumat berkaitan dalam potongan -potongan yang berkaitan dengan ringkasan tersebut. Pendekatan kontekstual ini meningkatkan kaitan maklumat.

Melaksanakan pengambilan semula rekursif dengan llamaindex

Bahagian ini membimbing anda melalui pelaksanaan langkah demi langkah pengambilan rekursif menggunakan LlamAindex, dari pemuatan dokumen ke pelaksanaan pertanyaan.

Langkah 1: Pemuatan Dokumen dan Penyediaan

Dokumen dimuatkan menggunakan

. Setiap dokumen menerima tajuk dan metadata (mis., Kategori) untuk penapisan yang dipertingkatkan. Dokumen yang dimuatkan disimpan dalam kamus untuk akses mudah. ​​SimpleDirectoryReader

from llama_index.core import SimpleDirectoryReader

# ... (Code for loading documents remains the same) ...
Salin selepas log masuk
Salin selepas log masuk

Langkah 2: LLM dan Persediaan Chunking

LLM (mis., Mini GPT-4O OpenAI) diasaskan, bersama-sama dengan pembahagi kalimat untuk penciptaan chunk dan pengurus panggilan balik untuk pemantauan proses.

from llama_index.llms.openai import OpenAI
from llama_index.core.callbacks import LlamaDebugHandler, CallbackManager
from llama_index.core.node_parser import SentenceSplitter

# ... (Code for LLM and chunking setup remains the same) ...
Salin selepas log masuk

Langkah 3: Penciptaan Indeks Vektor dan Ringkasan Generasi

Indeks vektor dibuat untuk setiap dokumen untuk membolehkan pengambilan semula berasaskan persamaan. Ringkasan yang dihasilkan oleh LLM disimpan sebagai objek

. IndexNode

from llama_index.core import VectorStoreIndex, SummaryIndex
from llama_index.core.schema import IndexNode

# ... (Code for building vector indices and generating summaries remains the same) ...
Salin selepas log masuk

Langkah 4: Pembinaan Indeks Vektor peringkat atas

Indeks vektor peringkat atas dibina dari ringkasan yang dihasilkan, membolehkan pengambilan awal ringkasan yang berkaitan sebelum mengakses ketulan terperinci.

# ... (Code for building the top-level vector index remains the same) ...
Salin selepas log masuk

Langkah 5: Persediaan pengambilan semula rekursif

Retriever rekursif dikonfigurasikan, menggabungkan retriever peringkat atas dengan pengambilan dokumen individu untuk memudahkan proses pengambilan hierarki.

from llama_index.core.retrievers import RecursiveRetriever

# ... (Code for setting up the recursive retriever remains the same) ...
Salin selepas log masuk

Langkah 6: Pertanyaan pengambilan semula rekursif

pertanyaan sampel dilaksanakan menggunakan retriever rekursif yang dikonfigurasikan.

from llama_index.core import SimpleDirectoryReader

# ... (Code for loading documents remains the same) ...
Salin selepas log masuk
Salin selepas log masuk

Kesimpulan

pengambilan semula rekursif, memanfaatkan ringkasan dokumen dan hierarki, meningkatkan kaitan ketulan yang diambil, terutama dengan dataset yang besar. Ia menawarkan penyelesaian yang mantap untuk membina sistem pengambilan yang tepat dalam persekitaran yang kaya dengan data. Penjelajahan lanjut teknik RAG boleh didapati dalam catatan blog yang dipautkan.

Atas ialah kandungan terperinci Pengambilan Rekursif untuk RAG: Pelaksanaan dengan Llamaindex. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan