0% found this document useful (0 votes)
834 views10 pages

Quick Start - RAGFlow

RAGFlow is an open-source Retrieval-Augmented Generation engine that integrates with LLMs for accurate question-answering backed by citations. This quick start guide outlines the process of setting up a local RAGFlow server, creating a knowledge base, and configuring LLMs for AI chat. It includes prerequisites, server startup instructions, and details on file parsing and chat setup, emphasizing support for x86 CPU and Nvidia GPU platforms.

Uploaded by

Pieter Fourie
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
834 views10 pages

Quick Start - RAGFlow

RAGFlow is an open-source Retrieval-Augmented Generation engine that integrates with LLMs for accurate question-answering backed by citations. This quick start guide outlines the process of setting up a local RAGFlow server, creating a knowledge base, and configuring LLMs for AI chat. It includes prerequisites, server startup instructions, and details on file parsing and chat setup, emphasizing support for x86 CPU and Nvidia GPU platforms.

Uploaded by

Pieter Fourie
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

Quick start

Version: DEV

Quick start
RAGFlow is an open-source RAG (Retrieval-Augmented Generation) engine based on deep document understanding. When integrated with LLMs,
it is capable of providing truthful question-answering capabilities, backed by well-founded citations from various complex formatted data.

This quick start guide describes a general process from:

Starting up a local RAGFlow server,


Creating a knowledge base,
Intervening with file parsing, to
Establishing an AI chat based on your datasets.

IMPORTANT

We officially support x86 CPU and Nvidia GPU, and this document offers instructions on deploying RAGFlow using Docker on x86 platforms.
While we also test RAGFlow on ARM64 platforms, we do not maintain RAGFlow Docker images for ARM.

If you are on an ARM platform, follow this guide to build a RAGFlow Docker image.

Prerequisites
CPU ≥ 4 cores (x86);
RAM ≥ 16 GB;
Disk ≥ 50 GB;
Docker ≥ 24.0.0 & Docker Compose ≥ v2.26.1.

Start up the server


This section provides instructions on setting up the RAGFlow server on Linux. If you are on a different operating system, no worries. Most steps
are alike.

1. Ensure vm.max_map_count ≥ 262144:

2. Clone the repo:

$ git clone https://github.com/infiniflow/ragflow.git


$ cd ragflow
$ git checkout -f v0.16.0

3. Use the pre-built Docker images and start up the server:

NOTE

The command below downloads the v0.16.0-slim edition of the RAGFlow Docker image. Refer to the following table for descriptions of
different RAGFlow editions. To download an RAGFlow edition different from v0.15.1-slim , update the RAGFLOW_IMAGE variable accordingly
in docker/.env before using docker compose to start the server. For example: set RAGFLOW_IMAGE=infiniflow/ragflow:v0.15.1 for the full
edition v0.15.1 .

$ docker compose -f docker/docker-compose.yml up -d

RAGFlow image tag Image size (GB) Has embedding models and Python packages? Stable?

v0.16.0 ≈9 ✔️ Stable release

v0.16.0-slim ≈2 ❌ Stable release

nightly ≈9 ✔️ Unstable nightly build

nightly-slim ≈2 ❌ Unstable nightly build

4. Check the server status after having the server up and running:

$ docker logs -f ragflow-server

The following output confirms a successful launch of the system:


____ ___ ______ ______ __
/ __ \ / | / ____// ____// /____ _ __
/ /_/ // /| | / / __ / /_ / // __ \| | /| / /
/ _, _// ___ |/ /_/ // __/ / // /_/ /| |/ |/ /
/_/ |_|/_/ |_|\____//_/ /_/ \____/ |__/|__/

* Running on all addresses (0.0.0.0)


* Running on http://127.0.0.1:9380
* Running on http://x.x.x.x:9380
INFO:werkzeug:Press CTRL+C to quit

If you skip this confirmation step and directly log in to RAGFlow, your browser may prompt a network anomaly error because, at that
moment, your RAGFlow may not be fully initialized.

5. In your web browser, enter the IP address of your server and log in to RAGFlow.

WARNING

With the default settings, you only need to enter http://IP_OF_YOUR_MACHINE (sans port number) as the default HTTP serving port 80 can be
omitted when using the default configurations.

