RAGFlow 教學:開源 RAG 引擎怎麼裝、怎麼餵文件、怎麼讓 AI 不亂講
把公司一整櫃的 PDF 丟給 AI,然後它開始一本正經地胡說八道——這大概是每個想做企業知識庫的人都遇過的場面。RAGFlow 用「深度文件理解」加上可追溯引用來治這個病。這篇從 Docker 安裝、建知識庫、設模型,一路講到怎麼讓答案附上出處。
Pendahuluan: Ketika AI Mengubah PDF Menjadi Kacau
Saya pernah melihat sebuah kasus nyata: sebuah perusahaan ingin membuat basis pengetahuan internal, memasukkan lebih dari 300 manual produk dalam format PDF ke dalam sistem RAG, namun hasilnya AI mengeluarkan jawaban yang salah karena meleburkan angka-angka dalam tabel dengan teks lain, dan menganggap pernyataan hak cipta sebagai referensi utama. Ketika ditanya "Berapa daya listrik tipe A?", AI menjawab dengan angka yang sebenarnya milik tipe B. Insinyur yang bertanggung jawab hanya bisa tersenyum sedih dan mengatakan bahwa masalahnya bukan karena modelnya bodoh, melainkan karena "dokumen tidak dibaca dengan baik".
Inilah tantangan sebenarnya dari RAG - bukan tentang menghubungkan model, melainkan tentang memotong dokumen yang kompleks, berisi tabel, dan scan menjadi potongan-potongan yang dapat diproses oleh model. RAGFlow memfokuskan diri pada hal ini. Artikel ini akan membawa Anda melalui proses menginstal, memasukkan file, dan membuatnya bekerja dengan referensi yang akurat.
Apa itu RAGFlow
RAGFlow adalah mesin RAG (Retrieve, Augment, Generate) open-source yang dikembangkan oleh InfiniFlow, dengan kode sumber yang tersedia di GitHub. Jika Anda belum memahami apa itu RAG, silakan baca artikel Apa itu RAG untuk memahami konsepnya - secara sederhana, RAG membuat AI mencari informasi dalam basis data sebelum menjawab pertanyaan, bukan hanya mengandalkan ingatan.
Hal yang paling membedakan RAGFlow dari alat RAG lainnya adalah kemampuan "DeepDoc" untuk memahami struktur dokumen. Alat lain biasanya hanya mengekstrak teks dari PDF, yang bisa menjadi kacau jika struktur halamannya kompleks. RAGFlow memahami struktur halaman, termasuk judul, tabel, dan paragraf, bahkan dapat mengolah file scan (PDF berbasis gambar) melalui OCR. Ini mendukung berbagai format file, termasuk Word, presentasi, Excel, teks murni, gambar, file scan, data terstruktur, dan halaman web.
Fitur lain yang penting adalah referensi yang dapat dilacak. Ketika menjawab pertanyaan, RAGFlow menyertakan sumber jawabannya, sehingga Anda dapat melihat "dari mana kalimat ini berasal". Ini sangat mengurangi kemungkinan Anda tertipu oleh jawaban AI. RAGFlow juga terintegrasi dengan platform seperti Dify yang melakukan pengaturan Agen, mendukung pembuatan alur kerja visual yang melibatkan RAG, alat, dan MCP.
Apa yang Dapat Dilakukan dengan RAGFlow
- Basis Pengetahuan Internal Perusahaan: Masukkan manual produk, SOP, dan template kontrak ke dalamnya, dan karyawan dapat bertanya dengan bahasa alami untuk mendapatkan jawaban yang akurat beserta sumbernya.
- Sistem Pertanyaan dan Jawaban untuk Layanan Pelanggan: Hubungkan dengan FAQ dan dokumen teknis untuk menjadi otak dari chatbot.
- Riset dan Analisis: Dokumen hukum, laporan keuangan, dan artikel ilmiah yang memiliki struktur kompleks dan memerlukan kutipan yang akurat, sangat sesuai dengan kekuatan DeepDoc.
- Otak Kedua Pribadi: Masukkan catatan dan buku elektronik Anda, dan ubah menjadi basis pengetahuan yang dapat diajak berdialog.
Untuk memahami cara mengatur sistem RAG secara keseluruhan, Anda dapat membaca Panduan Praktis RAG sebagai referensi.
Cara Menggunakan RAGFlow: Pertama Kali
RAGFlow diinstal menggunakan Docker, dan prosesnya tidak terlalu sulit, tetapi memerlukan spesifikasi mesin yang cukup tinggi. Pertama, lihat spesifikasi yang disarankan.
1. Konfirmasi Kebutuhan Sistem
Saran resmi: CPU minimal 4 core, memori minimal 16GB, hard disk minimal 50GB, Docker 24 atau lebih, dan Docker Compose v2.26 atau lebih. Memori adalah hal yang paling kritis - RAGFlow perlu menjalankan mesin pencarian vektor, dan kekurangan memori akan menyebabkan kesalahan.
2. Mengunduh Proyek dan Mengaktifkan
Setelah mengkloning dari GitHub, masuk ke direktori docker dan jalankan:
bash
git clone https://github.com/infiniflow/ragflow.git
cd ragflow/docker
docker compose up -d
Pertama kali menjalankan akan mengunduh banyak image, tunggu sampai selesai. Setelah selesai, gunakan docker ps untuk memastikan semua container sudah berjalan.
3. Membuka Antarmuka dan Mengatur Model
Setelah layanan diaktifkan, buka http://IP Anda (port default 80) di browser. Daftar untuk membuat akun dan masuk, lalu pergi ke pengaturan untuk memasukkan kunci API model. RAGFlow tidak menyertakan model, jadi Anda perlu menginformasikan tentang model LLM (untuk menjawab) dan model embedding (untuk mengubah teks menjadi vektor) yang akan digunakan. Anda dapat menggunakan OpenAI, model cloud dari berbagai penyedia, atau menghubungkan dengan model lokal seperti Ollama.
4. Membuat Basis Pengetahuan dan Memasukkan File
Buat sebuah Basis Pengetahuan, masukkan file PDF, Word, atau lainnya ke dalamnya. Pilih template pemotongan (chunk method) yang sesuai untuk jenis file yang diunggah. RAGFlow menyediakan berbagai template untuk berbagai jenis file - dokumen umum, artikel ilmiah, buku, hukum, presentasi, tabel, pertanyaan dan jawaban, dll. Pilih template yang tepat, lalu tekan "parse" untuk menjalankan DeepDoc dan memotong file menjadi potongan-potongan.
5. Memeriksa Hasil Pemotongan
Ini adalah fitur RAGFlow yang paling berguna: setelah proses parsing selesai, RAGFlow akan menampilkan hasil pemotongan dalam format visual, sehingga Anda dapat melihat setiap potongan dan posisinya dalam teks asli. Jika hasil pemotongan tidak tepat, Anda dapat melakukan penyesuaian manual. Jangan malas melakukan langkah ini, karena kualitas pemotongan sangat mempengaruhi akurasi jawaban.
6. Membuat Asisten Chat dan Menguji
Setelah memastikan hasil pemotongan sudah baik, buat sebuah chat dan hubungkan dengan basis pengetahuan yang telah dibuat. Sekarang Anda dapat mulai bertanya dan mendapatkan jawaban yang akurat beserta referensinya.
Tips Lanjutan
Pisahkan Template Berdasarkan Jenis File: Jangan mencampur file hukum dan produk dalam satu basis pengetahuan dengan template yang sama. Struktur halaman yang berbeda memerlukan logika pemotongan yang berbeda. Buat basis pengetahuan terpisah untuk setiap jenis file dan pilih template yang sesuai untuk meningkatkan akurasi.
Manfaatkan Pencarian Hybrid: RAGFlow melakukan pencarian vektor dan pencarian kata kunci BM25, serta penilaian ulang. Pencarian vektor murni seringkali tidak akurat untuk pertanyaan yang memerlukan nama yang tepat, nomor produk, atau kode hukum. Pencarian kata kunci dapat melengkapi kekurangan ini. Anda dapat menyesuaikan bobot pencarian untuk mendapatkan hasil yang lebih baik.
Hubungkan dengan Ollama untuk Model Lokal: Jika Anda peduli dengan privasi data dan tidak ingin mengunggah file perusahaan ke cloud, Anda dapat mengarahkan LLM dan model embedding ke Ollama lokal, sehingga semua proses berjalan secara offline. Namun, ini memerlukan perangkat keras yang lebih baik.
Gunakan API untuk Mengintegrasikan dengan Sistem Anda: RAGFlow menyediakan API yang dapat digunakan sebagai lapisan pencarian backend, dengan antarmuka depan yang dapat disesuaikan atau diintegrasikan dengan sistem layanan pelanggan yang sudah ada. Untuk membuat alur kerja yang lebih kompleks, Anda juga dapat menggunakan fitur pengaturan Agen yang mirip dengan konsep Pengembangan Agen AI.
Kesalahan Umum dan Hal yang Perlu Diperhatikan
- Menggunakan Memori yang Terlalu Kecil: 16GB adalah batas minimum, bukan saran. Menggunakan memori di bawah ini dapat menyebabkan container berulang kali gagal, dan pemula sering kali terjebak di sini tanpa menemukan penyebabnya.
- Lupa Mengatur Model Embedding: Banyak orang hanya mengatur LLM untuk menjawab, tetapi lupa mengatur model embedding, sehingga file tidak dapat diubah menjadi vektor dengan benar, dan pertanyaan tidak dapat dijawab dengan akurat. Kedua pengaturan ini harus dilakukan.
- Memilih Template Pemotongan Secara Sembarangan atau Tidak Memeriksa: Menggunakan template default untuk file yang kompleks, lalu mengeluh tentang kualitas jawaban - masalahnya kemungkinan besar terletak pada proses pemotongan. Pastikan untuk memeriksa hasil pemotongan dan menyesuaikan jika perlu.
- Menganggap Referensi sebagai Jaminan 100% Akurat: Referensi yang dapat dilacak membantu Anda untuk memverifikasi jawaban, tetapi tidak menjamin keakuratan 100%. Model masih dapat salah membaca potongan teks. Untuk skenario penting, verifikasi manual selalu diperlukan. Untuk memahami lebih lanjut tentang mengapa AI dapat memberikan jawaban yang salah, baca Apa itu Halusinasi AI.
- Tidak Memikirkan Privasi Data dengan Matang: Menggunakan model cloud berarti potongan file Anda akan dikirim ke penyedia model. Data sensitif harus diolah dengan skema model lokal.
Ulasan dari TheAI Akademi
Di antara banyak alat RAG yang ada, kebanyakan fokus pada cara menghubungkan model atau menyimpan vektor, tetapi mengabaikan tantangan sebenarnya - yaitu memahami struktur dokumen yang kompleks. RAGFlow memfokuskan diri pada DeepDoc dan visualisasi pemotongan, yang merupakan langkah yang tepat untuk menyelesaikan masalah ini. Bagi tim yang ingin membuat basis pengetahuan perusahaan dan dihadapkan pada tantangan struktur file yang kompleks, pilihan RAGFlow sangat tepat.
Setelah lama bekerja dengan RAG, Anda akan memahami bahwa kualitas jawaban tidak ditentukan oleh seberapa kuat modelnya, melainkan oleh seberapa baik file diproses. RAGFlow mempertaruhkan semua pada hal ini, dan itu adalah taruhan yang tepat.
Namun, perlu diingat bahwa RAGFlow adalah alat yang berorientasi pada teknik, memerlukan Docker, dan membutuhkan mesin yang cukup kuat. Ini bukanlah layanan cloud yang siap pakai; jika Anda hanya ingin mencoba RAG secara sederhana, mungkin ambang batasnya terlalu tinggi. Tetapi jika Anda ingin mengatur sendiri, mengontrol data, dan mengolah file yang kompleks, RAGFlow sangat worth untuk dicoba.
Pertanyaan yang Sering Diajukan
RAGFlow 是免費的嗎?自架要錢嗎?
RAGFlow 本身是開源的,你自己用 Docker 部署在自己的伺服器上,軟體不用付費。但要花的成本有兩塊:一是硬體(建議 16GB 記憶體以上的機器),二是模型費用——你接的雲端 LLM 跟嵌入模型 API 是另外算錢的。如果全部改用本地 Ollama 模型,理論上可以做到零 API 費用,代價是需要更好的硬體。官方另外也有提供雲端版的付費方案,不想自己架的人可以考慮。
我不太會寫程式,裝得起來嗎?
RAGFlow 的安裝主要靠 Docker,只要照著指令 clone 專案、跑 docker compose up,不太需要寫程式。但你得對命令列、Docker 有基本概念,遇到容器起不來、記憶體不足時要能自己 debug,所以說它是工程取向的工具。完全沒碰過終端機的純新手,門檻會偏高,建議先找會 Docker 的同事協助第一次部署。
為什麼一定要選切塊模板?用預設不行嗎?
可以用預設,但結果往往不理想。RAGFlow 的切塊模板是針對不同文件型態設計的——論文、書本、法律、簡報、表格各有對應邏輯。版面複雜的文件用錯模板,會把表格切斷、把標題跟內文混在一起,直接拖垮回答準確度。花一分鐘選對模板、解析後看一下視覺化結果,是性價比最高的一步,別省。
RAGFlow 跟 Dify、LangChain 這類工具差在哪?
定位不同。LangChain 是開發框架,給工程師寫程式組 RAG 流程用;Dify 偏向 LLM 應用開發平台,涵蓋面廣。RAGFlow 則把重心壓在「文件理解與檢索品質」這一段,DeepDoc 深度解析跟切塊視覺化是它的招牌。如果你的痛點是「文件讀不乾淨、答案不準」,RAGFlow 對症;如果你要的是完整的應用編排平台,可能要搭配或改用 Dify 那類工具。