All Products
Search
Document Center

Alibaba Cloud Model Studio:Optimalkan kinerja RAG

Last Updated:Mar 30, 2026

Jika Anda menemui pengambilan pengetahuan yang tidak lengkap atau konten yang tidak akurat saat menggunakan fitur Generasi yang Diperkaya dengan Pengambilan Data (RAG) di Alibaba Cloud Model Studio, topik ini memberikan saran dan contoh untuk meningkatkan kinerja RAG.

1. Pengenalan alur kerja RAG

RAG adalah teknik yang menggabungkan pengambilan informasi dengan pembuatan teks. Teknik ini memungkinkan model menggunakan informasi yang relevan dari basis pengetahuan eksternal saat menghasilkan jawaban.

Alur kerjanya mencakup beberapa tahap utama, termasuk penguraian dan pemotongan, penyimpanan vektor, pengambilan dan pengingat kembali, serta pembuatan jawaban.

image.jpeg

Topik ini membahas cara mengoptimalkan kinerja RAG dengan fokus pada tahap penguraian & pemotongan, pengambilan & pengingat kembali, dan pembuatan jawaban.

2. Mengoptimalkan kinerja RAG

2.1 Persiapan

Pertama, pastikan dokumen yang Anda impor ke basis pengetahuan memenuhi persyaratan berikut:

  • Sertakan Pengetahuan yang Relevan: Jika basis pengetahuan kekurangan informasi yang relevan, kemungkinan besar model tidak akan dapat menjawab pertanyaan terkait. Untuk menyelesaikan masalah ini, perbarui basis pengetahuan dan tambahkan informasi yang diperlukan.

  • Gunakan Format Markdown (Disarankan): Konten PDF memiliki format yang kompleks, dan hasil penguraian mungkin tidak ideal. Kami sarankan Anda terlebih dahulu mengonversi PDF ke format dokumen teks, seperti Markdown, DOC, atau DOCX. Misalnya, Anda dapat menggunakan alat DashScopeParse di Model Studio untuk mengonversi PDF ke format Markdown, dan kemudian gunakan model untuk mengatur format. Ini juga dapat menghasilkan hasil yang baik.

    Bagaimana cara menangani ilustrasi dalam dokumen?

    Basis pengetahuan saat ini tidak mendukung penguraian konten video atau audio dalam dokumen.
  • Ekspresi Konten yang Jelas, Struktur yang Masuk Akal, dan Tanpa Gaya Khusus: Tata letak konten dokumen juga sangat mempengaruhi kinerja RAG. Untuk informasi lebih lanjut, lihat Bagaimana Dokumen Harus Diformat untuk Mendukung RAG?.

  • Cocokkan Bahasa Prompt: Jika prompt pengguna sebagian besar dalam bahasa selain dari konten sumber, seperti bahasa Inggris, kami sarankan agar konten dokumen Anda juga dalam bahasa tersebut. Jika diperlukan, misalnya, untuk istilah profesional dalam dokumen, Anda dapat menggunakan dua bahasa atau lebih.

  • Hilangkan Ambiguitas Entitas: Standarisasi ekspresi untuk entitas yang sama dalam dokumen. Misalnya, Anda dapat menstandarkan "ML", "Machine Learning", dan "machine learning" menjadi "machine learning".

    Anda dapat memasukkan dokumen ke dalam model untuk membantu Anda menstandarkannya. Jika dokumen panjang, Anda dapat membaginya menjadi beberapa bagian dan memasukkannya satu per satu.

Lima persiapan ini adalah dasar untuk memastikan efektivitas optimasi RAG selanjutnya. Setelah Anda menyelesaikannya, Anda dapat mulai memahami dan mengoptimalkan setiap bagian aplikasi RAG secara mendalam.

2.2 Tahap penguraian dan pemotongan

Bagian ini hanya memperkenalkan item konfigurasi yang didukung oleh Model Studio untuk optimasi dalam tahap pemotongan RAG.

Pertama, dokumen yang Anda impor ke basis pengetahuan diurai dan dipotong. Tujuan utama pemotongan adalah untuk meminimalkan dampak informasi pengganggu selama proses vektorisasi berikutnya sambil mempertahankan integritas semantik. Oleh karena itu, strategi pemotongan dokumen yang Anda pilih saat membuat basis pengetahuan memiliki dampak signifikan pada kinerja RAG. Jika metode pemotongan tidak tepat, hal ini dapat menyebabkan masalah berikut:

Potongan teks terlalu pendek

Potongan teks terlalu panjang

Pemotongan semantik yang jelas

image

image

image

Potongan yang terlalu pendek dapat kehilangan informasi semantik, yang mengarah pada kegagalan pencocokan selama pengambilan.

