Lewati ke konten utama

Penjelasan RAGFlow: Bangun Aplikasi RAG untuk Produksi

Panduan praktis RAGFlow, platform open-source untuk membangun aplikasi Retrieval Augmented Generation tingkat produksi, mencakup arsitektur, mesin parsing dokumen, strategi retrieval, alur kerja agen, serta perbandingannya dengan LangChain dan LlamaIndex.
Diperbarui 12 Agu 2026  · 15 mnt baca

Jelajahi dengan AI

ChatGPTClaudePerplexity

Berapa kali Anda membangun demo RAG yang berjalan mulus pada beberapa PDF bersih, namun tak mampu menjawab apa pun dari dokumen perusahaan yang sebenarnya?

Biasanya, tabel jadi gepeng, halaman hasil pindai menghilang, slide deck kehilangan judul bagiannya, dan logika chunking memisahkan header bagian dari isinya. Sistem RAG untuk produksi jauh berbeda dengan sekadar LLM plus basis data vektor. Anda membutuhkan parsing dokumen, strategi chunking, retrieval hibrida, reranking, pelacakan sitasi, orkestrasi agen, dan setengah lusin komponen lain yang harus Anda konfigurasikan sendiri.

RAGFlow adalah platform open-source yang menggabungkan semua komponen itu dalam satu tumpukan. Ia menangani parsing dokumen mendalam, chunking berbasis templat, retrieval hibrida, alur kerja agen, dan integrasi MCP di balik satu UI dan API, sehingga Anda bisa fokus pada basis pengetahuan dan tidak pada hal lain.

Dalam artikel ini, saya akan menjelaskan cara kerja RAGFlow di balik layar, seperti apa arsitekturnya, bagaimana perbandingannya dengan LangChain dan LlamaIndex, serta cara men-deploy-nya.

Jika Anda butuh penyegar mengenai cara kerja RAG, daftar ke kursus Retrieval Augmented Generation (RAG) dengan LangChain kami - Anda akan memahami dasarnya dalam satu sore.

Apa Itu RAGFlow?

RAGFlow adalah mesin RAG open-source buatan InfiniFlow yang dirilis di bawah lisensi Apache 2.0 pada April 2024.

Rancangan ini ditujukan untuk aplikasi AI tingkat produksi, di mana kualitas retrieval menentukan berhasil atau tidaknya aplikasi. Fokus proyek ini adalah pemahaman dokumen mendalam, artinya parsing dan chunking diperlakukan sebagai fondasi bagi semua langkah berikutnya. Jika PDF, spreadsheet, dan slide deck Anda berantakan, tidak ada reranker atau LLM yang lebih besar yang bisa membantu - Anda harus memperbaiki kualitas dokumennya terlebih dahulu.

Yang membedakan RAGFlow dari kebanyakan alat RAG adalah sifatnya sebagai full stack. Anda mendapatkan parsing dokumen, chunking berbasis templat, retrieval hibrida, reranking, pelacakan sitasi, pembuat alur kerja agen, dan dukungan MCP dalam satu sistem. Anda tidak perlu memilih basis data vektor, mengonfigurasi parser, menambahkan reranker, dan membangun UI di atasnya - semuanya sudah tersedia di balik satu antarmuka web dan API.

Itu membuat RAGFlow lebih mirip platform daripada framework.

Cara Kerja RAGFlow

RAGFlow mengikuti pipeline RAG standar, tetapi setiap langkahnya adalah komponen yang bisa Anda konfigurasikan, alih-alih kode yang harus Anda tulis.

Berikut yang terjadi sejak Anda mengunggah dokumen hingga LLM mengirimkan jawaban kembali:

  1. Ingest dokumen: Anda mengunggah file atau menghubungkan sumber data. RAGFlow menerima PDF, file Word, lembar Excel, deck PowerPoint, Markdown, HTML, gambar, dan salinan hasil pindai. Mulai v0.25, Anda juga dapat menyinkronkan data dari Confluence, S3, Notion, Discord, dan Google Drive.
  2. Parse dan strukturkan konten: Mesin DeepDoc membaca setiap file dengan OCR, pengenalan struktur tabel, dan pengenalan tata letak. Hasilnya adalah konten terstruktur dengan metadata tentang judul, tabel, gambar, dan urutan baca.
  3. Hasilkan embedding: RAGFlow memproses setiap chunk melalui model embedding yang Anda pilih di konfigurasi. Anda bisa menggunakan OpenAI, Cohere, Voyage, model lokal, atau opsi lain yang didukung.
  4. Indeks pengetahuan: Chunk dan vektor dimasukkan ke mesin dokumen. Elasticsearch adalah default, tetapi Anda dapat beralih ke Infinity, yaitu basis data buatan InfiniFlow untuk pencarian hibrida.
  5. Ambil konteks relevan: Saat ada kueri masuk, RAGFlow menjalankan pencarian vektor, pencarian kata kunci BM25, dan reranking secara bersamaan. Anda mendapatkan chunk teratas dengan sitasi kembali ke dokumen sumber.
  6. Hasilkan jawaban dengan LLM: Chunk yang diambil dimasukkan ke prompt, LLM menulis jawaban, dan RAGFlow melampirkan sitasi agar pengguna bisa menelusuri setiap klaim kembali ke bagian sumbernya.

