Rumah > Peranti teknologi > AI > Rag pembetulan (Crag) dalam tindakan

Rag pembetulan (Crag) dalam tindakan

尊渡假赌尊渡假赌尊渡假赌
Lepaskan: 2025-03-13 10:37:08
asal
405 orang telah melayarinya

Generasi Pengambilan Generasi (RAG) memberi kuasa kepada model bahasa yang besar (LLMS) dengan memasukkan pengambilan maklumat. Ini membolehkan LLM untuk mengakses pangkalan pengetahuan luaran, menghasilkan tindak balas yang lebih tepat, semasa, dan kontekstual yang sesuai. RAG Pembetulan (Crag), teknik RAG yang lebih maju, meningkatkan lagi ketepatan dengan memperkenalkan mekanisme refleksi diri dan penilaian diri untuk dokumen yang diambil.

Objektif pembelajaran utama

Artikel ini merangkumi:

  • Mekanisme teras Crag dan integrasinya dengan carian web.
  • Penilaian Relevan Dokumen CRAG menggunakan pemarkahan binari dan penulisan pertanyaan.
  • Perbezaan utama antara Crag dan kain tradisional.
  • Pelaksanaan hands-on menggunakan python, langchain, dan tavily.
  • Kemahiran praktikal dalam mengkonfigurasi penilai, penulisan pertanyaan, dan alat carian web untuk mengoptimumkan ketepatan pengambilan dan tindak balas.

Diterbitkan sebagai sebahagian daripada Blogathon Sains Data.

Jadual Kandungan

  • Mekanisme asas Crag
  • Crag vs Rag Tradisional
  • Pelaksanaan CRAG praktikal
  • Cabaran crag
  • Kesimpulan
  • Soalan yang sering ditanya

Mekanisme asas Crag

CRAG meningkatkan kebolehpercayaan output LLM dengan mengintegrasikan carian web ke dalam proses pengambilan dan penjanaannya (lihat Rajah 1).

Pengambilan dokumen:

  • Pengambilan data: Data yang berkaitan diindeks, dan alat carian web (seperti tavily AI) dikonfigurasi untuk pengambilan data masa nyata.
  • Pengambilan awal: Dokumen diambil dari asas pengetahuan statik berdasarkan pertanyaan pengguna.

Penilaian Relevan:

Penilai menilai kaitan dokumen yang diambil. Jika lebih daripada 70% dokumen dianggap tidak relevan, tindakan pembetulan dimulakan; Jika tidak, hasil penjanaan tindak balas.

Integrasi Carian Web:

Sekiranya kaitan dokumen tidak mencukupi, Crag menggunakan carian web:

  • Pemulihan pertanyaan: Pertanyaan asal diubahsuai untuk mengoptimumkan hasil carian web.
  • Pelaksanaan Carian Web: Alat seperti Tavily AI mengambil data tambahan, memastikan akses kepada maklumat semasa dan pelbagai.

Generasi Respons:

CRAG mensintesis data dari kedua -dua pengambilan awal dan carian web untuk membuat tindak balas yang tepat dan tepat.

Rag pembetulan (Crag) dalam tindakan

Crag vs Rag Tradisional

Crag secara aktif mengesahkan dan menyempurnakan maklumat yang diambil, tidak seperti kain tradisional, yang bergantung kepada dokumen yang diambil tanpa pengesahan. Crag sering menggabungkan carian web masa nyata, memberikan akses kepada maklumat yang paling terkini, tidak seperti pergantungan tradisional RAG pada pangkalan pengetahuan statik. Ini menjadikan CRAG sesuai untuk aplikasi yang memerlukan ketepatan yang tinggi dan integrasi data masa nyata.

Pelaksanaan CRAG praktikal

Bahagian ini memperincikan pelaksanaan CRAG menggunakan Python, Langchain, dan Tavily.

Langkah 1: Pemasangan Perpustakaan

Pasang perpustakaan yang diperlukan:

 ! Pip Pasang Tiktoken Langchain-Openai Langchainhub Chromadbang Langchain Langraph Tavily-Python
! Pip pemasangan -qu pypdf langchain_community
Salin selepas log masuk

Langkah 2: Konfigurasi Kunci API

Tetapkan kunci API anda:

 Import OS
os.environ ["tavily_api_key"] = ""
os.environ ["openai_api_key"] = ""
Salin selepas log masuk