Potongan yang terlalu panjang dapat mencakup topik yang tidak relevan, menyebabkan informasi yang tidak terkait dikembalikan selama pengingatan kembali.

Potongan dengan pemotongan semantik paksa dapat menyebabkan konten hilang dari pengingatan kembali.

Oleh karena itu, dalam aplikasi praktis, Anda harus berusaha membuat informasi dalam potongan teks lengkap sambil menghindari informasi pengganggu yang berlebihan. Model Studio merekomendasikan agar Anda melakukan tindakan berikut:

  1. Saat membuat basis pengetahuan, pilih Pemotongan Cerdas untuk metode pemotongan dokumen.

  2. Setelah berhasil mengimpor dokumen ke basis pengetahuan, periksa dan perbaiki isi potongan teks secara manual.

2.2.1 Pemotongan cerdas

Memilih panjang potongan teks yang tepat untuk basis pengetahuan Anda tidaklah mudah karena Anda harus mempertimbangkan banyak faktor, seperti:

  • Jenis Dokumen: Misalnya, untuk literatur profesional, meningkatkan panjang biasanya membantu mempertahankan lebih banyak informasi kontekstual. Untuk posting media sosial, mempersingkat panjang dapat menangkap semantik dengan lebih akurat.

  • Kompleksitas Prompt: Secara umum, jika prompt pengguna kompleks dan spesifik, Anda mungkin perlu meningkatkan panjang. Sebaliknya, mempersingkat panjang lebih sesuai.

Kesimpulan ini tidak selalu berlaku untuk semua situasi. Anda perlu memilih alat yang tepat dan bereksperimen berulang kali untuk menemukan panjang potongan teks yang tepat. Misalnya, LlamaIndex menyediakan fungsi evaluasi untuk metode pemotongan yang berbeda. Namun, proses ini bisa sulit.

Jika Anda ingin mencapai hasil yang baik dengan cepat, kami sarankan Anda memilih Intelligent Splitting untuk Document Splitting saat Anda membuat basis pengetahuan.

image

Saat strategi ini diterapkan, basis pengetahuan melakukan langkah-langkah berikut:

  1. Pertama, gunakan pemisah kalimat bawaan sistem untuk membagi dokumen menjadi beberapa paragraf.

  2. Berdasarkan paragraf yang dibagi, pilih titik pemotongan secara adaptif untuk pemotongan berdasarkan relevansi semantik (pemotongan semantik), bukan berdasarkan panjang tetap.

Selama proses ini, basis pengetahuan berusaha memastikan integritas semantik dari setiap bagian dokumen dan mencoba menghindari pembagian dan pemotongan yang tidak perlu. Strategi ini diterapkan pada semua dokumen dalam basis pengetahuan ini, termasuk dokumen yang diimpor kemudian.

2.2.2 Memperbaiki isi potongan teks

Dalam proses pemotongan aktual, pemotongan yang tidak terduga atau masalah lainnya masih dapat terjadi. Misalnya, spasi dalam teks kadang-kadang diurai sebagai %20 setelah pemotongan.

image

Oleh karena itu, Model Studio merekomendasikan agar Anda melakukan pemeriksaan manual setelah mengimpor dokumen ke basis pengetahuan untuk memastikan integritas semantik dan kebenaran isi potongan teks. Jika Anda menemukan pemotongan yang tidak terduga atau kesalahan penguraian lainnya, Anda dapat mengedit potongan teks secara langsung untuk memperbaikinya. Setelah Anda menyimpan perubahan, isi asli dari potongan teks menjadi tidak valid, dan konten baru digunakan untuk pengambilan basis pengetahuan.

Catatan bahwa tindakan ini hanya memodifikasi potongan teks dalam basis pengetahuan, bukan dokumen asli atau tabel data dalam manajemen data (penyimpanan sementara). Oleh karena itu, jika Anda mengimpor dokumen tersebut ke basis pengetahuan lagi nanti, Anda harus melakukan pemeriksaan dan koreksi manual lainnya.

2.3 Tahap pengambilan dan recall

Bagian ini hanya memperkenalkan item konfigurasi yang didukung oleh Model Studio untuk optimasi dalam tahap pengambilan dan pengingatan kembali.

Masalah utama dalam tahap pengambilan dan pengingatan kembali adalah sulit menemukan potongan teks yang paling relevan dengan prompt dan berisi jawaban yang benar dari banyak potongan teks dalam basis pengetahuan. Masalah ini dapat dipecah menjadi jenis-jenis berikut:

Tipe Masalah

Strategi Perbaikan

Dalam skenario percakapan multi-putaran, prompt pengguna mungkin tidak lengkap atau ambigu.