Urutannya bukan hal baru. Yang penting adalah setiap langkah merupakan bagian platform yang dapat dikonfigurasi, dan Anda bisa memeriksa keluarannya di setiap tahap.

Arsitektur RAGFlow

Arsitektur RAGFlow memiliki empat lapisan, dan masing-masing menyelesaikan masalah spesifik dalam pipeline RAG. Berikut gambaran visual singkatnya:

Arsitektur RAGFlow divisualisasikan

Arsitektur RAGFlow divisualisasikan

Sekarang saya jelaskan tiap lapisannya.

Ingestion dokumen

Ini adalah titik masuk. RAGFlow menerima PDF, dokumen Office seperti Word, Excel, dan PowerPoint, file Markdown, serta halaman web. Dokumen hasil pindai dan gambar juga didukung karena OCR sudah terpasang.

Anda dapat mengunggah file langsung melalui UI, menghubungkan sumber cloud, atau mendorong dokumen melalui API. Lapisan ingestion menormalisasi semuanya ke format umum sebelum melanjutkan ke tahap berikutnya.

Pemrosesan pengetahuan

Di sinilah DeepDoc berperan.

Parsing mengubah file mentah menjadi konten terstruktur dengan judul, paragraf, tabel, dan gambar. Chunking membagi konten itu menjadi unit retrieval berdasarkan templat yang Anda pilih (General, Paper, Book, Q&A, Manual, Table, atau Naive). Ekstraksi metadata menautkan konteks ke tiap chunk, seperti nomor halaman, judul bagian, dan posisi di halaman.

Chunk yang keluar dari lapisan ini mempertahankan strukturnya. Artinya, tabel tetap menjadi tabel, judul tetap bersama bagiannya, dan keterangan gambar tetap bersama gambarnya. Hasilnya tidak terasa acak seperti strategi chunking RAG tradisional.

Mesin retrieval

Mesin retrieval berjalan di atas Elasticsearch atau Infinity, tergantung mesin dokumen yang Anda konfigurasi.

Ia menjalankan tiga jenis pencarian secara paralel:

  • Pencarian vektor untuk kemiripan semantik
  • Pencarian kata kunci BM25 untuk kecocokan istilah eksak
  • Reranking di atas hasil gabungan untuk mendorong chunk paling relevan ke urutan teratas

Lapisan ini memberikan sejumlah kecil chunk berkualitas tinggi yang dimasukkan ke prompt LLM.

Lapisan LLM

Lapisan LLM mengirimkan chunk yang diambil ke model apa pun yang Anda hubungkan - OpenAI, DeepSeek, Gemini, Claude, model lokal Ollama, atau yang lainnya yang didukung RAGFlow.

Jawaban kembali dengan sitasi. Setiap klaim pada jawaban mengarah ke chunk tertentu, dan setiap chunk mengarah ke lokasi spesifik di dokumen sumber. Inilah yang disebut RAGFlow sebagai grounded answers - pengguna bisa mengeklik sitasi dan melihat potongan persis asalnya, sehingga halusinasi mudah dideteksi.

Keempat lapisan bekerja sebagai pipeline. Ingestion memberi makan pemrosesan pengetahuan, pemrosesan pengetahuan memberi makan mesin retrieval, dan mesin retrieval memberi makan lapisan LLM.

Fitur Utama RAGFlow

Berikut fitur yang paling penting saat Anda membangun sistem RAG pada dokumen dunia nyata yang berantakan.

Parsing dokumen tingkat lanjut

Parser RAGFlow bernama DeepDoc, dan inilah alasan platform ini ada.

DeepDoc menjalankan tiga model visi pada setiap dokumen: OCR untuk ekstraksi teks, TSR untuk pengenalan struktur tabel, dan DLR untuk pengenalan tata letak dokumen. Jadi alih-alih memperlakukan PDF sebagai aliran karakter, ia membaca file layaknya manusia - melihat di mana tabel berada, di mana kolom terputus, mana teks yang merupakan judul, dan mana catatan kaki.

Struktur itu mengalir ke chunk. Tabel tetap bersama header-nya, tata letak multi-kolom dibaca dalam urutan yang benar, dan gambar mempertahankan keterangannya.

Jika Anda pernah mencoba melakukannya secara manual, Anda tahu betapa sulitnya melakukan bagian ini dengan baik pada berbagai jenis dokumen dan dalam skala besar.

Retrieval hibrida

Pencarian semantik sering meleset pada kueri yang menuntut kecocokan kata persis. Pencarian kata kunci saja meleset pada kueri yang maknanya penting namun redaksinya berbeda.

RAGFlow menjalankan keduanya sekaligus:

  • Pencarian vektor menangkap kecocokan semantik - "revenue" menemukan "sales" dan "income"
  • Pencarian kata kunci menangkap kecocokan eksak - kode produk atau istilah hukum tetap muncul meski model embedding tidak memahaminya
  • Reranking mengambil hasil gabungan lalu menyusunnya ulang dengan model khusus, sehingga chunk teratas benar-benar paling relevan

Pembuat alur kerja

Pembuat alur kerja adalah kanvas visual tempat Anda mengonfigurasi pipeline alih-alih menulis kode.

Anda menyeret komponen ke kanvas - retrieval, rerank, LLM, eksekusi kode, panggilan HTTP, iterasi, percabangan - lalu menghubungkannya menjadi sebuah alur. RAGFlow menyertakan templat siap pakai untuk pola umum seperti Retrieve - Rerank - Answer, Deep Research, dan Data Analytics.

