← 返回列表

Soalan Temuduga Siri AI 11: Bagaimana Mengoptimumkan RAG?

Pengoptimuman RAG bukanlah pelarasan satu peringkat, tetapi proses pengoptimuman rantaian penuh. Saya akan memberikan strategi pengoptimuman sistematik dari empat dimensi: sisi indeks data, sisi pengambilan, sisi penjanaan, dan sisi penilaian, serta menyertakan pengalaman praktikal yang boleh disebut dalam temuduga.


Satu: Pengoptimuman Sisi Indeks Data (meningkatkan kualiti "pangkalan pengetahuan")

Ini adalah bahagian yang paling sering diabaikan tetapi memberikan kesan paling cepat.

Titik Pengoptimuman Masalah Cara Tepat Metrik Kesan
Penghuraian Dokumen Jadual dan carta alir dalam PDF diabaikan, atau teks rosak, urutan salah. Gunakan pustaka penghuraian yang lebih baik (seperti unstructured, mod pengekalan susun atur pypdf); ekstrak jadual dengan pandas dan tukar ke Markdown. Kadar ingat semula +5~15%
Saiz Cebisan Teks Cebisan terlalu kecil kehilangan konteks (contohnya, rujukan "dia" dalam "pendapatan dia tahun ini meningkat" hilang); cebisan terlalu besar menyebabkan banyak bunyi dalam pengambilan. Eksperimen dengan saiz cebisan berbeza (256/512/768 token), pertindihan 10~20%; untuk dokumen panjang, potong berdasarkan sempadan semantik (perenggan/tajuk) bukan panjang tetap. Kadar tepat / Kesetiaan
Metadata Tambahan Cebisan yang berkaitan dijumpai tetapi tidak dapat dikesan kembali ke sumber atau masa, atau perlu ditapis mengikut domain. Tambah metadata pada setiap cebisan: sumber (nama fail/URL), stempel masa, nombor halaman, jenis dokumen. Gunakan penapis semasa pengambilan (cth: jenis dokumen == 'undang-undang'). Ketepatan penapisan
Pemilihan Model Embedding Embedding umum berprestasi buruk dalam domain khusus (perubatan, kod, undang-undang). Gunakan model terlaras domain (BGE‑large‑zh, GTE‑Qwen2‑7B‑instruct); atau laraskan model embedding sendiri (dengan triplet loss). MRR@10 +10~20%

Dua: Pengoptimuman Sisi Pengambilan (membuat "membaca buku" lebih tepat)

Pengambilan menentukan kualiti "bahan rujukan" yang diberi kepada LLM.

Titik Pengoptimuman Masalah Cara Tepat Kesan
Pengambilan Hibrid Pengambilan vektor tidak dapat memadankan istilah tepat (cth: model produk ABC-123), pengambilan kata kunci tidak dapat memahami sinonim. Gunakan pengambilan vektor (semantik) dan BM25 (kata kunci) secara serentak, gabungkan dengan pemberat (cth: 0.7vektor + 0.3BM25) atau penyusunan semula. Kadar ingat semula +10~25%
Penyusunan Semula Hasil teratas dari pengambilan vektor belum tentu paling relevan, hasil ke-10 mungkin yang terbaik. Gunakan model cross‑encoder (seperti BGE‑reranker-v2, Cohere Rerank) untuk memberi skor semula pada set calon (cth: 20 teratas), ambil top‑K. Peningkatan ketara dalam kadar tepat (terutama top‑1)
Penulisan Semula Pertanyaan Soalan pengguna kabur atau rujukan tidak jelas dalam perbualan berbilang pusingan ("berapa harganya?"). Gunakan LLM untuk menulis semula soalan asal ke bentuk yang lebih sesuai untuk pengambilan (cth: "Berapa harga iPhone 15?"); atau lengkapkan menggunakan sejarah perbualan. Kadar ingat semula +5~15%
HyDE Soalan pengguna terlalu pendek atau abstrak (cth: "terangkan fotosintesis"), pengambilan langsung kurang berkesan. Minta LLM jana jawapan hipotesis dahulu, kemudian gunakan jawapan itu untuk mengambil dokumen. Sesuai untuk domain terbuka, tapi tidak sesuai untuk Q&A fakta tepat
Pelarasan Top‑K K terlalu kecil mungkin terlepas maklumat penting; K terlalu besar meningkatkan penggunaan token dan bunyi. Eksperimen dengan K=3/5/10, perhatikan keseimbangan antara kadar ingat semula dan kesetiaan jawapan. Trade‑off kecekapan dan kesan

Tiga: Pengoptimuman Sisi Penjanaan (membuat LLM menggunakan bahan rujukan dengan baik)

