writinwaters
commited on
Commit
·
5bc7f36
1
Parent(s):
9366d37
Editorial updates to Docker README (#3223)
Browse files### What problem does this PR solve?
### Type of change
- [x] Documentation Update
- docker/README.md +39 -30
- docs/guides/llm_api_key_setup.md +1 -18
- docs/guides/manage_files.md +2 -2
- docs/quickstart.mdx +1 -18
- docs/references/faq.md +3 -1
- docs/references/supported_models.mdx +5 -4
docker/README.md
CHANGED
@@ -8,66 +8,75 @@ Look into [.env](./.env), there're some important variables.
|
|
8 |
|
9 |
- `STACK_VERSION`
|
10 |
The Elasticsearch version. Defaults to `8.11.3`
|
11 |
-
|
12 |
- `ES_PORT`
|
13 |
Port to expose Elasticsearch HTTP API to the host. Defaults to `1200`.
|
14 |
-
|
15 |
- `ELASTIC_PASSWORD`
|
16 |
The Elasticsearch password.
|
17 |
-
|
18 |
- `MYSQL_PASSWORD`
|
19 |
The MySQL password. When updated, you must also revise the `mysql.password` entry in [service_conf.yaml](./service_conf.yaml) accordingly.
|
20 |
-
|
21 |
- `MYSQL_PORT`
|
22 |
-
The exported port number of MySQL Docker container, needed when you access the database from outside the
|
23 |
-
|
24 |
- `MINIO_USER`
|
25 |
The MinIO username. When updated, you must also revise the `minio.user` entry in [service_conf.yaml](./service_conf.yaml) accordingly.
|
26 |
-
|
27 |
- `MINIO_PASSWORD`
|
28 |
The MinIO password. When updated, you must also revise the `minio.password` entry in [service_conf.yaml](./service_conf.yaml) accordingly.
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
- `SVR_HTTP_PORT`
|
33 |
The port number on which RAGFlow's backend API server listens.
|
34 |
-
|
|
|
35 |
- `RAGFLOW-IMAGE`
|
36 |
The Docker image edition. Available options:
|
37 |
- `infiniflow/ragflow:dev-slim` (default): The RAGFlow Docker image without embedding models
|
38 |
-
- `infiniflow/ragflow:dev`: The RAGFlow Docker image with embedding models
|
39 |
-
|
40 |
-
- `
|
41 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
42 |
|
43 |
|
44 |
## Service Configuration
|
45 |
|
46 |
-
[service_conf.yaml](./service_conf.yaml) defines the system-level configuration for RAGFlow and is used by
|
47 |
|
48 |
- `ragflow`
|
|
|
49 |
- `host`: The IP address of the API server.
|
50 |
- `port`: The serving port of API server.
|
51 |
-
|
52 |
- `mysql`
|
53 |
-
|
54 |
-
- `
|
55 |
-
- `
|
56 |
-
- `
|
|
|
57 |
- `max_connections`: The maximum database connection.
|
58 |
-
- `stale_timeout`:
|
59 |
-
|
60 |
- `minio`
|
|
|
61 |
- `user`: The MinIO username. When updated, you must also revise the `MINIO_USER` variable in [.env](./.env) accordingly.
|
62 |
- `password`: The MinIO password. When updated, you must also revise the `MINIO_PASSWORD` variable in [.env](./.env) accordingly.
|
63 |
-
- `host`: The serving IP and port inside the docker container. This is not
|
64 |
-
|
65 |
-
- `user_default_llm`
|
66 |
-
|
|
|
|
|
67 |
- `factory`: The LLM suppliers. "OpenAI", "Tongyi-Qianwen", "ZHIPU-AI", "Moonshot", "DeepSeek", "Baichuan", and "VolcEngine" are supported.
|
68 |
- `api_key`: The API key for the specified LLM.
|
69 |
-
|
70 |
- `oauth`
|
71 |
-
The OAuth configuration for signing up or signing in to RAGFlow using a third-party account.
|
72 |
-
|
|
|
73 |
|
|
|
8 |
|
9 |
- `STACK_VERSION`
|
10 |
The Elasticsearch version. Defaults to `8.11.3`
|
|
|
11 |
- `ES_PORT`
|
12 |
Port to expose Elasticsearch HTTP API to the host. Defaults to `1200`.
|
|
|
13 |
- `ELASTIC_PASSWORD`
|
14 |
The Elasticsearch password.
|
|
|
15 |
- `MYSQL_PASSWORD`
|
16 |
The MySQL password. When updated, you must also revise the `mysql.password` entry in [service_conf.yaml](./service_conf.yaml) accordingly.
|
|
|
17 |
- `MYSQL_PORT`
|
18 |
+
The exported port number of MySQL Docker container, needed when you access the database from outside the Docker container.
|
|
|
19 |
- `MINIO_USER`
|
20 |
The MinIO username. When updated, you must also revise the `minio.user` entry in [service_conf.yaml](./service_conf.yaml) accordingly.
|
|
|
21 |
- `MINIO_PASSWORD`
|
22 |
The MinIO password. When updated, you must also revise the `minio.password` entry in [service_conf.yaml](./service_conf.yaml) accordingly.
|
|
|
|
|
|
|
23 |
- `SVR_HTTP_PORT`
|
24 |
The port number on which RAGFlow's backend API server listens.
|
25 |
+
- `TIMEZONE`
|
26 |
+
The local time zone.
|
27 |
- `RAGFLOW-IMAGE`
|
28 |
The Docker image edition. Available options:
|
29 |
- `infiniflow/ragflow:dev-slim` (default): The RAGFlow Docker image without embedding models
|
30 |
+
- `infiniflow/ragflow:dev`: The RAGFlow Docker image with embedding models including:
|
31 |
+
- Embedded embedding models:
|
32 |
+
- `BAAI/bge-large-zh-v1.5`
|
33 |
+
- `BAAI/bge-reranker-v2-m3`
|
34 |
+
- `maidalun1020/bce-embedding-base_v1`
|
35 |
+
- `maidalun1020/bce-reranker-base_v1`
|
36 |
+
- Embedding models that will be downloaded once you select them in the RAGFlow UI:
|
37 |
+
- `BAAI/bge-base-en-v1.5`
|
38 |
+
- `BAAI/bge-large-en-v1.5`
|
39 |
+
- `BAAI/bge-small-en-v1.5`
|
40 |
+
- `BAAI/bge-small-zh-v1.5`
|
41 |
+
- `jinaai/jina-embeddings-v2-base-en`
|
42 |
+
- `jinaai/jina-embeddings-v2-small-en`
|
43 |
+
- `nomic-ai/nomic-embed-text-v1.5`
|
44 |
+
- `sentence-transformers/all-MiniLM-L6-v2`
|
45 |
|
46 |
|
47 |
## Service Configuration
|
48 |
|
49 |
+
[service_conf.yaml](./service_conf.yaml) defines the system-level configuration for RAGFlow and is used by its API server and task executor.
|
50 |
|
51 |
- `ragflow`
|
52 |
+
|
53 |
- `host`: The IP address of the API server.
|
54 |
- `port`: The serving port of API server.
|
55 |
+
|
56 |
- `mysql`
|
57 |
+
|
58 |
+
- `name`: The database name in MySQL used by RAGFlow. Defaults to `rag_flow`.
|
59 |
+
- `user`: The MySQL user name.
|
60 |
+
- `password`: The MySQL password. When updated, you must also revise the `MYSQL_PASSWORD` variable in [.env](./.env) accordingly.
|
61 |
+
- `port`: The serving port of MySQL inside the Docker container. When updated, you must also revise the `MYSQL_PORT` variable in [.env](./.env) accordingly.
|
62 |
- `max_connections`: The maximum database connection.
|
63 |
+
- `stale_timeout`: Timeout in seconds.
|
64 |
+
|
65 |
- `minio`
|
66 |
+
|
67 |
- `user`: The MinIO username. When updated, you must also revise the `MINIO_USER` variable in [.env](./.env) accordingly.
|
68 |
- `password`: The MinIO password. When updated, you must also revise the `MINIO_PASSWORD` variable in [.env](./.env) accordingly.
|
69 |
+
- `host`: The serving IP and port inside the docker container. This is not updated until changing the minio part in [docker-compose.yml](./docker-compose.yml)
|
70 |
+
|
71 |
+
- `user_default_llm`
|
72 |
+
|
73 |
+
The default LLM to use for a new RAGFlow user. It is disabled by default. If you have not set it here, you can configure the default LLM on the **Settings** page in the RAGFlow UI. Newly signed-up users use LLM configured by this part; otherwise, you need to configure your own LLM on the *Settings* page.
|
74 |
+
|
75 |
- `factory`: The LLM suppliers. "OpenAI", "Tongyi-Qianwen", "ZHIPU-AI", "Moonshot", "DeepSeek", "Baichuan", and "VolcEngine" are supported.
|
76 |
- `api_key`: The API key for the specified LLM.
|
77 |
+
|
78 |
- `oauth`
|
79 |
+
The OAuth configuration for signing up or signing in to RAGFlow using a third-party account. It is disabled by default. To enable this feature, uncomment the corresponding lines in **service_conf.yaml**.
|
80 |
+
|
81 |
+
- `github`: The GitHub authentication settings for your application. Visit the [Github Developer Settings page](https://github.com/settings/developers) to obtain your client_id and secret_key.
|
82 |
|
docs/guides/llm_api_key_setup.md
CHANGED
@@ -9,24 +9,7 @@ An API key is required for RAGFlow to interact with an online AI model. This gui
|
|
9 |
|
10 |
## Get model API key
|
11 |
|
12 |
-
|
13 |
-
|
14 |
-
- [OpenAI](https://platform.openai.com/login?launch)
|
15 |
-
- [Azure-OpenAI](https://ai.azure.com/)
|
16 |
-
- [Gemini](https://aistudio.google.com/)
|
17 |
-
- [Groq](https://console.groq.com/)
|
18 |
-
- [Mistral](https://mistral.ai/)
|
19 |
-
- [Bedrock](https://aws.amazon.com/cn/bedrock/)
|
20 |
-
- [Tongyi-Qianwen](https://dashscope.console.aliyun.com/model)
|
21 |
-
- [ZHIPU-AI](https://open.bigmodel.cn/)
|
22 |
-
- [MiniMax](https://platform.minimaxi.com/)
|
23 |
-
- [Moonshot](https://platform.moonshot.cn/docs)
|
24 |
-
- [DeepSeek](https://platform.deepseek.com/api-docs/)
|
25 |
-
- [Baichuan](https://www.baichuan-ai.com/home)
|
26 |
-
- [VolcEngine](https://www.volcengine.com/docs/82379)
|
27 |
-
- [Jina](https://jina.ai/reader/)
|
28 |
-
- [OpenRouter](https://openrouter.ai/)
|
29 |
-
- [StepFun](https://platform.stepfun.com/)
|
30 |
|
31 |
:::note
|
32 |
If you find your online LLM is not on the list, don't feel disheartened. The list is expanding, and you can [file a feature request](https://github.com/infiniflow/ragflow/issues/new?assignees=&labels=feature+request&projects=&template=feature_request.yml&title=%5BFeature+Request%5D%3A+) with us! Alternatively, if you have customized or locally-deployed models, you can [bind them to RAGFlow using Ollama, Xinference, or LocalAI](./deploy_local_llm.mdx).
|
|
|
9 |
|
10 |
## Get model API key
|
11 |
|
12 |
+
RAGFlow supports most mainstream LLMs. Please refer to [Supported Models](./references/supported_models.mdx) for a complete list of supported models. You will need to apply for your model API key online. Note that most LLM providers grant newly-created accounts trial credit, which will expire in a couple of months, or a promotional amount of free quota.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13 |
|
14 |
:::note
|
15 |
If you find your online LLM is not on the list, don't feel disheartened. The list is expanding, and you can [file a feature request](https://github.com/infiniflow/ragflow/issues/new?assignees=&labels=feature+request&projects=&template=feature_request.yml&title=%5BFeature+Request%5D%3A+) with us! Alternatively, if you have customized or locally-deployed models, you can [bind them to RAGFlow using Ollama, Xinference, or LocalAI](./deploy_local_llm.mdx).
|
docs/guides/manage_files.md
CHANGED
@@ -49,7 +49,7 @@ You can link your file to one knowledge base or multiple knowledge bases at one
|
|
49 |
|
50 |
## Search files or folders
|
51 |
|
52 |
-
|
53 |
|
54 |

|
55 |
|
@@ -73,7 +73,7 @@ To bulk delete files or folders:
|
|
73 |

|
74 |
|
75 |
> - You are not allowed to delete the **root/.knowledgebase** folder.
|
76 |
-
> - Deleting files that have been linked to knowledge bases will AUTOMATICALLY REMOVE all associated file references across the knowledge bases.
|
77 |
|
78 |
## Download uploaded file
|
79 |
|
|
|
49 |
|
50 |
## Search files or folders
|
51 |
|
52 |
+
**File Management** only supports file name and folder name filtering in the current directory (files or folders in the child directory will not be retrieved).
|
53 |
|
54 |

|
55 |
|
|
|
73 |

|
74 |
|
75 |
> - You are not allowed to delete the **root/.knowledgebase** folder.
|
76 |
+
> - Deleting files that have been linked to knowledge bases will **AUTOMATICALLY REMOVE** all associated file references across the knowledge bases.
|
77 |
|
78 |
## Download uploaded file
|
79 |
|
docs/quickstart.mdx
CHANGED
@@ -223,24 +223,7 @@ With the default settings, you only need to enter `http://IP_OF_YOUR_MACHINE` (*
|
|
223 |
|
224 |
## Configure LLMs
|
225 |
|
226 |
-
RAGFlow is a RAG engine
|
227 |
-
|
228 |
-
- [OpenAI](https://platform.openai.com/login?launch)
|
229 |
-
- [Azure-OpenAI](https://ai.azure.com/)
|
230 |
-
- [Gemini](https://aistudio.google.com/)
|
231 |
-
- [Groq](https://console.groq.com/)
|
232 |
-
- [Mistral](https://mistral.ai/)
|
233 |
-
- [Bedrock](https://aws.amazon.com/cn/bedrock/)
|
234 |
-
- [Tongyi-Qianwen](https://dashscope.console.aliyun.com/model)
|
235 |
-
- [ZHIPU-AI](https://open.bigmodel.cn/)
|
236 |
-
- [MiniMax](https://platform.minimaxi.com/)
|
237 |
-
- [Moonshot](https://platform.moonshot.cn/docs)
|
238 |
-
- [DeepSeek](https://platform.deepseek.com/api-docs/)
|
239 |
-
- [Baichuan](https://www.baichuan-ai.com/home)
|
240 |
-
- [VolcEngine](https://www.volcengine.com/docs/82379)
|
241 |
-
- [Jina](https://jina.ai/reader/)
|
242 |
-
- [OpenRouter](https://openrouter.ai/)
|
243 |
-
- [StepFun](https://platform.stepfun.com/)
|
244 |
|
245 |
:::note
|
246 |
RAGFlow also supports deploying LLMs locally using Ollama, Xinference, or LocalAI, but this part is not covered in this quick start guide.
|
|
|
223 |
|
224 |
## Configure LLMs
|
225 |
|
226 |
+
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](./references/supported_models.mdx).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
227 |
|
228 |
:::note
|
229 |
RAGFlow also supports deploying LLMs locally using Ollama, Xinference, or LocalAI, but this part is not covered in this quick start guide.
|
docs/references/faq.md
CHANGED
@@ -5,6 +5,8 @@ slug: /faq
|
|
5 |
|
6 |
# Frequently asked questions
|
7 |
|
|
|
|
|
8 |
## General
|
9 |
|
10 |
### 1. What sets RAGFlow apart from other RAG products?
|
@@ -98,7 +100,7 @@ docker build -t infiniflow/ragflow:vX.Y.Z. --network host
|
|
98 |
|
99 |
#### 2.1 Cannot access https://huggingface.co
|
100 |
|
101 |
-
A *locally* deployed RAGflow downloads OCR and embedding modules from [Huggingface website](https://huggingface.co) by default. If your machine is unable to access this site, the following error occurs and PDF parsing fails:
|
102 |
|
103 |
```
|
104 |
FileNotFoundError: [Errno 2] No such file or directory: '/root/.cache/huggingface/hub/models--InfiniFlow--deepdoc/snapshots/be0c1e50eef6047b412d1800aa89aba4d275f997/ocr.res'
|
|
|
5 |
|
6 |
# Frequently asked questions
|
7 |
|
8 |
+
Queries regarding general usage, troubleshooting, features, performance, and more.
|
9 |
+
|
10 |
## General
|
11 |
|
12 |
### 1. What sets RAGFlow apart from other RAG products?
|
|
|
100 |
|
101 |
#### 2.1 Cannot access https://huggingface.co
|
102 |
|
103 |
+
A *locally* deployed RAGflow downloads OCR and embedding modules from [Huggingface website](https://huggingface.co) by default. If your machine is unable to access this site, the following error occurs and PDF parsing fails:
|
104 |
|
105 |
```
|
106 |
FileNotFoundError: [Errno 2] No such file or directory: '/root/.cache/huggingface/hub/models--InfiniFlow--deepdoc/snapshots/be0c1e50eef6047b412d1800aa89aba4d275f997/ocr.res'
|
docs/references/supported_models.mdx
CHANGED
@@ -12,7 +12,7 @@ A complete list of models supported by RAGFlow, which will continue to expand.
|
|
12 |
<APITable>
|
13 |
```
|
14 |
|
15 |
-
| Provider | Chat | Embedding | Rerank |
|
16 |
| --------------------- | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
17 |
| Anthropic | :heavy_check_mark: | | | | | |
|
18 |
| Azure-OpenAI | :heavy_check_mark: | :heavy_check_mark: | | :heavy_check_mark: | :heavy_check_mark: | |
|
@@ -20,7 +20,7 @@ A complete list of models supported by RAGFlow, which will continue to expand.
|
|
20 |
| BaiChuan | :heavy_check_mark: | :heavy_check_mark: | | | | |
|
21 |
| BaiduYiyan | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | |
|
22 |
| Bedrock | :heavy_check_mark: | :heavy_check_mark: | | | | |
|
23 |
-
|
|
24 |
| DeepSeek | :heavy_check_mark: | | | | | |
|
25 |
| FastEmbed | | :heavy_check_mark: | | | | |
|
26 |
| Fish Audio | | | | | | :heavy_check_mark: |
|
@@ -62,5 +62,6 @@ A complete list of models supported by RAGFlow, which will continue to expand.
|
|
62 |
</APITable>
|
63 |
```
|
64 |
|
65 |
-
|
66 |
-
|
|
|
|
12 |
<APITable>
|
13 |
```
|
14 |
|
15 |
+
| Provider | Chat | Embedding | Rerank | Multimodal | ASR | TTS |
|
16 |
| --------------------- | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
17 |
| Anthropic | :heavy_check_mark: | | | | | |
|
18 |
| Azure-OpenAI | :heavy_check_mark: | :heavy_check_mark: | | :heavy_check_mark: | :heavy_check_mark: | |
|
|
|
20 |
| BaiChuan | :heavy_check_mark: | :heavy_check_mark: | | | | |
|
21 |
| BaiduYiyan | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | |
|
22 |
| Bedrock | :heavy_check_mark: | :heavy_check_mark: | | | | |
|
23 |
+
| Cohere | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | |
|
24 |
| DeepSeek | :heavy_check_mark: | | | | | |
|
25 |
| FastEmbed | | :heavy_check_mark: | | | | |
|
26 |
| Fish Audio | | | | | | :heavy_check_mark: |
|
|
|
62 |
</APITable>
|
63 |
```
|
64 |
|
65 |
+
:::note
|
66 |
+
The list of supported models is extracted from [this source](https://github.com/infiniflow/ragflow/blob/main/rag/llm/__init__.py) and may not be the most current. For the latest supported model list, please refer to the Python file.
|
67 |
+
:::
|