Bagi tim yang sebagian besar bukan engineer, inilah cara membuat prototipe yang berfungsi dalam seminggu.

Dukungan agen

Sejak v0.20, RAGFlow mendukung alur kerja agentic penuh pada kanvas yang sama dengan alur kerja reguler.

Komponen agen dapat merencanakan, merefleksi, memanggil tool, dan mendelegasikan ke sub-agen. Anda mengonfigurasi prompt dan daftar tool, dan agen memutuskan saat runtime tool mana yang dipanggil dan dalam urutan apa. Tool bisa berupa komponen bawaan, server MCP yang Anda hubungkan, atau agen lain.

Nilainya adalah penalaran atas pengetahuan yang di-retrieve. 

Agen dukungan dapat mengambil dari basis pengetahuan, memanggil API eksternal untuk memeriksa status tiket, dan memutuskan apakah perlu eskalasi. Semua itu dilakukan dalam satu alur, dengan sitasi terlampir pada bagian yang berasal dari dokumen.

Parsing Dokumen dan Ekstraksi Pengetahuan

Kualitas retrieval dimulai dari kualitas parsing. Jika bagian ini salah, tidak ada reranker atau LLM yang lebih besar yang dapat membantu.

Kebanyakan kegagalan RAG terjadi pada level dokumen, misalnya PDF penuh tabel diekstrak menjadi nilai dipisah koma atau slide deck kehilangan hierarki visualnya. Saat chunk tersebut mencapai basis data vektor, nilainya sudah hilang.

Pendekatan RAGFlow adalah memperlakukan parsing sebagai masalah kelas satu.

Tabel

Tabel adalah bagian tersulit dari parsing dokumen. Parser PDF standar membaca tabel baris demi baris dan mengubahnya menjadi aliran angka tanpa header. Anda kehilangan strukturnya.

DeepDoc menjalankan Table Structure Recognition (TSR) sebelum chunking. Ia mengidentifikasi batas tabel, baris header, kolom, dan relasi sel. Saat chunker membagi dokumen, tabel tetap utuh dengan header-nya, dan setiap baris mempertahankan konteksnya.

Gambar dan hasil pindai

DeepDoc menggunakan OCR untuk mengekstrak teks dari halaman hasil pindai, dan sejak v0.19, ia dapat menggunakan model visi-bahasa untuk memahami gambar di dalam file PDF dan DOCX.

Artinya diagram, grafik, atau foto struk belanja bisa menjadi konten yang dapat dicari.

Tata letak multi-kolom

Makalah akademik dan laporan keuangan menggunakan tata letak multi-kolom. Parser naif membacanya kiri ke kanan, baris demi baris, yang mencampur kolom dan menghasilkan konten yang tidak masuk akal.

DeepDoc menggunakan Document Layout Recognition (DLR) untuk menentukan urutan baca terlebih dahulu. Ia mengetahui kolom 1 datang sebelum kolom 2, dan bahwa sebuah header membentang di atas kedua kolom.

Metadata

Setiap chunk dilengkapi metadata, seperti nomor halaman, judul bagian, posisi di halaman, dan nama file sumbernya.

Inilah yang memungkinkan sitasi. Saat LLM mengutip suatu bagian, RAGFlow dapat menunjuk kembali ke halaman dan lokasi persis di dokumen sumber. Ini juga yang membuat penyaringan level chunk memungkinkan - Anda bisa mencari di dalam bagian atau dokumen tertentu.

Kualitas chunk

Bagian terakhir adalah chunking itu sendiri. RAGFlow menggunakan chunking berbasis templat, artinya Anda memilih templat yang sesuai dengan jenis dokumen Anda (General, Paper, Book, Q&A, Manual, Table, atau Naive).

Setiap templat menerapkan aturan berbeda untuk titik pemisahan. Templat Paper mempertahankan abstrak, metode, dan hasil sebagai unit terpisah. Templat Q&A menjaga setiap pertanyaan tetap dengan jawabannya. Templat Manual menghormati judul dan prosedur. Anda paham maksudnya.

Hasilnya adalah chunk yang masuk akal secara mandiri. Saat dimasukkan ke jendela konteks LLM, chunk tersebut cukup bermakna untuk menjawab pertanyaan.

Retrieval di RAGFlow

Setelah dokumen Anda diparse dan di-chunk, langkah retrieval akan menentukan apakah LLM melihat konteks yang tepat. Mesin retrieval RAGFlow memiliki tiga bagian yang bekerja bersama.

Retrieval vektor

Pencarian vektor menangkap kemiripan semantik. Anda membuat embedding untuk kueri dan setiap chunk dengan model yang sama, lalu mesin mengembalikan chunk yang vektornya paling dekat dengan vektor kueri.

Inilah yang memungkinkan pencarian "revenue growth" menemukan chunk tentang "sales increase" meski kedua istilah tidak muncul satu sama lain. RAGFlow memungkinkan Anda memilih model embedding - OpenAI, Cohere, Voyage, BGE, atau yang lokal - dan mengubahnya nanti tanpa membangun ulang seluruh sistem.

Pencarian hibrida