Configure LLMs
RAGFlow is a RAG engine and needs to work with an LLM to offer grounded, hallucination-free question-answering capabilities. RAGFlow supports
most mainstream LLMs. For a complete list of supported models, please refer to Supported Models.

NOTE

RAGFlow also supports deploying LLMs locally using Ollama, Xinference, or LocalAI, but this part is not covered in this quick start guide.

To add and configure an LLM:

1. Click on your logo on the top right of the page > Model providers:

Each RAGFlow account is able to use text-embedding-v2 for free, an embedding model of Tongyi-Qianwen. This is why you can see
Tongyi-Qianwen in the Added models list. And you may need to update your Tongyi-Qianwen API key at a later point.

2. Click on the desired LLM and update the API key accordingly (DeepSeek-V2 in this case):
Your added models appear as follows:

3. Click System Model Settings to select the default models:

Chat model,
Embedding model,
Image-to-text model.
Some models, such as the image-to-text model qwen-vl-max, are subsidiary to a specific LLM. And you may need to update your API key to
access these models.

Create your first knowledge base


You are allowed to upload files to a knowledge base in RAGFlow and parse them into datasets. A knowledge base is virtually a collection of
datasets. Question answering in RAGFlow can be based on a particular knowledge base or multiple knowledge bases. File formats that RAGFlow
supports include documents (PDF, DOC, DOCX, TXT, MD), tables (CSV, XLSX, XLS), pictures (JPEG, JPG, PNG, TIF, GIF), and slides (PPT, PPTX).

To create your first knowledge base:

1. Click the Knowledge Base tab in the top middle of the page > Create knowledge base.

2. Input the name of your knowledge base and click OK to confirm your changes.

You are taken to the Configuration page of your knowledge base.


3. RAGFlow offers multiple chunk templates that cater to different document layouts and file formats. Select the embedding model and chunk
method (template) for your knowledge base.

IMPORTANT

Once you have selected an embedding model and used it to parse a file, you are no longer allowed to change it. The obvious reason is that
we must ensure that all files in a specific knowledge base are parsed using the same embedding model (ensure that they are being compared
in the same embedding space).

You are taken to the Dataset page of your knowledge base.

4. Click + Add file > Local files to start uploading a particular file to the knowledge base.

5. In the uploaded file entry, click the play button to start file parsing:

When the file parsing completes, its parsing status changes to SUCCESS.

NOTE

If your file parsing gets stuck at below 1%, see this FAQ.
If your file parsing gets stuck at near completion, see this FAQ
Intervene with file parsing
RAGFlow features visibility and explainability, allowing you to view the chunking results and intervene where necessary. To do so:

1. Click on the file that completes file parsing to view the chunking results:

You are taken to the Chunk page:

2. Hover over each snapshot for a quick view of each chunk.

3. Double click the chunked texts to add keywords or make manual changes where necessary:
NOTE

You can add keywords to a file chunk to improve its ranking for queries containing those keywords. This action increases its keyword weight
and can improve its position in search list.

4. In Retrieval testing, ask a quick question in Test text to double check if your configurations work:

As you can tell from the following, RAGFlow responds with truthful citations.
Set up an AI chat
Conversations in RAGFlow are based on a particular knowledge base or multiple knowledge bases. Once you have created your knowledge base
and finished file parsing, you can go ahead and start an AI conversation.

1. Click the Chat tab in the middle top of the mage > Create an assistant to show the Chat Configuration dialogue of your next dialogue.

RAGFlow offer the flexibility of choosing a different chat model for each dialogue, while allowing you to set the default models in System
Model Settings.

2. Update Assistant Setting:

Name your assistant and specify your knowledge bases.


Empty response:
If you wish to confine RAGFlow's answers to your knowledge bases, leave a response here. Then when it doesn't retrieve an answer,
it uniformly responds with what you set here.
If you wish RAGFlow to improvise when it doesn't retrieve an answer from your knowledge bases, leave it blank, which may give rise
to hallucinations.

3. Update Prompt Engine or leave it as is for the beginning.

4. Update Model Setting.

5. Now, let's start the show:


NOTE

RAGFlow also offers HTTP and Python APIs for you to integrate RAGFlow's capabilities into your applications. Read the following documents
for more information:

Acquire a RAGFlow API key


HTTP API reference
Python API reference

Edit this page

You might also like