LightRAG部署(v1.5.4)

环境:
OS:Centos 7
LightRAG:v1.5.4
部署方式:docker compose

 

1.下载介质
下载地址如下:
https://github.com/HKUDS/LightRAG/tree/v1.5.4

 

2.解压安装
root@dify:/soft# cd /soft
root@dify:/soft# unzip LightRAG-1.5.4.zip
root@dify:/soft# mv LightRAG-1.5.4 /home/middle/

 

3.准备环境变量文件
创建.env文件,内如如下:

vi /home/middle/LightRAG-1.5.4/.env

root@dify:/home/middle/LightRAG-1.5.4# more .env
WORKING_DIR=/app/data/rag_storage
INPUT_DIR=/app/data/inputs
PROMPT_DIR=/app/data/prompts

LLM_FUNC_WORKERS=1
USE_LLM_FUNC=false


# Rerank 阿里云 qwen3-rerank
RERANK_BINDING=cohere
RERANK_MODEL=qwen3-rerank
RERANK_BINDING_HOST=https://dashscope.aliyuncs.com/compatible-api/v1/reranks
RERANK_BINDING_API_KEY=sk-1655568935512eb41e08f371199036b597b


RERANK_BY_DEFAULT=True
MIN_RERANK_SCORE=0.2




##deepseek LLM_BINDING=openai LLM_BINDING_HOST=https://api.deepseek.com/v1 LLM_BINDING_API_KEY=sk-9926e7fa67bf4eb19f2da LLM_MODEL=deepseek-chat LLM_TIMEOUT=300 MAX_ASYNC_LLM=2 ##硅基流动 EMBEDDING_BINDING=openai EMBEDDING_API_KEY=sk-knlztuoeovyhjncsamyxchokagmaaqeyvaextc EMBEDDING_BASE_URL=https://api.siliconflow.cn/v1 # 加了 /v1 EMBEDDING_MODEL=Qwen/Qwen3-Embedding-8B EMBEDDING_DIM=4096 EMBEDDING_FUNC_WORKERS=1 USE_EMBEDDING_FUNC=true MAX_PARALLEL_EXTRACT=1 MAX_PARALLEL_INSERT=1 CHUNK_SIZE=400 CHUNK_OVERLAP_SIZE=80 COSINE_THRESHOLD=0.2 TOP_K=40

 

说明:
a.EMBEDDING 使用的是硅基流动的模型,EMBEDDING_DIM具体的值需要跟具体的模型配置.
b.LLM_BINDING使用的是deekseek模型,deepseek-chat速度最快,deepseek-v4-flash速度较慢,deepseek-v4-pro速度最慢

 

4.修改部署文件
cd /home/middle/LightRAG-1.5.4
vi docker-compose.yml

root@dify:/home/middle/LightRAG-1.5.4# more docker-compose.yml 
services:
  lightrag:
    image: registry.cn-shenzhen.aliyuncs.com/hxlk8s/lightrag:v1.5.4
    ports:
      - "9621:9621"
    volumes:
      - ./data/rag_storage:/app/data/rag_storage
      - ./data/inputs:/app/data/inputs
      - ./data/prompts:/app/data/prompts
      - ./data/ui_templates:/app/data/ui_templates:ro
      - ./.env:/app/.env
      ##- ./openai.py:/app/lightrag/llm/openai.py
    deploy:
      restart_policy:
        condition: on-failure
        max_attempts: 10
    extra_hosts:
      - "host.docker.internal:host-gateway"
    environment:
      WORKING_DIR: "/app/data/rag_storage"
      INPUT_DIR: "/app/data/inputs"
      PROMPT_DIR: "/app/data/prompts"
      HOST: "0.0.0.0"
      PORT: "9621"
      UI_TEMPLATES_DIR: "/app/data/ui_templates"

 

先注释掉./openai.py:/app/lightrag/llm/openai.py,因为下面需要修改这个文件,否则使用起来有问题,无法找到环境变量的值,默认就是调用openai了

 

5.部署
cd /home/middle/LightRAG-1.5.4
docker compose up -p

 

6.将openai.py文件拷贝到宿主机进行修改
docker cp 6470749abd74:/app/lightrag/llm/openai.py /home/middle/LightRAG-1.5.4/

 

7.修改openai.py
vi /tmp/openai.py
找到这个函数 async def openai_embed

    Returns:
        A numpy array of embeddings, one per input text.

    Raises:
        APIConnectionError: If there is a connection error with the OpenAI API.
        RateLimitError: If the OpenAI API rate limit is exceeded.
        APITimeoutError: If the OpenAI API request times out.
    """
    api_key = os.getenv("EMBEDDING_API_KEY") or api_key
    base_url = os.getenv("EMBEDDING_BASE_URL") or base_url
    model = os.getenv("EMBEDDING_MODEL") or model
    

添加红色部分

 

8.修改部署文件启用之前的注释项

    volumes:
      - ./data/rag_storage:/app/data/rag_storage
      - ./data/inputs:/app/data/inputs
      - ./data/prompts:/app/data/prompts
      - ./data/ui_templates:/app/data/ui_templates:ro
      - ./.env:/app/.env
      - ./openai.py:/app/lightrag/llm/openai.py

 

然后重新部署:
docker compose down
docker compose up -d

 

9.浏览器访问
http://192.168.12.87:9621/webui/

 

image

 

若需要使用外部的应用,需要在.env新增如下配置

 


LIGHTRAG_KV_STORAGE=MongoKVStorage
LIGHTRAG_DOC_STATUS_STORAGE=MongoDocStatusStorage
LIGHTRAG_GRAPH_STORAGE=Neo4JStorage
LIGHTRAG_VECTOR_STORAGE=MilvusVectorDBStorage




##mongodb MONGO_URI
=mongodb://hxldev:hxldev123@192.168.1.143:28001/mgdb_lightrag?authSource=admin&retryWrites=true&w=majority MONGO_DATABASE=mgdb_lightrag ##milvus MILVUS_URI=http://192.168.1.143:19530 MILVUS_DB_NAME=lightrag MILVUS_DEVICE=cpu MILVUS_USER=root MILVUS_PASSWORD=hxltest@123 MILVUS_TOKEN=root:hxltest@123 ##neo4j ### Neo4j Configuration NEO4J_URI=bolt://192.168.1.143:7687 NEO4J_USERNAME=neo4j NEO4J_PASSWORD='hxltest@123' NEO4J_DATABASE=neo4j NEO4J_MAX_CONNECTION_POOL_SIZE=100 NEO4J_CONNECTION_TIMEOUT=30 NEO4J_CONNECTION_ACQUISITION_TIMEOUT=30 NEO4J_MAX_TRANSACTION_RETRY_TIME=30 NEO4J_MAX_CONNECTION_LIFETIME=300 NEO4J_LIVENESS_CHECK_TIMEOUT=30 NEO4J_KEEP_ALIVE=true

 

posted @ 2026-09-09 15:54  slnngk  阅读(17)  评论(0)    收藏  举报