Aktifkan penulisan ulang percakapan multi-putaran. Basis pengetahuan secara otomatis menulis ulang prompt pengguna menjadi bentuk yang lebih lengkap untuk lebih cocok dengan pengetahuan.

Basis pengetahuan berisi dokumen dari beberapa kategori. Saat Anda mencari dalam dokumen dari Kategori A, hasil pengingatan kembali mencakup potongan teks dari kategori lain, seperti Kategori B.

Kami sarankan Anda menambahkan tag ke dokumen. Saat basis pengetahuan mengambil informasi, ia pertama-tama menyaring dokumen yang relevan berdasarkan tag.

Hanya basis pengetahuan pencarian dokumen yang mendukung penambahan tag ke dokumen.

Basis pengetahuan berisi banyak dokumen dengan struktur serupa. Misalnya, mereka semua berisi bagian "Ikhtisar Fungsi". Anda ingin mencari di bagian "Ikhtisar Fungsi" Dokumen A, tetapi hasil pengingatan kembali mencakup informasi dari dokumen serupa lainnya.

Ekstraksi metadata. Basis pengetahuan menggunakan metadata untuk pencarian terstruktur sebelum pencarian vektor untuk menemukan dokumen target secara akurat dan mengekstrak informasi yang relevan.

Hanya basis pengetahuan pencarian dokumen yang mendukung pembuatan metadata dokumen.

Hasil pengingatan kembali basis pengetahuan tidak lengkap dan tidak mencakup semua potongan teks yang relevan.

Kami sarankan Anda menurunkan ambang kesamaan dan meningkatkan jumlah potongan yang diingat kembali untuk mengingat informasi yang seharusnya diambil.

Hasil pengingatan kembali basis pengetahuan berisi sejumlah besar potongan teks yang tidak relevan.

Kami sarankan Anda meningkatkan ambang kesamaan untuk mengecualikan informasi dengan kesamaan rendah terhadap prompt pengguna.

2.3.1 Penulisan ulang percakapan multi-putaran

Dalam percakapan multi-putaran, pengguna mungkin bertanya dengan prompt singkat, seperti "Telepon Bailian X1". Prompt ini dapat menyebabkan sistem RAG kekurangan konteks yang diperlukan selama pengambilan karena alasan berikut:

  • Produk telepon biasanya memiliki beberapa generasi yang tersedia untuk dijual pada saat yang bersamaan.

  • Untuk generasi produk yang sama, pabrikan biasanya menyediakan beberapa opsi kapasitas penyimpanan, seperti 128 GB dan 256 GB.

    ...

Pengguna mungkin sudah memberikan informasi kunci ini di putaran percakapan sebelumnya. Menggunakan informasi ini secara efektif dapat membantu RAG mengambil informasi yang lebih akurat.

Untuk mengatasi situasi ini, Anda dapat menggunakan fitur Multi-round Conversation Rewriting di Model Studio. Sistem secara otomatis menulis ulang prompt pengguna menjadi bentuk yang lebih lengkap berdasarkan riwayat percakapan.

Sebagai contoh, pengguna bertanya:

Telepon Bailian X1.

Saat fitur penulisan ulang percakapan multi-putaran diaktifkan, sistem menulis ulang prompt pengguna berdasarkan riwayat percakapan mereka sebelum pengambilan, seperti yang ditunjukkan dalam contoh berikut:

Berikan semua versi yang tersedia dari Telepon Bailian X1 di perpustakaan produk dan parameter spesifik mereka.

Prompt yang ditulis ulang ini membantu RAG lebih memahami maksud pengguna dan memberikan respons yang lebih akurat.

Gambar di bawah ini menunjukkan cara mengaktifkan fitur penulisan ulang percakapan multi-putaran. Fitur ini juga diaktifkan saat Anda memilih Recommended.

image

Catatan bahwa fitur penulisan ulang percakapan multi-putaran terikat pada basis pengetahuan. Setelah diaktifkan, fitur ini hanya berlaku untuk kueri yang terkait dengan basis pengetahuan saat ini. Jika Anda tidak mengaktifkan konfigurasi ini saat membuat basis pengetahuan, Anda tidak dapat mengaktifkannya nanti kecuali Anda membuat ulang basis pengetahuan.

2.3.2 Penyaringan tag

Konten bagian ini hanya berlaku untuk basis pengetahuan pencarian dokumen.

Saat Anda menggunakan aplikasi musik, Anda mungkin menyaring lagu berdasarkan nama artis untuk dengan cepat menemukan lagu dari artis tersebut.

Demikian pula, menambahkan tag ke dokumen tanpa struktur Anda memperkenalkan informasi terstruktur tambahan. Ini memungkinkan aplikasi untuk menyaring dokumen berdasarkan tag saat mengambil dari basis pengetahuan, yang meningkatkan akurasi dan efisiensi pengambilan.

