From 88eadb5c471b06bb4358b28bc8ccf679b14aeb7e Mon Sep 17 00:00:00 2001 From: writinwaters <93570324+writinwaters@users.noreply.github.com> Date: Fri, 29 Mar 2024 09:51:36 +0800 Subject: [PATCH] Editorial updates (#168) --- README.md | 89 +++++++++++++++++++++++++++++++------------------------ 1 file changed, 51 insertions(+), 38 deletions(-) diff --git a/README.md b/README.md index c55847d..f346b6c 100644 --- a/README.md +++ b/README.md @@ -20,16 +20,17 @@ <img height="21" src="https://img.shields.io/badge/License-Apache--2.0-ffffff?style=flat-square&labelColor=d4eaf7&color=7d09f1" alt="license"> </a> </p> -[RagFlow](https://demo.ragflow.io) is a knowledge management platform built on custom-build document understanding engine and LLM, with reasoned and well-founded answers to your question. Clone this repository, you can deploy your own knowledge management platform to empower your business with AI. - +## đź’ˇ What is RagFlow? + +[RagFlow](http://demo.ragflow.io) is a knowledge management platform built on custom-build document understanding engine and LLM, with reasoned and well-founded answers to your question. Clone this repository, you can deploy your own knowledge management platform to empower your business with AI. <div align="center" style="margin-top:20px;margin-bottom:20px;"> <img src="https://github.com/infiniflow/ragflow/assets/12318111/b24a7a5f-4d1d-4a30-90b1-7b0ec558b79d" width="1000"/> </div> -## 🌟Key Features +## 🌟 Key Features - đźŤ**Custom-build document understanding engine.** Our deep learning engine is made according to the needs of analyzing and searching various type of documents in different domain. - - For documents from different domain for different purpose, the engine applys different analyzing and search strategy. + - For documents from different domain for different purpose, the engine applies different analyzing and search strategy. - Easily intervene and manipulate the data proccessing procedure when things goes beyond expectation. - Multi-media document understanding is supported using OCR and multi-modal LLM. - đźŤ**State-of-the-art table structure and layout recognition.** Precisely extract and understand the document including table content. See [README.](./deepdoc/README.md) @@ -46,34 +47,52 @@ ## 🤺RagFlow vs. other RAG applications +## 🔎 System Architecture +<div align="center" style="margin-top:20px;margin-bottom:20px;"> +<img src="https://github.com/infiniflow/ragflow/assets/12318111/d6ac5664-c237-4200-a7c2-a4a00691b485" width="1000"/> +</div> ## 🎬 Get Started -### đź“ťPrerequisites +### đź“ť Prerequisites + - CPU >= 2 cores - RAM >= 8 GB +- Docker +- `vm.max_map_count` > 65535 -Then, you need to check the following command: -```bash -$ sysctl vm.max_map_count -vm.max_map_count = 262144 -``` -If **vm.max_map_count** is not greater than 65535: -```bash -$ sudo sysctl -w vm.max_map_count=262144 -``` -Note that this change is reset after a system reboot. To render your change permanent, add or update the following line in **/etc/sysctl.conf**: +> To check the value of `vm.max_map_count`: +> +> ```bash +> $ sysctl vm.max_map_count +> ``` +> +> Reset `vm.max_map_count` to a value greater than 65535 if it is not. In this case, we set it to 262144: +> +> ```bash +> $ sudo sysctl -w vm.max_map_count=262144 +> ``` +> +> This change will be reset after a system reboot. To ensure your change remains permanent, add or update the following line in **/etc/sysctl.conf** accordingly: +> +> ```bash +> vm.max_map_count=262144 +> ``` -```bash -vm.max_map_count=262144 -``` -### Install docker -If you have not installed *Docker* on your local machine, see [Install Docker Engine](https://docs.docker.com/engine/install/) +### Start up the RagFlow server -### Quick Start +1. Clone the repo + + ```bash + $ git clone https://github.com/infiniflow/ragflow.git + ``` + + + +2. > - In [service_conf.yaml](./docker/service_conf.yaml), configuration of *LLM* in **user_default_llm** is strongly recommended. > In **user_default_llm** of [service_conf.yaml](./docker/service_conf.yaml), you need to specify LLM factory and your own _API_KEY_. @@ -83,7 +102,7 @@ Settings the next time you log in to the system. > [OpenAI](https://platform.openai.com/login?launch), [Tongyi-Qianwen](https://dashscope.console.aliyun.com/model), > [ZHIPU-AI](https://open.bigmodel.cn/), [Moonshot](https://platform.moonshot.cn/docs/docs) ```bash -$ git clone https://github.com/infiniflow/ragflow.git + $ cd ragflow/docker $ docker compose up -d ``` @@ -98,11 +117,11 @@ $ docker compose up -d ``` > The core image is about 15 GB in size and may take a while to load. -Check the server status after pulling all images and running up: +Check the server status after pulling all images and having Docker up and running: ```bash $ docker logs -f ragflow-server ``` -*Hallelujah! The following outputs indicates that you have successfully launched the system:* +*The following output confirms the successful launch of the system:* ```bash ____ ______ __ @@ -118,20 +137,17 @@ $ docker logs -f ragflow-server INFO:werkzeug:Press CTRL+C to quit ``` -Open your browser, enter the IP address of your server, _**Hallelujah**_ again! -> The default serving port is 80, if you want to change that, refer to the [docker-compose.yml](./docker-compose.yaml) and change the left part of *'80:80'*'. +In your browser, enter the IP address of your server. -## 🔎System Architecture -<div align="center" style="margin-top:20px;margin-bottom:20px;"> -<img src="https://github.com/infiniflow/ragflow/assets/12318111/d6ac5664-c237-4200-a7c2-a4a00691b485" width="1000"/> -</div> ## 🔧 Configurations +> The default serving port is 80, if you want to change that, refer to the [docker-compose.yml](./docker-compose.yaml) and change the left part of `80:80`, say `66:80`. + If you need to change the default setting of the system when you deploy it. There several ways to configure it. Please refer to this [README](./docker/README.md) to manually update the configuration. -After changing something, please run *docker-compose up -d* again. +Updates to system configurations require a system reboot to take effect *docker-compose up -d* again. > If you want to change the basic setups, like port, password .etc., please refer to [.env](./docker/.env) before starting up the system. @@ -141,15 +157,12 @@ After changing something, please run *docker-compose up -d* again. See the [RagFlow Roadmap 2024](https://github.com/infiniflow/ragflow/issues/162) -## 🏄Community +## 🏄 Community - [Discord](https://discord.gg/uqQ4YMDf) -- X -- [GitHub Discussions]() -- YouTube -- WeChat - +- [Twitter](https://twitter.com/infiniflowai) +- GitHub Discussions ## 🙌 Contributing -For those who'd like to contribute code, see our [Contribution Guide](https://github.com/infiniflow/ragflow/blob/main/CONTRIBUTING.md). +RagFlow flourishes via open-source collaboration. In this spirit, we embrace diverse contributions from the community. If you would like to be a part, review our [Contribution Guidelines](https://github.com/infiniflow/ragflow/blob/main/CONTRIBUTING.md) first. -- GitLab