Langkah 3: Import Perpustakaan

Import Perpustakaan yang diperlukan (kod yang ditinggalkan untuk keringkasan, tetapi serupa dengan contoh asal).

Langkah 4: Dokumen Chunking dan Penciptaan Retriever

(Kod yang ditinggalkan untuk keringkasan, tetapi sama dengan contoh asal, menggunakan PYPDFLoader, RecursiveCharactertextsplitter, Openaiembeddings, dan Chroma).

Langkah 5: Persediaan Rantaian Rag

(Kod yang ditinggalkan untuk keringkasan, tetapi serupa dengan contoh asal, menggunakan hub.pull("rlm/rag-prompt") dan ChatOpenAI ).

Langkah 6: Persediaan Penilai

(Kod yang ditinggalkan untuk keringkasan, tetapi serupa dengan contoh asal, menentukan kelas Evaluator dan menggunakan ChatOpenAI untuk penilaian).

Langkah 7: Persediaan Penulisan Pertanyaan

(Kod yang ditinggalkan untuk keringkasan, tetapi serupa dengan contoh asal, menggunakan ChatOpenAI untuk penulisan pertanyaan).

Langkah 8: Persediaan Carian Web

 dari langchain_community.tools.Tavily_Search Import TavilySearchResults
web_search_tool = tavilysearchResults (k = 3)
Salin selepas log masuk

Langkah 9-12: Persediaan dan pelaksanaan aliran kerja Langgraph

(Kod yang ditinggalkan untuk keringkasan, tetapi secara konseptual sama dengan contoh asal, yang menentukan GraphState , nod fungsi ( retrieve , generate , evaluate_documents , transform_query , web_search ), dan menghubungkannya menggunakan StateGraph .) Output akhir dan perbandingan dengan kain tradisional juga konseptual sama.

Cabaran crag

Keberkesanan Crag sangat bergantung pada ketepatan penilai. Penilai yang lemah boleh memperkenalkan kesilapan. Skalabiliti dan kebolehsuaian juga menjadi kebimbangan, yang memerlukan kemas kini dan latihan yang berterusan. Integrasi carian web memperkenalkan risiko maklumat yang berat sebelah atau tidak boleh dipercayai, yang memerlukan mekanisme penapisan yang mantap.

Kesimpulan

Crag ketara meningkatkan ketepatan dan kebolehpercayaan output LLM. Keupayaannya untuk menilai dan menambah maklumat yang diambil dengan data web masa nyata menjadikannya berharga untuk aplikasi yang menuntut ketepatan tinggi dan maklumat terkini. Walau bagaimanapun, penghalusan berterusan adalah penting untuk menangani cabaran yang berkaitan dengan ketepatan evaluator dan kebolehpercayaan data web.

Takeaways Utama (serupa dengan yang asal, tetapi diubahsuai untuk kesimpulan)

  • CRAG meningkatkan respons LLM menggunakan carian web untuk maklumat semasa dan relevan.
  • Evaluatornya memastikan maklumat berkualiti tinggi untuk penjanaan respons.
  • Transformasi pertanyaan mengoptimumkan hasil carian web.
  • Crag secara dinamik mengintegrasikan data web masa nyata, tidak seperti kain tradisional.
  • Crag secara aktif mengesahkan maklumat, mengurangkan kesilapan.
  • Crag bermanfaat untuk aplikasi yang memerlukan ketepatan dan data masa nyata yang tinggi.

Soalan -soalan yang sering ditanya (serupa dengan yang asal, tetapi diubahsuai untuk kesesuaian)

  • S1: Apa itu Crag? A: Rangka kerja RAG maju yang mengintegrasikan carian web untuk ketepatan dan kebolehpercayaan yang lebih baik.
  • S2: Crag vs kain tradisional? A: Crag secara aktif mengesahkan dan menyempurnakan maklumat yang diambil.
  • S3: Peranan penilai? A: Menilai kaitan dokumen dan pencetus pembetulan.
  • S4: Dokumen yang tidak mencukupi? A: Suplemen Crag dengan carian web.
  • S5: Mengendalikan kandungan web yang tidak boleh dipercayai? A: Kaedah penapisan lanjutan diperlukan.

(Nota: Imej tetap tidak berubah dan dimasukkan seperti dalam input asal.)

Atas ialah kandungan terperinci Rag pembetulan (Crag) dalam tindakan. 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