Model Studio mendukung dua metode untuk menyetel tag:

  • Tetapkan tag saat mengunggah dokumen: Untuk langkah-langkah di konsol, lihat Impor Data.

  • Edit tag di halaman Data Management: Untuk dokumen yang diunggah, Anda dapat mengklik Tag di sebelah kanan dokumen untuk mengedit.

    image

Model Studio mendukung dua metode untuk menggunakan tag:

  • Saat Anda memanggil aplikasi melalui API, Anda dapat menentukan tag dalam parameter permintaan tags.

  • Tetapkan tag saat mengedit aplikasi di konsol. Namun, metode ini hanya berlaku untuk aplikasi agen.

    Catatan bahwa pengaturan ini berlaku untuk semua pertanyaan dan jawaban berikutnya untuk aplikasi agen ini.

    image

2.3.3 Ekstraksi metadata

Konten bagian ini hanya berlaku untuk basis pengetahuan pencarian dokumen.

Menyematkan metadata ke dalam potongan teks dapat secara efektif meningkatkan informasi kontekstual dari setiap potongan. Dalam skenario tertentu, metode ini dapat secara signifikan meningkatkan kinerja RAG dari basis pengetahuan pencarian dokumen.

Pertimbangkan skenario berikut:

Basis pengetahuan berisi banyak dokumen deskripsi produk telepon genggam. Nama dokumen adalah model telepon (seperti Bailian X1, Bailian Zephyr Z9, dll.), dan semua dokumen mencakup bab "Ikhtisar Fungsi".

Jika metadata tidak diaktifkan untuk basis pengetahuan ini, pengguna mungkin memasukkan prompt berikut untuk pengambilan:

Ikhtisar fungsi Telepon Bailian X1.

Tes pengambilan menunjukkan potongan mana yang diingat kembali, seperti yang ditunjukkan pada gambar berikut. Karena semua dokumen berisi bagian "Ikhtisar Fungsi", basis pengetahuan mengingat kembali beberapa potongan teks yang tidak terkait dengan entitas kueri (Bailian Phone X1) tetapi mirip dengan prompt, seperti Potongan 1 dan Potongan 2 pada gambar. Peringkat mereka bahkan lebih tinggi daripada potongan teks yang sebenarnya dibutuhkan. Hal ini jelas mempengaruhi kinerja RAG.

Hasil pengambilan tes hanya menjamin peringkat. Nilai absolut dari skor kesamaan hanya untuk referensi. Ketika perbedaan nilai absolut kecil (dalam 5%), probabilitas pengambilan dapat dianggap sama.

image

Selanjutnya, atur nama telepon sebagai metadata. Ini setara dengan menambahkan informasi nama telepon yang sesuai ke potongan teks dari setiap dokumen. Anda dapat mengikuti langkah-langkah di ekstraksi metadata dan kemudian jalankan tes yang sama untuk perbandingan.

image

Pada titik ini, basis pengetahuan menambahkan lapisan pencarian terstruktur sebelum pencarian vektor. Prosesnya adalah sebagai berikut:

  1. Ekstrak metadata {"key": "name", "value": "Bailian Phone X1"} dari prompt.

  2. Berdasarkan metadata yang diekstraksi, temukan semua potongan teks yang berisi metadata "Bailian Phone X1".

  3. Kemudian, lakukan pencarian vektor (semantik) untuk menemukan potongan teks yang paling relevan.

Efek pengambilan aktual dari tes pengambilan setelah mengaktifkan metadata ditunjukkan pada gambar berikut. Seperti yang Anda lihat, basis pengetahuan sekarang dapat secara akurat menemukan potongan teks yang terkait dengan "Bailian Phone X1" dan berisi "Ikhtisar Fungsi".

image

Aplikasi umum lainnya dari metadata adalah menyematkan informasi tanggal dalam potongan teks untuk menyaring konten terbaru. Untuk informasi lebih lanjut tentang penggunaan metadata, lihat ekstraksi metadata.

2.3.4 Menyesuaikan ambang kesamaan

Saat basis pengetahuan menemukan potongan teks yang terkait dengan prompt pengguna, ia pertama-tama mengirimkannya ke model Rank untuk diurutkan ulang. Anda dapat mengonfigurasikan ini di Pengaturan Parameter Kustom saat Anda membuat basis pengetahuan. Kemudian, ambang kesamaan digunakan untuk menyaring potongan teks yang diurutkan ulang. Hanya potongan teks dengan skor kesamaan yang melebihi ambang ini yang kemungkinan besar akan diberikan kepada model.

image

Menurunkan ambang ini mungkin merecall lebih banyak potongan teks, tetapi juga dapat menyebabkan beberapa potongan teks yang kurang relevan direcall. Meningkatkan ambang ini mungkin mengurangi jumlah potongan teks yang direcall.

