|
<div align="center"> |
|
<a href="https://demo.ragflow.io/"> |
|
<img src="web/src/assets/logo-with-text.png" width="520" alt="ragflow logo"> |
|
</a> |
|
</div> |
|
|
|
<p align="center"> |
|
<a href="./README.md">English</a> | |
|
<a href="./README_zh.md">็ฎไฝไธญๆ</a> | |
|
<a href="./README_ja.md">ๆฅๆฌ่ช</a> | |
|
<a href="./README_ko.md">ํ๊ตญ์ด</a> | |
|
<a href="./README_id.md">Bahasa Indonesia</a> |
|
</p> |
|
|
|
<p align="center"> |
|
<a href="https://x.com/intent/follow?screen_name=infiniflowai" target="_blank"> |
|
<img src="https://img.shields.io/twitter/follow/infiniflow?logo=X&color=%20%23f5f5f5" alt="follow on X(Twitter)"> |
|
</a> |
|
<a href="https://demo.ragflow.io" target="_blank"> |
|
<img alt="Static Badge" src="https://img.shields.io/badge/Online-Demo-4e6b99"> |
|
</a> |
|
<a href="https://hub.docker.com/r/infiniflow/ragflow" target="_blank"> |
|
<img src="https://img.shields.io/badge/docker_pull-ragflow:v0.14.1-brightgreen" alt="docker pull infiniflow/ragflow:v0.14.1"> |
|
</a> |
|
<a href="https://github.com/infiniflow/ragflow/releases/latest"> |
|
<img src="https://img.shields.io/github/v/release/infiniflow/ragflow?color=blue&label=Latest%20Release" alt="Latest Release"> |
|
</a> |
|
<a href="https://github.com/infiniflow/ragflow/blob/main/LICENSE"> |
|
<img height="21" src="https://img.shields.io/badge/License-Apache--2.0-ffffff?labelColor=d4eaf7&color=2e6cc4" alt="license"> |
|
</a> |
|
</p> |
|
|
|
|
|
<h4 align="center"> |
|
<a href="https://ragflow.io/docs/dev/">Document</a> | |
|
<a href="https://github.com/infiniflow/ragflow/issues/162">Roadmap</a> | |
|
<a href="https://twitter.com/infiniflowai">Twitter</a> | |
|
<a href="https://discord.gg/4XxujFgUN7">Discord</a> | |
|
<a href="https://demo.ragflow.io">Demo</a> |
|
</h4> |
|
|
|
|
|
## ๐ก RAGFlow๋? |
|
|
|
[RAGFlow](https://ragflow.io/)๋ ์ฌ์ธต ๋ฌธ์ ์ดํด์ ๊ธฐ๋ฐํ ์คํ์์ค RAG (Retrieval-Augmented Generation) ์์ง์
๋๋ค. ์ด ์์ง์ ๋๊ท๋ชจ ์ธ์ด ๋ชจ๋ธ(LLM)๊ณผ ๊ฒฐํฉํ์ฌ ์ ํํ ์ง๋ฌธ ์๋ต ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ฉฐ, ๋ค์ํ ๋ณต์กํ ํ์์ ๋ฐ์ดํฐ์์ ์ ๋ขฐํ ์ ์๋ ์ถ์ฒ๋ฅผ ๋ฐํ์ผ๋ก ํ ์ธ์ฉ์ ํตํด ์ด๋ฅผ ๋ท๋ฐ์นจํฉ๋๋ค. RAGFlow๋ ๊ท๋ชจ์ ์๊ด์์ด ๋ชจ๋ ๊ธฐ์
์ ์ต์ ํ๋ RAG ์ํฌํ๋ก์ฐ๋ฅผ ์ ๊ณตํฉ๋๋ค. |
|
|
|
|
|
|
|
## ๐ฎ ๋ฐ๋ชจ |
|
๋ฐ๋ชจ๋ฅผ [https://demo.ragflow.io](https://demo.ragflow.io)์์ ์คํํด ๋ณด์ธ์. |
|
<div align="center" style="margin-top:20px;margin-bottom:20px;"> |
|
<img src="https://github.com/infiniflow/ragflow/assets/7248/2f6baa3e-1092-4f11-866d-36f6a9d075e5" width="1200"/> |
|
<img src="https://github.com/user-attachments/assets/504bbbf1-c9f7-4d83-8cc5-e9cb63c26db6" width="1200"/> |
|
</div> |
|
|
|
|
|
## ๐ฅ ์
๋ฐ์ดํธ |
|
|
|
- 2024-12-04 ์ง์๋ฒ ์ด์ค์ ๋ํ ํ์ด์ง๋ญํฌ ์ ์๋ฅผ ์ง์ํฉ๋๋ค. |
|
|
|
- 2024-11-22 ์์ด์ ํธ์ ๋ณ์ ์ ์ ๋ฐ ์ฌ์ฉ์ ๊ฐ์ ํ์ต๋๋ค. |
|
|
|
- 2024-11-01 ํ์ฑ๋ ์ฒญํฌ์ ํค์๋ ์ถ์ถ ๋ฐ ๊ด๋ จ ์ง๋ฌธ ์์ฑ์ ์ถ๊ฐํ์ฌ ์ฌํ์จ์ ํฅ์์ํต๋๋ค. |
|
|
|
- 2024-08-22 RAG๋ฅผ ํตํด SQL ๋ฌธ์ ํ
์คํธ๋ฅผ ์ง์ํฉ๋๋ค. |
|
|
|
- 2024-08-02: [graphrag](https://github.com/microsoft/graphrag)์ ๋ง์ธ๋๋งต์์ ์๊ฐ์ ๋ฐ์ GraphRAG๋ฅผ ์ง์ํฉ๋๋ค. |
|
|
|
|
|
## ๐ ๊ณ์ ์ง์ผ๋ด ์ฃผ์ธ์ |
|
โญ๏ธ์ฐ๋ฆฌ์ ์ ์ฅ์๋ฅผ ์ฆ๊ฒจ์ฐพ๊ธฐ์ ๋ฑ๋กํ์ฌ ํฅ๋ฏธ๋ก์ด ์๋ก์ด ๊ธฐ๋ฅ๊ณผ ์
๋ฐ์ดํธ๋ฅผ ์ต์ ์ํ๋ก ์ ์งํ์ธ์! ๋ชจ๋ ์๋ก์ด ๋ฆด๋ฆฌ์ค์ ๋ํ ์ฆ์ ์๋ฆผ์ ๋ฐ์ผ์ธ์! ๐ |
|
<div align="center" style="margin-top:20px;margin-bottom:20px;"> |
|
<img src="https://github.com/user-attachments/assets/18c9707e-b8aa-4caf-a154-037089c105ba" width="1200"/> |
|
</div> |
|
|
|
|
|
## ๐ ์ฃผ์ ๊ธฐ๋ฅ |
|
|
|
### ๐ญ **"Quality in, quality out"** |
|
- [์ฌ์ธต ๋ฌธ์ ์ดํด](./deepdoc/README.md)๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ณต์กํ ํ์์ ๋น์ ํ ๋ฐ์ดํฐ์์ ์ง์์ ์ถ์ถํฉ๋๋ค. |
|
- ๋ฌธ์ ๊ทธ๋๋ก ๋ฌดํํ ํ ํฐ์์ "๋ฐ์ดํฐ ์์ ๋ฐ๋"์ ์ฐพ์๋
๋๋ค. |
|
|
|
### ๐ฑ **ํ
ํ๋ฆฟ ๊ธฐ๋ฐ์ chunking** |
|
- ๋๋ํ๊ณ ์ค๋ช
๊ฐ๋ฅํ ๋ฐฉ์. |
|
- ๋ค์ํ ํ
ํ๋ฆฟ ์ต์
์ ์ ๊ณตํฉ๋๋ค. |
|
|
|
|
|
### ๐ฑ **ํ ๋ฃจ์๋ค์ด์
์ ์ค์ธ ์ ๋ขฐํ ์ ์๋ ์ธ์ฉ** |
|
- ํ
์คํธ ์ฒญํน์ ์๊ฐํํ์ฌ ์ฌ์ฉ์๊ฐ ๊ฐ์
ํ ์ ์๋๋ก ํฉ๋๋ค. |
|
- ์ค์ํ ์ฐธ๊ณ ์๋ฃ์ ์ถ์ ๊ฐ๋ฅํ ์ธ์ฉ์ ๋น ๋ฅด๊ฒ ํ์ธํ์ฌ ์ ๋ขฐํ ์ ์๋ ๋ต๋ณ์ ์ง์ํฉ๋๋ค. |
|
|
|
|
|
### ๐ **๋ค๋ฅธ ์ข
๋ฅ์ ๋ฐ์ดํฐ ์์ค์์ ํธํ์ฑ** |
|
- ์๋, ์ฌ๋ผ์ด๋, ์์
, ํ
์คํธ ํ์ผ, ์ด๋ฏธ์ง, ์ค์บ๋ณธ, ๊ตฌ์กฐํ๋ ๋ฐ์ดํฐ, ์น ํ์ด์ง ๋ฑ์ ์ง์ํฉ๋๋ค. |
|
|
|
### ๐ **์๋ํ๋๊ณ ์์ฌ์ด RAG ์ํฌํ๋ก์ฐ** |
|
- ๊ฐ์ธ ๋ฐ ๋๊ท๋ชจ ๋น์ฆ๋์ค์ ๋ง์ถ ํจ์จ์ ์ธ RAG ์ค์ผ์คํธ๋ ์ด์
. |
|
- ๊ตฌ์ฑ ๊ฐ๋ฅํ LLM ๋ฐ ์๋ฒ ๋ฉ ๋ชจ๋ธ. |
|
- ๋ค์ค ๊ฒ์๊ณผ ๊ฒฐํฉ๋ re-ranking. |
|
- ๋น์ฆ๋์ค์ ์ํํ๊ฒ ํตํฉํ ์ ์๋ ์ง๊ด์ ์ธ API. |
|
|
|
|
|
## ๐ ์์คํ
์ํคํ
์ฒ |
|
|
|
<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> |
|
|
|
## ๐ฌ ์์ํ๊ธฐ |
|
### ๐ ์ฌ์ ์ค๋น ์ฌํญ |
|
- CPU >= 4 cores |
|
- RAM >= 16 GB |
|
- Disk >= 50 GB |
|
- Docker >= 24.0.0 & Docker Compose >= v2.26.1 |
|
> ๋ก์ปฌ ๋จธ์ (Windows, Mac, Linux)์ Docker๊ฐ ์ค์น๋์ง ์์ ๊ฒฝ์ฐ, [Docker ์์ง ์ค์น]((https://docs.docker.com/engine/install/))๋ฅผ ์ฐธ์กฐํ์ธ์. |
|
|
|
|
|
### ๐ ์๋ฒ ์์ํ๊ธฐ |
|
|
|
1. `vm.max_map_count`๊ฐ 262144 ์ด์์ธ์ง ํ์ธํ์ธ์: |
|
> `vm.max_map_count`์ ๊ฐ์ ์๋ ๋ช
๋ น์ด๋ฅผ ํตํด ํ์ธํ์ธ์: |
|
> |
|
> ```bash |
|
> $ sysctl vm.max_map_count |
|
> ``` |
|
> |
|
> ๋ง์ฝ `vm.max_map_count` ์ด 262144 ๋ณด๋ค ์๋ค๋ฉด ๊ฐ์ ์์ค์ ํ์ธ์. |
|
> |
|
> ```bash |
|
> # ์ด ๊ฒฝ์ฐ์ 262144๋ก ์ค์ ํ์ต๋๋ค.: |
|
> $ sudo sysctl -w vm.max_map_count=262144 |
|
> ``` |
|
> |
|
> ์ด ๋ณ๊ฒฝ ์ฌํญ์ ์์คํ
์ฌ๋ถํ
ํ์ ์ด๊ธฐํ๋ฉ๋๋ค. ๋ณ๊ฒฝ ์ฌํญ์ ์๊ตฌ์ ์ผ๋ก ์ ์ฉํ๋ ค๋ฉด /etc/sysctl.conf ํ์ผ์ vm.max_map_count ๊ฐ์ ์ถ๊ฐํ๊ฑฐ๋ ์
๋ฐ์ดํธํ์ธ์: |
|
> |
|
> ```bash |
|
> vm.max_map_count=262144 |
|
> ``` |
|
|
|
2. ๋ ํฌ์งํ ๋ฆฌ๋ฅผ ํด๋ก ํ์ธ์: |
|
|
|
```bash |
|
$ git clone https://github.com/infiniflow/ragflow.git |
|
``` |
|
|
|
3. ๋ฏธ๋ฆฌ ๋น๋๋ Docker ์ด๋ฏธ์ง๋ฅผ ์์ฑํ๊ณ ์๋ฒ๋ฅผ ์์ํ์ธ์: |
|
|
|
> ์๋ ๋ช
๋ น์ด๋ RAGFlow Docker ์ด๋ฏธ์ง์ v0.14.1-slim ๋ฒ์ ์ ๋ค์ด๋ก๋ํฉ๋๋ค. ๋ค์ํ RAGFlow ๋ฒ์ ์ ๋ํ ์ค๋ช
์ ๋ค์ ํ๋ฅผ ์ฐธ์กฐํ์ญ์์ค. v0.14.1-slim๊ณผ ๋ค๋ฅธ RAGFlow ๋ฒ์ ์ ๋ค์ด๋ก๋ํ๋ ค๋ฉด, docker/.env ํ์ผ์์ RAGFLOW_IMAGE ๋ณ์๋ฅผ ์ ์ ํ ์
๋ฐ์ดํธํ ํ docker compose๋ฅผ ์ฌ์ฉํ์ฌ ์๋ฒ๋ฅผ ์์ํ์ญ์์ค. ์๋ฅผ ๋ค์ด, ์ ์ฒด ๋ฒ์ ์ธ v0.14.1์ ๋ค์ด๋ก๋ํ๋ ค๋ฉด RAGFLOW_IMAGE=infiniflow/ragflow:v0.14.1๋ก ์ค์ ํฉ๋๋ค. |
|
|
|
```bash |
|
$ cd ragflow |
|
$ docker compose -f docker/docker-compose.yml up -d |
|
``` |
|
|
|
| RAGFlow image tag | Image size (GB) | Has embedding models? | Stable? | |
|
| ----------------- | --------------- | --------------------- | ------------------------ | |
|
| v0.14.1 | ≈9 | :heavy_check_mark: | Stable release | |
|
| v0.14.1-slim | ≈2 | โ | Stable release | |
|
| v0.15.0-dev1 | ≈9 | :heavy_check_mark: | *Unstable* beta release | |
|
| v0.15.0-dev1-slim | ≈2 | โ | *Unstable* beta release | |
|
| nightly | ≈9 | :heavy_check_mark: | *Unstable* nightly build | |
|
| nightly-slim | ≈2 | โ | *Unstable* nightly build | |
|
|
|
4. ์๋ฒ๊ฐ ์์๋ ํ ์๋ฒ ์ํ๋ฅผ ํ์ธํ์ธ์: |
|
|
|
```bash |
|
$ docker logs -f ragflow-server |
|
``` |
|
|
|
_๋ค์ ์ถ๋ ฅ ๊ฒฐ๊ณผ๋ก ์์คํ
์ด ์ฑ๊ณต์ ์ผ๋ก ์์๋์์์ ํ์ธํฉ๋๋ค:_ |
|
|
|
```bash |
|
____ ___ ______ ______ __ |
|
/ __ \ / | / ____// ____// /____ _ __ |
|
/ /_/ // /| | / / __ / /_ / // __ \| | /| / / |
|
/ _, _// ___ |/ /_/ // __/ / // /_/ /| |/ |/ / |
|
/_/ |_|/_/ |_|\____//_/ /_/ \____/ |__/|__/ |
|
|
|
* 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 |
|
``` |
|
> ๋ง์ฝ ํ์ธ ๋จ๊ณ๋ฅผ ๊ฑด๋๋ฐ๊ณ ๋ฐ๋ก RAGFlow์ ๋ก๊ทธ์ธํ๋ฉด, RAGFlow๊ฐ ์์ ํ ์ด๊ธฐํ๋์ง ์์๊ธฐ ๋๋ฌธ์ ๋ธ๋ผ์ฐ์ ์์ `network anormal` ์ค๋ฅ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. |
|
|
|
5. ์น ๋ธ๋ผ์ฐ์ ์ ์๋ฒ์ IP ์ฃผ์๋ฅผ ์
๋ ฅํ๊ณ RAGFlow์ ๋ก๊ทธ์ธํ์ธ์. |
|
> ๊ธฐ๋ณธ ์ค์ ์ ์ฌ์ฉํ ๊ฒฝ์ฐ, `http://IP_OF_YOUR_MACHINE`๋ง ์
๋ ฅํ๋ฉด ๋ฉ๋๋ค (ํฌํธ ๋ฒํธ๋ ์ ์ธ). ๊ธฐ๋ณธ HTTP ์๋น์ค ํฌํธ `80`์ ๊ธฐ๋ณธ ๊ตฌ์ฑ์ผ๋ก ์ฌ์ฉํ ๋ ์๋ตํ ์ ์์ต๋๋ค. |
|
6. [service_conf.yaml.template](./docker/service_conf.yaml.template) ํ์ผ์์ ์ํ๋ LLM ํฉํ ๋ฆฌ๋ฅผ `user_default_llm`์ ์ ํํ๊ณ , `API_KEY` ํ๋๋ฅผ ํด๋น API ํค๋ก ์
๋ฐ์ดํธํ์ธ์. |
|
> ์์ธํ ๋ด์ฉ์ [llm_api_key_setup](https://ragflow.io/docs/dev/llm_api_key_setup)๋ฅผ ์ฐธ์กฐํ์ธ์. |
|
|
|
_์ด์ ์ผ๊ฐ ์์๋ฉ๋๋ค!_ |
|
|
|
## ๐ง ์ค์ |
|
|
|
์์คํ
์ค์ ๊ณผ ๊ด๋ จํ์ฌ ๋ค์ ํ์ผ๋ค์ ๊ด๋ฆฌํด์ผ ํฉ๋๋ค: |
|
|
|
- [.env](./docker/.env): `SVR_HTTP_PORT`, `MYSQL_PASSWORD`, `MINIO_PASSWORD`์ ๊ฐ์ ์์คํ
์ ๊ธฐ๋ณธ ์ค์ ์ ํฌํจํฉ๋๋ค. |
|
- [service_conf.yaml.template](./docker/service_conf.yaml.template): ๋ฐฑ์๋ ์๋น์ค๋ฅผ ๊ตฌ์ฑํฉ๋๋ค. |
|
- [docker-compose.yml](./docker/docker-compose.yml): ์์คํ
์ [docker-compose.yml](./docker/docker-compose.yml)์ ์ฌ์ฉํ์ฌ ์์๋ฉ๋๋ค. |
|
|
|
[.env](./docker/.env) ํ์ผ์ ๋ณ๊ฒฝ ์ฌํญ์ด [service_conf.yaml.template](./docker/service_conf.yaml.template) ํ์ผ์ ๋ด์ฉ๊ณผ ์ผ์นํ๋๋ก ํด์ผ ํฉ๋๋ค. |
|
|
|
> [./docker/README](./docker/README.md) ํ์ผ ./docker/README์ service_conf.yaml.template ํ์ผ์์ ${ENV_VARS}๋ก ์ฌ์ฉํ ์ ์๋ ํ๊ฒฝ ์ค์ ๊ณผ ์๋น์ค ๊ตฌ์ฑ์ ๋ํ ์์ธํ ์ค๋ช
์ ์ ๊ณตํฉ๋๋ค. |
|
|
|
๊ธฐ๋ณธ HTTP ์๋น์ค ํฌํธ(80)๋ฅผ ์
๋ฐ์ดํธํ๋ ค๋ฉด [docker-compose.yml](./docker/docker-compose.yml) ํ์ผ์์ `80:80`์ `<YOUR_SERVING_PORT>:80`์ผ๋ก ๋ณ๊ฒฝํ์ธ์. |
|
|
|
> ๋ชจ๋ ์์คํ
๊ตฌ์ฑ ์
๋ฐ์ดํธ๋ ์ ์ฉ๋๊ธฐ ์ํด ์์คํ
์ฌ๋ถํ
์ด ํ์ํฉ๋๋ค. |
|
> |
|
> ```bash |
|
> $ docker compose -f docker/docker-compose.yml up -d |
|
> ``` |
|
|
|
### Elasticsearch ์์ Infinity ๋ก ๋ฌธ์ ์์ง ์ ํ |
|
|
|
RAGFlow ๋ ๊ธฐ๋ณธ์ ์ผ๋ก Elasticsearch ๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ฒด ํ
์คํธ ๋ฐ ๋ฒกํฐ๋ฅผ ์ ์ฅํฉ๋๋ค. [Infinity]๋ก ์ ํ(https://github.com/infiniflow/infinity/), ๋ค์ ์ ์ฐจ๋ฅผ ๋ฐ๋ฅด์ญ์์ค. |
|
1. ์คํ ์ค์ธ ๋ชจ๋ ์ปจํ
์ด๋๋ฅผ ์ค์งํฉ๋๋ค. |
|
```bash |
|
$docker compose-f docker/docker-compose.yml down -v |
|
``` |
|
2. **docker/.env**์ "DOC_ENGINE" ์ "infinity" ๋ก ์ค์ ํฉ๋๋ค. |
|
3. ์ปจํ
์ด๋ ๋ถํ
: |
|
```bash |
|
$docker compose-f docker/docker-compose.yml up -d |
|
``` |
|
> [!WARNING] |
|
> Linux/arm64 ์์คํ
์์ Infinity๋ก ์ ํํ๋ ๊ฒ์ ๊ณต์์ ์ผ๋ก ์ง์๋์ง ์์ต๋๋ค. |
|
|
|
## ๐ง ์์ค ์ฝ๋๋ก Docker ์ด๋ฏธ์ง๋ฅผ ์ปดํ์ผํฉ๋๋ค(์๋ฒ ๋ฉ ๋ชจ๋ธ ํฌํจํ์ง ์์) |
|
|
|
์ด Docker ์ด๋ฏธ์ง์ ํฌ๊ธฐ๋ ์ฝ 1GB์ด๋ฉฐ, ์ธ๋ถ ๋ํ ๋ชจ๋ธ๊ณผ ์๋ฒ ๋ฉ ์๋น์ค์ ์์กดํฉ๋๋ค. |
|
|
|
```bash |
|
git clone https://github.com/infiniflow/ragflow.git |
|
cd ragflow/ |
|
docker build --build-arg LIGHTEN=1 -f Dockerfile -t infiniflow/ragflow:nightly-slim . |
|
``` |
|
|
|
## ๐ง ์์ค ์ฝ๋๋ก Docker ์ด๋ฏธ์ง๋ฅผ ์ปดํ์ผํฉ๋๋ค(์๋ฒ ๋ฉ ๋ชจ๋ธ ํฌํจ) |
|
|
|
์ด Docker์ ํฌ๊ธฐ๋ ์ฝ 9GB์ด๋ฉฐ, ์ด๋ฏธ ์๋ฒ ๋ฉ ๋ชจ๋ธ์ ํฌํจํ๊ณ ์์ผ๋ฏ๋ก ์ธ๋ถ ๋ํ ๋ชจ๋ธ ์๋น์ค์๋ง ์์กดํ๋ฉด ๋ฉ๋๋ค. |
|
|
|
```bash |
|
git clone https://github.com/infiniflow/ragflow.git |
|
cd ragflow/ |
|
docker build -f Dockerfile -t infiniflow/ragflow:nightly . |
|
``` |
|
|
|
## ๐จ ์์ค ์ฝ๋๋ก ์๋น์ค๋ฅผ ์์ํฉ๋๋ค. |
|
|
|
1. Poetry๋ฅผ ์ค์นํ๊ฑฐ๋ ์ด๋ฏธ ์ค์น๋ ๊ฒฝ์ฐ ์ด ๋จ๊ณ๋ฅผ ๊ฑด๋๋๋๋ค: |
|
```bash |
|
pipx install poetry |
|
export POETRY_VIRTUALENVS_CREATE=true POETRY_VIRTUALENVS_IN_PROJECT=true |
|
``` |
|
|
|
2. ์์ค ์ฝ๋๋ฅผ ํด๋ก ํ๊ณ Python ์์กด์ฑ์ ์ค์นํฉ๋๋ค: |
|
```bash |
|
git clone https://github.com/infiniflow/ragflow.git |
|
cd ragflow/ |
|
~/.local/bin/poetry install --sync --no-root # install RAGFlow dependent python modules |
|
``` |
|
|
|
3. Docker Compose๋ฅผ ์ฌ์ฉํ์ฌ ์์กด ์๋น์ค(MinIO, Elasticsearch, Redis ๋ฐ MySQL)๋ฅผ ์์ํฉ๋๋ค: |
|
```bash |
|
docker compose -f docker/docker-compose-base.yml up -d |
|
``` |
|
|
|
`/etc/hosts` ์ ๋ค์ ์ค์ ์ถ๊ฐํ์ฌ **conf/service_conf.yaml** ์ ์ง์ ๋ ๋ชจ๋ ํธ์คํธ๋ฅผ `127.0.0.1` ๋ก ํด๊ฒฐํฉ๋๋ค: |
|
``` |
|
127.0.0.1 es01 infinity mysql minio redis |
|
``` |
|
|
|
4. HuggingFace์ ์ ๊ทผํ ์ ์๋ ๊ฒฝ์ฐ, `HF_ENDPOINT` ํ๊ฒฝ ๋ณ์๋ฅผ ์ค์ ํ์ฌ ๋ฏธ๋ฌ ์ฌ์ดํธ๋ฅผ ์ฌ์ฉํ์ธ์: |
|
|
|
```bash |
|
export HF_ENDPOINT=https://hf-mirror.com |
|
``` |
|
|
|
5. ๋ฐฑ์๋ ์๋น์ค๋ฅผ ์์ํฉ๋๋ค: |
|
```bash |
|
source .venv/bin/activate |
|
export PYTHONPATH=$(pwd) |
|
bash docker/launch_backend_service.sh |
|
``` |
|
|
|
6. ํ๋ก ํธ์๋ ์์กด์ฑ์ ์ค์นํฉ๋๋ค: |
|
```bash |
|
cd web |
|
npm install --force |
|
``` |
|
7. ํ๋ก ํธ์๋ ์๋น์ค๋ฅผ ์์ํฉ๋๋ค: |
|
```bash |
|
npm run dev |
|
``` |
|
|
|
_๋ค์ ์ธํฐํ์ด์ค๋ ์์คํ
์ด ์ฑ๊ณต์ ์ผ๋ก ์์๋์์์ ๋ํ๋
๋๋ค:_ |
|
|
|
 |
|
|
|
## ๐ ๋ฌธ์ |
|
|
|
- [Quickstart](https://ragflow.io/docs/dev/) |
|
- [User guide](https://ragflow.io/docs/dev/category/guides) |
|
- [References](https://ragflow.io/docs/dev/category/references) |
|
- [FAQ](https://ragflow.io/docs/dev/faq) |
|
|
|
## ๐ ๋ก๋๋งต |
|
|
|
[RAGFlow ๋ก๋๋งต 2024](https://github.com/infiniflow/ragflow/issues/162)์ ํ์ธํ์ธ์. |
|
|
|
## ๐ ์ปค๋ฎค๋ํฐ |
|
|
|
- [Discord](https://discord.gg/4XxujFgUN7) |
|
- [Twitter](https://twitter.com/infiniflowai) |
|
- [GitHub Discussions](https://github.com/orgs/infiniflow/discussions) |
|
|
|
## ๐ ์ปจํธ๋ฆฌ๋ทฐ์
|
|
|
|
RAGFlow๋ ์คํ์์ค ํ์
์ ํตํด ๋ฐ์ ํฉ๋๋ค. ์ด๋ฌํ ์ ์ ์ ๋ฐํ์ผ๋ก, ์ฐ๋ฆฌ๋ ์ปค๋ฎค๋ํฐ์ ๋ค์ํ ๊ธฐ์ฌ๋ฅผ ํ์ํฉ๋๋ค. ์ฐธ์ฌํ๊ณ ์ถ์ผ์๋ค๋ฉด, ๋จผ์ [๊ฐ์ด๋๋ผ์ธ](./CONTRIBUTING.md)์ ๊ฒํ ํด ์ฃผ์ธ์. |
|
|