Walaupun pengambilan tepat, jika prompt tidak baik atau model lemah, ia tidak berguna.

Titik Pengoptimuman Masalah Cara Tepat Kesan
Kejuruteraan Prompts LLM mengabaikan kandungan yang diambil, atau mereka maklumat. Beri arahan jelas: "Hanya berdasarkan bahan rujukan yang disediakan jawab soalan. Jika bahan tidak mencukupi atau tidak relevan, jawab 'Tiada maklumat mencukupi'." Sertakan contoh beberapa pukulan (few‑shot) yang menunjukkan cara memetik sumber. Kesetiaan +20~40%
Mampatan Konteks Kandungan yang diambil terlalu panjang (melebihi tetingkap konteks model), atau kebanyakannya bunyi. Gunakan LLMLingua atau konteks selektif untuk memampatkan, hanya simpan ayat yang paling relevan sebelum dihantar ke LLM. Kurangkan risiko kehilangan maklumat
Peningkatan Model LLM Model kecil (7B) tidak dapat melakukan penaakulan kompleks, atau tidak ingat konteks panjang. Tukar ke model yang lebih kuat (GPT‑4o, Claude 3.5 Sonnet, Qwen2.5‑72B). Peningkatan ketara dalam ketepatan penaakulan
Penstriman dan Petikan Pengguna tidak dapat mengesahkan kebolehpercayaan jawapan. Semasa penjanaan, suruh LLM output [petikan:1] yang sepadan dengan nombor dokumen yang diambil. Lampirkan pautan asal di bahagian belakang. Kepercayaan pengguna + kebolehdebugan
Penentukuran Penolakan Jawapan Model mereka jawapan apabila tidak sepatutnya, atau kata tidak tahu apabila sepatutnya tahu. Tetapkan ambang persamaan: jika persamaan kosinus antara cebisan top‑1 dan soalan < 0.7, beritahu LLM "bahan tidak relevan". Kurangkan kadar halusinasi

Empat: Sisi Penilaian dan Iterasi (tahu ke mana hendak laraskan)

Tanpa pengukuran, tidak boleh dioptimumkan.

Titik Pengoptimuman Cara Metrik
Membina Set Penilaian Sediakan 100~300 soalan pengguna sebenar + jawapan standard + ID dokumen yang betul untuk diambil. Meliputi kesukaran dan niat yang berbeza.
Penilaian Automatik Gunakan RAGAS (Faithfulness, Answer Relevance, Context Recall) atau TruLens. Tiga metrik utama: Kesetiaan, Kerelevanan Jawapan, Kadar Ingat Semula Konteks.
Penilaian Manual Setiap minggu uji 20 kes buruk, analisis jenis kesilapan (kegagalan pengambilan / kesilapan penjanaan / kekurangan pangkalan pengetahuan). Keutamaan penambahbaikan.
Ujian A/B Dalam persekitaran pengeluaran, uji strategi pengambilan berbeza (contohnya BM25 vs pengambilan hibrid) dalam baldi berasingan. Metrik dalam talian: kepuasan pengguna, kadar tanpa jawapan.

Lima: "Pengalaman Praktikal" yang boleh disebut dalam Temuduga (poin bonus)

"Dalam projek RAG yang saya uruskan, pada mulanya kadar tepat garis dasar hanya 67%. Saya melakukan tiga perkara:
1. Tukar cebisan dari 1024 tetap kepada pemotongan semantik dinamik (mengikut tajuk + perenggan), kadar tepat meningkat ke 74%;
2. Tambah pengambilan hibrid (vektor + BM25) dan model penyusunan semula kecil, kadar tepat naik ke 83%;
3. Optimumkan prompt dan wajibkan output [Maklumat berkaitan tidak dijumpai], kadar halusinasi turun dari 22% ke bawah 5%.

Selain itu, kami membina saluran penilaian berterusan, setiap kali perubahan, jalankan skor RAGAS pada 200 soalan untuk memastikan tiada degradasi."


Kesimpulan Akhir: Peta Jalan Pengoptimuman RAG yang Lengkap

Lapisan Data ─→ Pembersihan dokumen, pengoptimuman cebisan, penambahan metadata, embedding domain
Lapisan Pengambilan ─→ Pengambilan hibrid, penyusunan semula, penulisan semula pertanyaan, HyDE, pelarasan Top-K
Lapisan Penjanaan ─→ Pengukuhan prompts, arahan, mampatan, petikan, ambang penolakan
Lapisan Penilaian ─→ Set penilaian, RAGAS, analisis manual, eksperimen A/B

评论

暂无已展示的评论。

发表评论(匿名)