Jika diatur terlalu tinggi, seperti yang ditunjukkan pada gambar berikut, mungkin menyebabkan basis pengetahuan membuang semua potongan teks yang relevan. Ini membatasi kemampuan model untuk mendapatkan informasi latar belakang yang cukup untuk menghasilkan jawaban.

image

Tidak ada ambang terbaik tunggal, hanya yang paling sesuai untuk skenario Anda. Anda perlu bereksperimen dengan ambang kesamaan yang berbeda melalui tes pengambilan, amati hasil pengambilan, dan temukan solusi yang paling sesuai dengan kebutuhan Anda.

Langkah-langkah yang direkomendasikan untuk tes pengambilan

  1. Rancang kasus uji yang mencakup pertanyaan pelanggan umum.

  2. Pilih ambang kesamaan yang sesuai berdasarkan skenario aplikasi spesifik dari basis pengetahuan dan kualitas dokumen yang sebelumnya diimpor.

  3. Lakukan tes pengambilan untuk melihat hasil pengambilan basis pengetahuan.

  4. Berdasarkan hasil recall, sesuaikan kembali ambang batas kesamaan basis pengetahuan Anda. Untuk operasi spesifik, lihat Buat dan gunakan basis pengetahuan.

image

2.3.5 Tingkatkan jumlah potongan yang direcall

Jumlah potongan yang diingat kembali adalah nilai K dalam strategi pengambilan multi-saluran. Setelah penyaringan ambang kesamaan, jika jumlah potongan teks melebihi K, sistem memilih K potongan teks dengan skor kesamaan tertinggi untuk diberikan kepada model. Karena itu, nilai K yang tidak tepat dapat menyebabkan RAG melewatkan potongan teks yang benar, yang memengaruhi kemampuan model untuk menghasilkan jawaban yang lengkap.

Sebagai contoh, dalam kasus berikut, pengguna mengambil dengan prompt berikut:

Apa keunggulan telepon Bailian X1?

Seperti yang Anda lihat pada diagram berikut, ada total 7 potongan teks di basis pengetahuan target yang terkait dengan prompt pengguna dan harus dikembalikan. Ini ditandai dengan warna hijau di sebelah kiri. Namun, karena jumlah ini melebihi jumlah maksimum potongan yang diingat kembali (K) yang diatur saat ini, potongan teks yang berisi keunggulan 5 (daya tahan ultra-panjang) dan keunggulan 6 (foto jernih) dibuang dan tidak diberikan kepada model.

Karena RAG tidak dapat menentukan berapa banyak potongan teks yang diperlukan untuk memberikan jawaban yang lengkap, model akan menghasilkan jawaban berdasarkan potongan-potongan yang diberikan, meskipun mereka tidak lengkap.

Banyak eksperimen menunjukkan bahwa dalam skenario yang memerlukan daftar, ringkasan, atau perbandingan, memberikan lebih banyak potongan teks berkualitas tinggi (misalnya, K=20) kepada model lebih efektif daripada hanya memberikan 10 teratas atau 5 teratas. Meskipun ini mungkin memperkenalkan noise, jika kualitas potongan teks tinggi, model biasanya dapat mengimbangi dampak dari noise tersebut.

Anda dapat menyesuaikan Number Of Recalled Chunks saat Anda mengedit aplikasi.

image

Catatan bahwa jumlah potongan yang diingat kembali yang lebih besar tidak selalu lebih baik. Terkadang, setelah potongan teks yang diingat kembali dirakit, panjang total mereka mungkin melebihi batas panjang input model. Hal ini menyebabkan beberapa potongan teks dipotong, yang pada gilirannya memengaruhi kinerja RAG.

Oleh karena itu, kami sarankan Anda memilih Intelligent Assembly. Strategi ini mengingat kembali sebanyak mungkin potongan teks yang relevan tanpa melebihi panjang input maksimum model.

2.4 Tahap pembuatan jawaban

Bagian ini hanya memperkenalkan item konfigurasi yang didukung oleh Model Studio untuk optimasi dalam tahap pembuatan jawaban.

Pada titik ini, model dapat menghasilkan jawaban akhir berdasarkan prompt pengguna dan konten yang diambil serta diingat kembali dari basis pengetahuan. Namun, hasil yang dikembalikan mungkin masih belum memenuhi harapan Anda.

Tipe Masalah

Strategi Perbaikan

Model tidak memahami hubungan antara pengetahuan dan prompt pengguna. Jawabannya tampak seperti kombinasi teks yang canggung.

Kami sarankan Anda memilih model yang sesuai untuk secara efektif memahami hubungan antara pengetahuan dan prompt pengguna.