Pencarian vektor bukan yang terbaik untuk istilah eksak. Hal seperti kode produk atau rujukan hukum mungkin tidak memiliki sinyal semantik kuat, tetapi kecocokan string persis sangat penting.

RAGFlow menjalankan pencarian kata kunci BM25 bersamaan dengan pencarian vektor dan menggabungkan hasilnya. Anda mendapatkan jangkauan semantik dari embedding dan presisi pencocokan kata kunci dalam satu kueri.

Reranking

Putaran pertama retrieval memberi Anda set kandidat - biasanya 30 atau 50 chunk teratas. Itu terlalu banyak untuk jendela konteks LLM, dan bagian teratas daftar sering bising.

Reranking mengambil kandidat tersebut dan menyusunnya ulang dengan model khusus yang membaca kueri dan setiap chunk bersama-sama. Reranker mengetahui apa yang relevan terhadap kueri, bukan sekadar mirip. Lima atau sepuluh chunk teratas setelah reranking adalah yang dimasukkan ke prompt.

Pemilihan konteks

Langkah terakhir adalah memutuskan apa yang masuk ke konteks LLM. RAGFlow memungkinkan Anda menetapkan jumlah chunk, ambang kemiripan, dan skor minimal reranker.

Anda juga dapat menggunakan opsi lanjutan seperti RAPTOR (perangkuman hierarkis untuk pertanyaan multi-hop) atau long-context RAG (daftar isi level dokumen yang dihasilkan otomatis untuk memberi LLM peta materi sumber). Opsi ini tersedia untuk kasus di mana retrieval chunk datar tidak cukup.

Inti dari mesin retrieval adalah memberi LLM konteks yang tepat dan tidak lebih dari itu.

RAGFlow vs Pipeline RAG Tradisional

Pipeline RAG tradisional dibangun dari alat-alat independen. Anda memilih parser (Unstructured, LlamaParse, PyMuPDF), chunker (pemecah teks LangChain, kode kustom), model embedding, basis data vektor (Pinecone, Weaviate, Chroma, Qdrant), reranker (Cohere, BGE), klien LLM, dan UI. Lalu Anda menulis kode yang menyatukan semuanya.

Pendekatan ini memberi Anda kontrol maksimal, tetapi membutuhkan banyak upaya rekayasa.

Setiap titik integrasi adalah kode yang harus Anda rencanakan, tulis, uji, dan rawat. Saat Anda ingin menambahkan pelacakan sitasi, Anda harus membangunnya. Demikian pula, ketika suatu komponen mengubah API-nya, Anda memperbaiki pipeline-nya.

RAGFlow mengambil pendekatan sebaliknya.

Ini adalah platform terintegrasi di mana parsing, chunking, retrieval, reranking, sitasi, orkestrasi alur kerja, dan UI web sudah tersedia. Anda mengonfigurasi melalui antarmuka web alih-alih kode, dan semua bagiannya sudah terhubung.

Yang Anda korbankan adalah fleksibilitas. Jika Anda ingin mengganti algoritme chunking baru atau reranker riset, Anda bekerja dalam model plugin RAGFlow alih-alih menulis Python. Untuk sebagian besar kasus produksi, itu tidak masalah, namun untuk penggunaan eksperimental bisa terasa cukup membatasi.

Berikut ringkasan perbedaan:

  RAG Tradisional RAGFlow
Penyiapan Menggabungkan banyak alat Satu platform, satu deploy
Orkestrasi Kode kustom Pembuat alur kerja visual
Upaya rekayasa Tinggi Rendah hingga menengah
Fleksibilitas Kontrol penuh Dibatasi oleh platform
Waktu ke hasil pertama Hari hingga minggu Jam
Terbaik untuk Pipeline kustom atau eksperimental Sistem produksi yang bekerja pada dokumen berantakan

Tidak ada pendekatan yang selalu lebih baik. Jika Anda punya waktu rekayasa dan butuh kontrol penuh, pipeline tradisional adalah pilihan tepat. Jika Anda ingin fokus pada basis pengetahuan, RAGFlow akan lebih cepat.

RAGFlow vs LangChain dan LlamaIndex

Jika Anda mempertimbangkan RAGFlow, kemungkinan Anda sudah mendengar tentang LangChain dan LlamaIndex. Berikut perbandingannya.

LangChain

LangChain adalah framework aplikasi untuk aplikasi LLM. Tugas utamanya adalah orkestrasi, yaitu merangkai prompt, tool, memori, dan model ke dalam alur kerja. LangChain tidak terlalu peduli bagaimana dokumen Anda diparse atau bagaimana retrieval Anda disusun. Ia berfokus pada apa yang terjadi setelah retrieval.

Jika proyek Anda berat pada agen - pemanggilan tool, penalaran multi-langkah, logika bercabang, human-in-the-loop - LangChain (dan lapisan state machine-nya, LangGraph) adalah yang paling sering dipakai tim.

LlamaIndex

LlamaIndex adalah framework data untuk LLM. Fokusnya pada ingestion data, membangun indeks atas data itu, dan melakukan kueri dengan baik. LlamaIndex memiliki 160+ konektor data, beberapa jenis indeks (vektor, kata kunci, pohon, knowledge graph), dan default yang masuk akal untuk chunking dan retrieval.

Jika proyek Anda berat pada retrieval, dengan banyak dokumen, kebutuhan pencarian mendalam, dan beragam sistem sumber, LlamaIndex adalah pilihan code-first terkuat.

