RAGFlow virtual machine
RAGFlow Virtual Machine — a pre-configured cloud server with the RAG tool for Deep Document Understanding. The tool allows you to extract data from various sources to improve the accuracy of large language model (LLM) responses.
The image used to deploy the server contains:
-
RAGFlow — a RAG platform for Deep Document Understanding;
-
Docker — a platform for running containerized applications;
-
Docker Compose — a tool for running multi-container Docker applications;
-
Elasticsearch — a scalable search and analytics engine;
-
OpenSearch — a scalable open-source search and analytics engine;
-
Infinity — an AI-native database for LLMs;
-
OceanBase — a distributed relational database;
-
Seekdb — an AI-native search database;
-
MySQL — a relational database management system;
-
MinIO — an S3-compatible object storage;
-
Redis — a NoSQL in-memory database management system that works with key-value data;
-
NATS — a messaging system for distributed systems;
-
Kibana — a tool for analyzing, visualizing, and managing data stored in Elasticsearch;
-
drivers required for working with graphics processing units (GPUs).
Before creating a server, review the software license agreements included in the image.
Functional capabilities
-
indexing and semantic search in knowledge bases;
-
extracting and processing unstructured data from various sources: PDF files, tables, images, and others;
-
preparing relevant context from uploaded documents to improve the quality of LLM responses.
Minimum resource requirements
Get started with RAGFlow Virtual Machine
1. Create a cloud server with RAGFlow
-
In the Control panel, on the top menu, click Products and select AI Marketplace.
-
Click Create server.
-
Fill in the blocks:
- Name and placement;
- Source;
- GPU;
- Configuration;
- Disks;
- Network;
- optional: Access;
- optional: Additional settings;
- optional: Automation.
-
Check the server price.
-
Click Create server.
Name and placement
-
Enter the server name.
-
Select a location where the server will be created. The list of available GPUs depends on the location. Once the server is created, the location cannot be changed.
Source
Select an image RAGFlow VM (Ubuntu 24.04 LTS 64-bit).
GPU
-
Click Add GPU.
-
Select the GPU type. When selecting a GPU, consider the minimum resource requirements for the image to run. GPU specifications and descriptions can be found in the Graphics Processing Units (GPU).
-
Specify the number of GPUs.
After creating the server, you will be able to change the GPU type and quantity or remove the GPU. Read more in the Change cloud server configuration.
Configuration
-
Specify the number of vCPUs.
-
Specify the RAM size.
After the server is created, you will be able to change the configuration.
Disks
-
Select the boot disk type. When using a local disk as a boot disk, GPUs are unavailable.
-
Specify the disk size in GB or TB. The maximum size for all network volumes is 10 240 GB (10 TB), for a local disk — 1 256 GB (1 TB).
-
If you selected the SSD Universal v2 or SSD Fast v2 disk type, specify the total number of read and write operations in IOPS. After the disk is created, you can change the IOPS value —increase or decrease it. There is no limit on the number of IOPS changes.
-
Optional: to add additional disks:
4.1. Click Add volume.
4.2. Select the volume type.
4.3. Specify the disk size in GB or TB. The maximum size for all network volumes is 10 240 GB (10 TB), for a local disk — 1 256 GB (1 TB).
4.4. If you selected the SSD Universal v2 or SSD Fast v2 disk type, specify the total number of read and write operations in IOPS. After the disk is created, you can change the IOPS value — reduce or increase it. There is no limit on the number of IOPS changes.
After the server is created, you will be able to detach additional volumes from it or attach new ones.
Network
You can add the server to a new or existing subnet. The subnet can be:
- private without internet access. You will not be able to connect to the server from the internet, including via SSH or RDP;
- private with one public IP address. A static public IP address is connected to the server’s private address via a cloud router. The server will be accessible from the internet via this public IP address;
- public, where all addresses are accessible from the internet.
Private subnetwork without internet access
Private subnetwork with a public IP address
Public subnetwork
-
To add a server to an existing private subnet:
1.1. In the Subnet field, select an existing subnet.
1.2. Optional: change the default private IP address of the server.
-
To create a new private subnet:
2.1. In the Subnet field, select the Private subnet type.
2.2. Optional: change the subnetwork CIDR.
2.3. Optional: enable the DHCP toggle. Learn more about the DHCP protocol in the Selectel blog article Principles of the DHCP protocol.
2.4. Optional: change the default gateway IP address.
2.5. Optional: change the network in which the subnet will be created — you can select an existing network or create a new one. If you are creating a new network, enter the network name.
Optional: Access
-
In the Password for «root» field:
1.1. Copy the password for the
rootuser — the user with unrestricted system privileges.1.2. Save the password in a secure place and do not share it in plain text.
-
Add an SSH key for the project to the server for secure connection:
2.1. If an SSH key is not added to the cloud platform, click , enter the key name, paste the public key in OpenSSH format and click Add.
2.2. If an SSH key is added to the cloud platform, in the SSH-ключ field, select an existing key.
Optional: Additional settings
-
To create a preemptible server, check the Preemptible server.
-
If you plan to create multiple servers and want to increase infrastructure fault tolerance, add the server to a placement group:
2.1. To create a new group, click , enter the group name and select a placement policy on different hosts:
-
soft—the system will try to place the servers on different hosts. If no suitable host is available when creating the server, it will be created on the same host;
-
hard—servers in the group are required to be placed on different hosts. If no suitable host is available when creating the server, the server will not be created.
2.2. If the group is already created, in the Группа размещения field, select a placement group.
-
-
To add additional information or filter servers in the list, add server tags. A tag with the image name is added automatically. To add a new tag, enter the tag in the Tags field.
Optional: Automation
-
To add a script that will be executed by the cloud-init agent when the operating system first launches, in the User data:
- open the Text tab and paste the script as text; or;
- open the File tab and upload the script file.
Script examples and supported formats can be found in the User data.
2. Create a RAGFlow account
-
In the Control panel, on the top menu, click Products and select AI Marketplace.
-
In the RAGFlow Virtual Machine card, click Go to GUI.
-
Click Sign up.
-
Enter your email address.
-
Enter a username.
-
Enter your password.
-
Click Continue.
3. Launch RAGFlow
-
In the Control panel, on the top menu, click Products and select AI Marketplace.
-
In the RAGFlow Virtual Machine card, click Go to GUI.
-
Enter the email address you specified in step 4 when creating an account in stage 2;
-
Enter the password you specified in step 6 when creating an account in stage 2.
-
Click Sign in.