Hasil yang dikembalikan tidak mengikuti instruksi atau tidak komprehensif.

Kami sarankan Anda mengoptimalkan template prompt.

Hasil yang dikembalikan tidak cukup akurat. Ini mencakup pengetahuan umum model itu sendiri dan tidak sepenuhnya didasarkan pada basis pengetahuan.

Kami sarankan Anda mengaktifkan penolakan untuk membatasi jawaban hanya pada pengetahuan yang diambil dari basis pengetahuan.

Untuk prompt serupa, Anda ingin hasilnya konsisten atau bervariasi.

Kami sarankan Anda menyesuaikan parameter model.

2.4.1 Pilih model yang sesuai

Model yang berbeda memiliki kemampuan yang berbeda dalam hal mengikuti instruksi, dukungan bahasa, teks panjang, dan pemahaman pengetahuan. Ini dapat menyebabkan situasi berikut:

Model A gagal memahami hubungan antara pengetahuan yang diambil dan prompt, sehingga jawaban yang dihasilkan tidak dapat secara akurat merespons prompt pengguna. Beralih ke Model B, yang memiliki lebih banyak parameter atau kemampuan profesional yang lebih kuat, mungkin dapat menyelesaikan masalah ini.

Anda dapat Select A Model saat Anda mengedit aplikasi berdasarkan kebutuhan aktual Anda.

image

Anda dapat Select a Model saat mengedit aplikasi di Model Studio untuk memenuhi kebutuhan spesifik Anda. Kami merekomendasikan memilih model komersial dari seri Qwen, seperti Qwen-Max, Qwen-Plus, atau model lainnya. Model komersial ini memberikan kemampuan dan peningkatan terbaru dibandingkan versi open-source mereka.

  • Untuk kueri informasi sederhana dan ringkasan, model dengan jumlah parameter kecil sudah cukup, seperti Qwen-Turbo.

  • Jika Anda ingin RAG melakukan penalaran logis yang lebih kompleks, kami sarankan memilih model dengan jumlah parameter yang lebih besar dan kemampuan penalaran yang lebih kuat, seperti Qwen-Max.

  • Jika pertanyaan Anda memerlukan konsultasi dengan banyak potongan dokumen, kami sarankan memilih model dengan panjang konteks yang lebih panjang, seperti Qwen-Plus.

  • Jika aplikasi RAG yang Anda bangun adalah untuk domain non-umum, seperti bidang hukum, kami sarankan menggunakan model yang dilatih untuk domain spesifik tersebut, seperti Qwen-Legal.

2.4.2 Mengoptimalkan template prompt

Model memprediksi token berikutnya berdasarkan teks yang diberikan. Ini berarti Anda dapat memengaruhi perilaku model dengan menyesuaikan prompt, seperti bagaimana ia menggunakan pengetahuan yang diambil. Ini secara tidak langsung dapat meningkatkan kinerja RAG.

Berikut adalah tiga metode optimasi umum:

Metode 1: Batasi Isi Output

Anda dapat memberikan informasi kontekstual, instruksi, dan format output yang diharapkan dalam template prompt untuk menginstruksikan model. Misalnya, Anda dapat menambahkan instruksi output berikut untuk meminta model:

Jika informasi yang disediakan tidak cukup untuk menjawab pertanyaan, harap nyatakan dengan jelas, "Berdasarkan informasi yang ada, saya tidak dapat menjawab pertanyaan ini." Jangan membuat jawaban.

Ini mengurangi kemungkinan model menghasilkan halusinasi.

Metode 2: Tambahkan Contoh

Gunakan metode Few-Shot Prompting untuk menambahkan contoh pertanyaan-jawaban ke prompt agar model dapat menirunya. Ini membimbing model untuk menggunakan pengetahuan yang diambil dengan benar. Contoh berikut menggunakan Qwen-Plus.

Templat Prompt

Prompt pengguna dan hasil yang dikembalikan oleh aplikasi

# Persyaratan
Harap ekstrak spesifikasi teknis dari teks di bawah ini dan tampilkan dalam format JSON.
${documents}

image

# Persyaratan
Harap ekstrak spesifikasi teknis dari teks di bawah ini dan tampilkan dalam format JSON. Harap ikuti secara ketat bidang-bidang yang diberikan dalam contoh.
${documents}

# Contoh
## Input: Stardust S9 Pro, desain kamera layar bawah yang inovatif dengan ukuran 6,9 inci dan resolusi 1440 x 3088 piksel, membawa pengalaman visual tanpa batas. Konfigurasi teratas dengan penyimpanan 512 GB dan RAM 16 GB, dikombinasikan dengan baterai 6000 mAh dan teknologi pengisian cepat 100 W, memungkinkan performa dan masa pakai baterai berjalan seiring, memimpin tren teknologi. Harga referensi: 5999 - 6499.
## Output: { "product":"Stardust S9 Pro", "screen_size":"6.9inch", "ram_size": "16GB", "battery":"6000mAh" }