RAGFlow

RAGFlow adalah platform RAG terintegrasi. Ia bukan pustaka yang Anda import dan gunakan di Python - ini adalah sistem yang Anda deploy. Parsing, chunking, retrieval, reranking, sitasi, alur kerja, agen, dan UI web sudah termasuk di dalamnya.

Jika prioritas Anda adalah menjalankan sistem RAG produksi pada dokumen berantakan tanpa menulis kode pipeline dari nol, RAGFlow adalah jalur tercepat.

Ketiga alat ini juga bisa dipadukan. Pola umum adalah LlamaIndex untuk ingestion, LangChain atau LangGraph untuk orkestrasi agen, dan RAGFlow saat Anda menginginkan tumpukan lengkap yang self-hosted alih-alih kode rakitan sendiri.

Berikut ringkasannya:

  LangChain LlamaIndex RAGFlow
Jenis Framework aplikasi Framework data Platform terintegrasi
Fokus utama Orkestrasi, agen Ingestion, pengindeksan, retrieval Tumpukan RAG end-to-end
Antarmuka Pustaka Python / JavaScript Pustaka Python Web UI + API
Parsing dokumen Dasar (dengan integrasi) Bagus Terbaik (DeepDoc)
Dukungan agen Kuat (LangGraph) Dasar (alur kerja) Kuat (v0.20+)
Terbaik untuk Aplikasi berat agen Aplikasi berat retrieval Produksi RAG pada dokumen berantakan
Bahasa Code-first Code-first Config-first (dengan API)

Membangun Aplikasi RAG dengan RAGFlow

Setelah RAGFlow berjalan, membangun aplikasi RAG mengikuti lima langkah. Sekali lagi, Anda tidak menulis kode pipeline, Anda hanya mengonfigurasi setiap langkah melalui UI atau API.

Ingest dokumen

Mulailah dengan mengunggah dokumen Anda. Anda dapat menambahkan file melalui UI web, menghubungkan sumber data seperti Google Drive, S3, Notion, Confluence, atau Discord, atau menambahkan file melalui API.

Contoh ingestion dokumen

Contoh ingestion dokumen

RAGFlow menerima sebagian besar format umum, jadi Anda tidak perlu mengonversi apa pun di awal.

Konfigurasikan basis pengetahuan

Basis pengetahuan di RAGFlow adalah kontainer untuk dokumen, chunk, dan pengaturan Anda. Anda memilih templat chunk yang sesuai dengan jenis dokumen (General untuk konten campuran, Paper untuk riset, Manual untuk dokumen teknis, Q&A untuk tiket dukungan, dan seterusnya), memilih model embedding, dan memilih parser.

Konfigurasi basis pengetahuan

Konfigurasi basis pengetahuan

Ingat bahwa langkah ini penting, karena pilihan templat yang tepat akan mengurangi banyak kerepotan di kemudian hari.

Pilih strategi retrieval

Selanjutnya, tentukan cara kerja retrieval. Anda menetapkan jumlah chunk teratas yang dikembalikan, ambang kemiripan, dan apakah akan menggunakan pencarian hibrida atau hanya pencarian vektor. Anda juga bisa menyalakan reranking dan memilih model reranker.

Untuk kasus lanjutan, RAGFlow mendukung RAPTOR untuk perangkuman hierarkis dan knowledge graph untuk retrieval berbasis entitas. Anda bisa mengaktifkannya di dalam konfigurasi basis pengetahuan.

Hubungkan LLM

RAGFlow tidak menyertakan LLM. Anda membawa milik Anda sendiri - OpenAI, DeepSeek, Gemini, Claude, model lokal melalui Ollama, atau apa pun yang didukung RAGFlow.

Opsi model

Opsi model

Anda menambahkan kunci API di pengaturan, memilih model, dan menetapkan system prompt. 

Uji jawaban

Langkah terakhir adalah pengujian. RAGFlow memiliki antarmuka chat tempat Anda dapat menanyakan basis pengetahuan dan melihat jawaban dengan sitasi terlampir.

Klik sitasi apa pun, dan Anda akan menuju ke chunk persisnya dengan posisinya di dokumen sumber yang ditandai.

Kebanyakan tim mengulang langkah ini beberapa kali sebelum jawaban bisa digunakan. Itu normal untuk sistem RAG mana pun, tetapi dengan RAGFlow Anda mengubah pengaturan di UI alih-alih menulis ulang kode Python.

Contoh konfigurasi chat

Contoh konfigurasi chat

RAGFlow di Produksi

Anda akan melihat RAGFlow digunakan di produksi untuk serangkaian use case tertentu, terutama yang paling menuntut kualitas dokumen dan pelacakan sitasi.

Basis pengetahuan perusahaan

Perusahaan besar memiliki ribuan dokumen tersebar di drive bersama, Confluence, SharePoint, dan PDF pada lampiran email. Karyawan biasanya tidak bisa menemukan yang mereka butuhkan, dan bertanya pada LLM tanpa RAG memunculkan halusinasi.

RAGFlow bekerja baik di sini.

PDF lama, dokumen kebijakan hasil pindai, lembar Excel dengan pivot table, deck PowerPoint bertahun-tahun lalu - semuanya bisa diparse. Dan dengan sitasi, tim legal dan kepatuhan bisa mempercayai jawaban, serta UI web memungkinkan non-engineer memelihara basis pengetahuan.