image

Metode 3: Menambahkan Konten delimiter

Jika potongan teks yang diambil dicampur secara acak dalam template prompt, sulit bagi model untuk memahami struktur keseluruhan prompt. Oleh karena itu, kami sarankan Anda memisahkan prompt dan variabel ${documents} dengan jelas.

Selain itu, untuk memastikan efek terbaik, pastikan bahwa variabel ${documents} muncul hanya sekali dalam template prompt Anda. Untuk informasi lebih lanjut, lihat contoh yang benar di sebelah kiri dalam tabel berikut.

Contoh yang benar

Contoh yang salah

# Peran
Anda adalah perwakilan layanan pelanggan, fokus pada menganalisis dan menyelesaikan masalah pengguna, serta memberikan solusi yang akurat dengan mengambil basis pengetahuan.

# Persyaratan
**Kembalikan hasil secara langsung**: Harap berikan hasil langsung berdasarkan prompt pengguna dan konten dalam basis pengetahuan, tanpa inferensi.
**Jangan sertakan informasi kontak spesifik dalam hasil yang dikembalikan**: Hasil yang dikembalikan hanya boleh mencakup ringkasan prompt pengguna, nama personel yang bertugas terkait, dan tanggung jawab mereka.
**Kontak default**: Jika tidak ada personel yang bertugas terkait yang ditemukan, harap kembalikan "Perwakilan bertugas hari ini: Layanan Pelanggan Model Studio 01".

# Basis Pengetahuan
Harap ingat materi-materi berikut, mereka mungkin membantu menjawab pertanyaan.
${documents}
# Peran
Anda adalah perwakilan layanan pelanggan, fokus pada menganalisis dan menyelesaikan masalah pengguna, serta memberikan solusi yang akurat dengan mengambil basis pengetahuan.
Harap gunakan informasi dalam ${documents} untuk membantu menjawab.

# Persyaratan
**Kembalikan hasil secara langsung**: Harap berikan hasil langsung berdasarkan prompt pengguna dan konten dalam basis pengetahuan, tanpa inferensi.
**Jangan sertakan informasi kontak spesifik dalam hasil yang dikembalikan**: Hasil yang dikembalikan hanya boleh mencakup ringkasan prompt pengguna, nama personel yang bertugas terkait, dan tanggung jawab mereka.
**Kontak default**: Jika tidak ada personel yang bertugas terkait yang ditemukan, harap kembalikan "Perwakilan bertugas hari ini: Layanan Pelanggan Model Studio 01".

# Basis Pengetahuan
Harap ingat materi-materi berikut, mereka mungkin membantu menjawab pertanyaan.
${documents}

Untuk mempelajari lebih lanjut tentang metode optimasi prompt, lihat Rekayasa Prompt.

2.4.3 Aktifkan penolakan

Jika Anda ingin hasil yang dikembalikan oleh aplikasi Anda didasarkan sepenuhnya pada pengetahuan yang diambil dari basis pengetahuan, dan mengecualikan pengaruh pengetahuan umum model itu sendiri, Anda dapat menetapkan ruang lingkup jawaban menjadi Hanya Basis Pengetahuan saat Anda mengedit aplikasi.

Untuk kasus di mana tidak ada pengetahuan yang relevan ditemukan dalam basis pengetahuan, Anda juga dapat mengatur balasan otomatis tetap.

Ruang lingkup jawaban: Knowledge Base + model Knowledge

Ruang lingkup jawaban: Knowledge Base Only

image

image

Hasil yang dikembalikan oleh aplikasi akan menjadi kombinasi dari pengetahuan yang diambil dari basis pengetahuan dan pengetahuan umum model itu sendiri.

Hasil yang dikembalikan oleh aplikasi akan sepenuhnya didasarkan pada pengetahuan yang diambil dari basis pengetahuan.

Untuk menentukan ruang lingkup pengetahuan, kami sarankan Anda memilih metode Search Threshold + LLM Judgment. Strategi ini pertama-tama menyaring potongan teks potensial menggunakan ambang kesamaan. Kemudian, model bertindak sebagai wasit, menggunakan Judgment Prompt yang Anda atur untuk melakukan analisis mendalam tentang relevansi. Ini lebih meningkatkan akurasi penilaian.

image

Berikut ini adalah contoh prompt penilaian untuk referensi Anda. Dalam contoh ini, ketika tidak ada pengetahuan yang relevan ditemukan dalam basis pengetahuan, balasan tetap diatur: Maaf, tidak ada model telepon yang relevan yang ditemukan.