Asisten dukungan pelanggan

Tim dukungan memiliki riwayat tiket bertahun-tahun, FAQ, manual produk, dan runbook internal. Asisten dukungan harus mencari semuanya, menemukan bagian yang tepat, dan tahu kapan harus eskalasi.

Templat chunk Q&A RAGFlow dibuat untuk ini. Anda memberinya riwayat tiket dan ia memperlakukan setiap pasangan tanya-jawab sebagai unit retrieval. Jika Anda menambahkan lapisan agen di atasnya, sambungkan API untuk pencarian pesanan, dan Anda memiliki asisten yang menangani pertanyaan rutin serta menyerahkan yang rumit dengan konteks lengkap.

Pencarian dokumentasi internal

Tim engineering memiliki runbook, dokumen arsitektur, postmortem insiden, dan referensi API yang tersebar di Notion, Confluence, dan GitHub. Grep berguna untuk kata kunci, tetapi tidak membantu untuk "bagaimana kami menangani kejadian terakhir saat peringatan ini muncul?"

RAGFlow memberi Anda pencarian semantik atas seluruh korpus dengan sitasi kembali ke sumber. Ini berarti engineer bisa mendapatkan potongan teks dan tautan ke halaman asli dalam satu klik.

Asisten riset

Tim riset bekerja dengan makalah, paten, laporan, dan eksperimen internal. Templat Deep Research di RAGFlow dirancang untuk ini, karena memiliki retrieval multi-giliran dengan penalaran chain-of-thought, di mana agen mengurai pertanyaan, mencari potongan jawabannya, dan menyusunnya.

Untuk riset keuangan, hukum, dan farmasi, kemampuan menelusuri setiap klaim ke sumbernya adalah yang membuat asisten tersebut layak digunakan.

Benang merah di seluruh use case ini adalah dokumen yang menjadi bagian tersulit. Jika materi sumber Anda bersih dan sederhana, sebagian besar alat RAG berfungsi. Jika berantakan dan terstruktur, lapisan parsing RAGFlow kemungkinan akan membawa Anda lebih jauh daripada menulis pipeline dari nol.

Mendeploy RAGFlow

RAGFlow memberi Anda tiga jalur deployment. Berikut penjelasannya.

Deployment Docker

Docker Compose adalah jalur utama. Anda mengklon repo, cd ke folder docker, dan jalankan docker compose up -d. Itu akan menyalakan server RAGFlow bersama Elasticsearch, MinIO, MySQL, dan Redis.

Spesifikasi minimum adalah 4 inti CPU, RAM 16 GB, dan disk 50 GB. Dalam praktiknya Anda akan menginginkan RAM lebih besar jika menjalankan koleksi dokumen besar, karena Elasticsearch dan Infinity membutuhkan banyak memori.

Citra Docker menargetkan x86, jadi perlu diingat. Jika Anda menggunakan Apple Silicon atau mesin ARM64 lain, lapisan translasi dapat membuatnya berjalan, tetapi untuk kinerja lebih baik Anda sebaiknya membangun citra sendiri menggunakan panduan ARM64 di dokumentasi RAGFlow.

Pengembangan lokal

Jika Anda ingin memodifikasi kode sumber RAGFlow, Anda dapat menjalankan backend dan frontend dari sumber. Anda menggunakan uv untuk dependensi Python, jalankan docker compose -f docker/docker-compose-base.yml up -d untuk menyalakan layanan pendukung saja (MinIO, Elasticsearch, MySQL, Redis), lalu mulai backend dengan skrip shell dan frontend dengan npm run dev.

Jalur ini hanya layak jika Anda berkontribusi ke proyek atau debugging. Bagi sebagian besar pengguna, jalur Docker Compose lebih cepat.

Deployment cloud

InfiniFlow menjalankan versi hosted di cloud.ragflow.io. Ada paket gratis dengan 5 app dan 500 kredit per bulan, serta paket berbayar $29, $129, dan harga enterprise.

Versi cloud cocok untuk prototipe dan tim kecil. Untuk penggunaan produksi serius dengan data sensitif, kebanyakan tim melakukan self-host pada infrastruktur mereka sendiri, baik pada satu VM untuk deployment kecil atau di Kubernetes menggunakan Helm chart untuk yang lebih besar.

Pertimbangan skala

Deployment default RAGFlow menjalankan semuanya pada satu mesin. Itu baik-baik saja sampai titik tertentu, tetapi setelah itu Anda akan menemui batas pada jumlah dokumen, beban kueri, atau ukuran tim.

Komponen yang diskalakan secara independen adalah mesin dokumen (Elasticsearch atau Infinity), penyimpanan objek (MinIO), dan aplikasi RAGFlow itu sendiri. Untuk deployment besar, Anda memisahkan layanan tersebut ke beberapa mesin, menggunakan Elasticsearch terkelola atau penyimpanan objek kompatibel S3, dan menjalankan beberapa instance aplikasi RAGFlow di belakang load balancer.

Akselerasi GPU untuk DeepDoc adalah hal lain yang dapat dieksplorasi. Seperti Anda tahu, parsing secara default berat di CPU, tetapi Anda dapat mengaktifkan mode GPU di konfigurasi, yang memberi perbedaan besar pada proses ingestion dokumen berskala besar.

Sisanya adalah pekerjaan infrastruktur standar, dan RAGFlow tidak menghalangi itu semua.

Keunggulan dan Keterbatasan RAGFlow

Setiap alat punya trade-off, dan RAGFlow tidak berbeda. Berikut yang perlu Anda ketahui sebelum menggunakannya.

Keunggulan

  • Ini adalah platform terintegrasi: Anda tidak perlu memilih parser, basis data vektor, reranker, chunker, dan framework UI, lalu menulis kodenya. RAGFlow menyertakan semuanya.
  • Pemrosesan dokumen adalah bagian terkuat: DeepDoc menangani PDF, file hasil pindai, tabel, dan tata letak kompleks lebih baik daripada kebanyakan alternatif. Jika dokumen Anda berantakan, ini seringkali sudah cukup menjadi alasan memilih RAGFlow.
  • Berorientasi produksi sejak awal: Sitasi yang ter-grounded, visualisasi chunk, alur kerja agen, dukungan MCP, dan UI manajemen yang nyata sudah terpasang. 
  • Open-source di bawah Apache 2.0: Anda dapat self-host, memodifikasi kode, dan menjalankannya di infrastruktur Anda sendiri. Repo GitHub memiliki 80k+ bintang dan pengembangan aktif, jadi proyek ini tidak akan hilang dalam waktu dekat.

Keterbatasan

  • Deployment tidak semudah kelihatannya di awal: Docker Compose membantu, tetapi Anda tetap menjalankan Elasticsearch atau Infinity, MinIO, MySQL, dan Redis berdampingan dengan aplikasinya. Akan ada masalah pada suatu waktu, dan Anda perlu cukup paham Docker untuk memperbaikinya.
  • Kebutuhan infrastruktur: Minimumnya 16 GB RAM dan 4 inti CPU, tetapi itu untuk beban kecil. Deployment nyata membutuhkan 32 GB atau lebih, terutama jika Anda menggunakan Infinity atau menjalankan job ingestion besar. Menjalankan RAGFlow di VPS $5 tidak akan berhasil.
  • Ada kurva pembelajaran: Pembuat alur kerja itu kuat, tetapi komponennya banyak, dan mencari templat chunk serta pengaturan retrieval yang tepat memakan waktu. Anda akan menghabiskan beberapa hari hingga benar-benar produktif.

Tidak ada yang menjadi penghalang jika RAGFlow sesuai dengan use case Anda. Anggap saja itu sebagai biaya untuk mendapatkan platform, bukan pustaka.

Siapa yang Sebaiknya Menggunakan RAGFlow?

RAGFlow tidak ideal untuk setiap proyek. Berikut siapa yang cocok menggunakannya dan siapa yang lebih baik memilih sesuatu yang lebih ringan.

Paling cocok

Engineer AI yang membangun sistem RAG produksi. Jika tugas Anda membuat aplikasi RAG yang berfungsi dan bukan menulis pustaka chunking lain, RAGFlow menghilangkan sebagian besar pekerjaan plumbing.

Tim AI perusahaan. Tim legal, kepatuhan, keuangan, dan dukungan membutuhkan sitasi dan keterlacakan. UI yang dapat digunakan non-engineer juga menjadi nilai tambah. 

Developer yang bekerja dengan dokumen berantakan. PDF penuh tabel, file hasil pindai, tata letak multi-kolom, dan format campuran adalah area di mana DeepDoc lebih unggul dari kompetitor. Jika materi sumber Anda bukan teks bersih, kualitas parsing RAGFlow sulit ditandingi.

Organisasi dengan koleksi dokumen besar. Setelah melewati beberapa ribu dokumen, Anda butuh sistem yang bisa melakukan ingestion, pengindeksan, dan pencarian berskala. RAGFlow adalah alat yang tepat untuk pekerjaan ini.

Kurang ideal

Prototipe chatbot sederhana. Jika Anda hanya perlu menjawab pertanyaan dari beberapa file Markdown, RAGFlow terlalu berlebihan. Skrip LlamaIndex atau pipeline LangChain sederhana lebih cepat.

Proyek sangat kecil. Untuk tanya jawab personal atas beberapa PDF, biaya infrastruktur terlalu berat. Anda akan lebih banyak menghabiskan waktu pada perintah Docker daripada proyek sebenarnya.

Tim yang menginginkan zero setup. Jika Anda ingin mendaftar dan mendapatkan RAG yang berfungsi dalam lima menit, layanan hosted atau pustaka ringan lebih cocok. RAGFlow memiliki versi cloud, tetapi jalur self-hosted (yang paling bernilai) membutuhkan beberapa pekerjaan penyiapan.

Aturan praktisnya sederhana. Jika kualitas retrieval pada dokumen berantakan adalah bagian tersulit dari proyek Anda, RAGFlow layak untuk biaya penyiapannya. Jika tidak, gunakan sesuatu yang lebih ringan.

Kesimpulan

RAGFlow adalah platform full-stack untuk membangun aplikasi RAG produksi pada dokumen dunia nyata.

Kekuatan terbesarnya adalah pemrosesan dokumen, retrieval, reranking, dan generasi berada dalam satu alur, bukan digabung dari alat terpisah. Anda mendapatkan parsing DeepDoc, retrieval hibrida, sitasi yang ter-grounded, dan alur kerja agen di balik satu UI dan API.