# Aturan penilaian:
- Prasyarat untuk kecocokan antara pertanyaan dan dokumen adalah entitas yang terlibat dalam pertanyaan persis sama dengan entitas yang dijelaskan dalam dokumen.
- Pertanyaan sama sekali tidak disebutkan dalam dokumen.

Prompt pengguna dan hasil yang dikembalikan oleh aplikasi (saat pengetahuan cocok)

Prompt pengguna dan hasil yang dikembalikan oleh aplikasi (saat pengetahuan tidak cocok)

image

image

2.4.4 Menyesuaikan parameter model

Untuk prompt serupa, jika Anda ingin hasilnya konsisten atau bervariasi setiap kali, Anda dapat memodifikasi Parameters untuk menyesuaikan parameter model saat Anda mengedit aplikasi.

image

Parameter suhu dalam gambar di atas mengontrol keacakan konten yang dihasilkan oleh model. Semakin tinggi suhu, semakin beragam teks yang dihasilkan. Sebaliknya, semakin deterministik teks yang dihasilkan.

  • Teks beragam cocok untuk penulisan kreatif (seperti novel, salinan iklan), brainstorming, aplikasi obrolan, dan skenario lainnya.

  • Teks deterministik cocok untuk skenario dengan jawaban yang jelas (seperti analisis masalah, pertanyaan pilihan ganda, pencarian fakta) atau memerlukan kata-kata yang tepat (seperti dokumen teknis, teks hukum, laporan berita, makalah akademik).

Dua parameter lainnya adalah:

Panjang Respons Maksimum: Parameter ini mengontrol jumlah maksimum token yang dihasilkan oleh model. Anda dapat meningkatkan nilai ini untuk menghasilkan deskripsi rinci atau menurunkannya untuk menghasilkan jawaban singkat.

Jumlah Putaran Konteks: Parameter ini mengontrol jumlah putaran percakapan historis yang dirujuk oleh model. Saat diatur ke 1, model tidak merujuk pada informasi percakapan historis saat menjawab.

3. FAQ

Bagaimana seharusnya dokumen diformat untuk mendukung RAG?

Rekomendasi Tata Letak Konten Dokumen

  • Judul pada semua tingkat dokumen jelas, dan konten di bawah setiap judul diekspresikan dengan jelas.

  • Cobalah untuk tidak memiliki watermark di dokumen.

  • Cobalah untuk tidak memiliki tingkatan lebih lanjut di bawah item di tengah daftar.

  • Cobalah untuk tidak memiliki tabel atau gambar di dokumen. Tabel kompleks akan mempengaruhi hasil parsing keseluruhan dokumen.

Tingkat Judul Dokumen Tidak Cukup Jelas - Contoh

Dokumen Asli

Judul tingkat pertama adalah "IV. Aturan Penggunaan Hadiah:", dan kontennya mencakup "Hadiah 1:..." dan "Hadiah 2:...".

image.png

Masalah yang Akan Terjadi Setelah Diproses

"Hadiah 2:..." diurai sebagai subjudul dari "Hadiah 1:...".Kami sarankan menyetel "Hadiah 1:..." dan "Hadiah 2:..." sebagai heading bernomor tingkat kedua dalam dokumen.

Dokumen Memiliki Watermark - Contoh

Dokumen Asli

Dokumen memiliki watermark, dan ada total tiga item.

image.png

Masalah yang Akan Terjadi Setelah Diproses

Item ketiga dibagi menjadi potongan terpisah. Namun, karena watermark diidentifikasi sebagai teks, urutan item mungkin terganggu.

Tingkat Lebih Lanjut di Bawah Item di Tengah Daftar - Contoh

Dokumen Asli

Di bawah heading tingkat pertama "Aturan Aktivitas" adalah daftar berurutan, di mana item ketiga "Pengenalan Aktivitas" adalah daftar lain (dibagi menjadi a dan b).

image.png

Masalah yang Akan Terjadi Setelah Diproses

Daftar berurutan di bawah heading tingkat pertama "Aturan Aktivitas" berisi item ketiga, "Pengenalan Aktivitas", yang merupakan daftar lain. Hal ini menyebabkan "Pengenalan Aktivitas" diperlakukan sebagai heading tingkat kedua, dan semua konten berikutnya salah dianggap sebagai konten di bawah heading baru ini.Kami sarankan Anda tidak menumpuk daftar. Jika Anda harus melakukannya, cobalah tempatkan daftar bersarang di akhir daftar induk.

Contoh yang Baik

  • Konten di bawah setiap heading relatif independen dan jelas.

  • Tidak ada watermark.

  • Di bawah heading adalah daftar, tetapi tidak ada tingkatan lebih lanjut di bawah daftar.

  • Tidak ada tabel atau gambar.