Jika dokumen Anda berantakan dan kualitas retrieval penting, RAGFlow layak untuk biaya penyiapannya.

Mulailah dengan paket cloud gratis atau deploy Docker lokal, unggah beberapa dokumen terburuk Anda, dan lihat bagaimana jawabannya kembali. Itu cara tercepat untuk mengetahui apakah cocok dengan use case Anda.

Arsitektur RAG sederhana secara desain, tetapi bukan berarti tidak dapat bekerja untuk use case kompleks. Baca posting blog Teknik RAG Lanjutan kami untuk mempelajari dense retrieval, reranking, dan penalaran multi-langkah.


Dario Radečić's photo
Author
Dario Radečić
LinkedIn
Senior Data Scientist yang berbasis di Kroasia. Penulis Tekno Teratas dengan lebih dari 700 artikel yang telah diterbitkan, menghasilkan lebih dari 10 juta tayangan. Penulis buku Machine Learning Automation with TPOT.

Ragflow

Untuk apa RAGFlow digunakan?

RAGFlow digunakan untuk membangun aplikasi Retrieval Augmented Generation di atas dokumen Anda sendiri. Perusahaan menggunakannya untuk basis pengetahuan perusahaan, asisten dukungan pelanggan, pencarian dokumentasi internal, dan asisten riset yang perlu menjawab pertanyaan dari PDF, spreadsheet, slide deck, dan sumber berantakan lainnya. RAGFlow memberi Anda parsing dokumen, retrieval, reranking, sitasi, dan alur kerja agen dalam satu platform alih-alih lima alat terpisah.

Apakah RAGFlow gratis?

Ya, RAGFlow bersifat open-source di bawah lisensi Apache 2.0, dan Anda dapat men-deploy sendiri di infrastruktur Anda tanpa biaya. InfiniFlow juga menjalankan versi hosted dengan paket gratis untuk proyek kecil dan paket berbayar mulai $29 per bulan untuk tim yang lebih besar. Sebagian besar pengguna produksi melakukan self-host, terutama saat bekerja dengan data sensitif.

Apa perbedaan RAGFlow dengan LangChain atau LlamaIndex?

LangChain adalah framework aplikasi untuk merangkai panggilan LLM, tool, dan agen. LlamaIndex adalah framework data untuk ingestion, pengindeksan, dan retrieval. RAGFlow adalah platform penuh, artinya Anda men-deploy, mengonfigurasi melalui web UI, dan langsung mendapatkan parsing, retrieval, sitasi, dan alur kerja tanpa menulis kode pipeline. Anda juga bisa menggabungkannya - LlamaIndex untuk ingestion, LangChain untuk orkestrasi, RAGFlow saat Anda menginginkan seluruh tumpukan di satu tempat.

Format dokumen apa yang didukung RAGFlow?

RAGFlow mendukung PDF, file Word, spreadsheet Excel, deck PowerPoint, Markdown, HTML, teks biasa, gambar, dan dokumen hasil pindai. Mesin DeepDoc menggunakan OCR, pengenalan struktur tabel, dan pengenalan tata letak untuk mem-parse setiap format dengan benar, sehingga tabel tetap utuh, halaman multi-kolom dibaca dalam urutan yang benar, dan file hasil pindai menjadi dapat dicari. Mulai v0.25, Anda juga dapat sinkron langsung dari Confluence, S3, Notion, Discord, dan Google Drive.

Apa persyaratan perangkat keras minimum untuk menjalankan RAGFlow?

Minimum resmi adalah 4 inti CPU, RAM 16 GB, disk 50 GB, dan Docker 24.0 atau lebih tinggi. Dalam praktiknya, Anda akan menginginkan RAM 32 GB atau lebih saat mengindeks volume dokumen nyata, karena Elasticsearch (atau Infinity), MinIO, MySQL, dan Redis semuanya berjalan berdampingan dengan aplikasi RAGFlow. Akselerasi GPU untuk DeepDoc bersifat opsional namun mempercepat ingestion.

Topik
Kecerdasan Buatan

Belajar bersama DataCamp

Kursus

Retrieval Augmented Generation (RAG) dengan LangChain

3 Hr
20.2K
Pelajari metode mutakhir untuk mengintegrasikan data eksternal dengan LLM menggunakan Retrieval Augmented Generation (RAG) dengan LangChain.
Lihat DetailRight Arrow
Mulai Kursus
Lihat Lebih BanyakRight Arrow
Terkait

blogs

Tutorial Korelasi di R

Dapatkan pengenalan dasar-dasar korelasi di R: pelajari lebih lanjut tentang koefisien korelasi, matriks korelasi, plotting korelasi, dan sebagainya.
David Woods's photo

David Woods

13 mnt

blogs

12 Alternatif ChatGPT Terbaik yang Bisa Anda Coba pada 2026

Artikel ini menyajikan daftar alternatif ChatGPT yang akan meningkatkan produktivitas Anda.
Javier Canales Luna's photo

Javier Canales Luna

14 mnt

blogs

Spaghetti Plot dan Jalur Badai

Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Hugo Bowne-Anderson's photo

Hugo Bowne-Anderson

13 mnt

blogs

40 Pertanyaan Wawancara DBMS Teratas di 2026

Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Dario Radečić's photo

Dario Radečić

15 mnt

Lihat Lebih BanyakLihat Lebih Banyak