mirror of
https://github.com/HKUDS/LightRAG.git
synced 2025-06-26 22:00:19 +00:00
Reorganize env config sections, add data store config to env file.
• Add namespace prefix config option • Make AGE graph name optional • Update env variable requirements • Add comments for deprecated options
This commit is contained in:
parent
fc0f522ed5
commit
cf61bed62c
109
.env.example
109
.env.example
@ -1,12 +1,30 @@
|
|||||||
# Server Configuration
|
### Server Configuration
|
||||||
HOST=0.0.0.0
|
#HOST=0.0.0.0
|
||||||
PORT=9621
|
#PORT=9621
|
||||||
|
#NAMESPACE_PREFIX=lightrag # separating data from difference Lightrag instances
|
||||||
|
|
||||||
# Directory Configuration
|
### Optional SSL Configuration
|
||||||
WORKING_DIR=/app/data/rag_storage
|
#SSL=true
|
||||||
INPUT_DIR=/app/data/inputs
|
#SSL_CERTFILE=/path/to/cert.pem
|
||||||
|
#SSL_KEYFILE=/path/to/key.pem
|
||||||
|
|
||||||
# RAG Configuration
|
### Security (empty for no api-key is needed)
|
||||||
|
# LIGHTRAG_API_KEY=your-secure-api-key-here
|
||||||
|
|
||||||
|
### Directory Configuration
|
||||||
|
# WORKING_DIR=./rag_storage
|
||||||
|
# INPUT_DIR=./inputs
|
||||||
|
|
||||||
|
### Logging level
|
||||||
|
LOG_LEVEL=INFO
|
||||||
|
|
||||||
|
### Optional Timeout
|
||||||
|
TIMEOUT=300
|
||||||
|
|
||||||
|
# Ollama Emulating Model Tag
|
||||||
|
# OLLAMA_EMULATING_MODEL_TAG=latest
|
||||||
|
|
||||||
|
### RAG Configuration
|
||||||
MAX_ASYNC=4
|
MAX_ASYNC=4
|
||||||
MAX_TOKENS=32768
|
MAX_TOKENS=32768
|
||||||
EMBEDDING_DIM=1024
|
EMBEDDING_DIM=1024
|
||||||
@ -17,53 +35,39 @@ MAX_EMBED_TOKENS=8192
|
|||||||
#COSINE_THRESHOLD=0.4 # 0.2 while not running API server
|
#COSINE_THRESHOLD=0.4 # 0.2 while not running API server
|
||||||
#TOP_K=50 # 60 while not running API server
|
#TOP_K=50 # 60 while not running API server
|
||||||
|
|
||||||
# LLM Configuration (Use valid host. For local services, you can use host.docker.internal)
|
### LLM Configuration (Use valid host. For local services, you can use host.docker.internal)
|
||||||
# Ollama example
|
### Ollama example
|
||||||
LLM_BINDING=ollama
|
LLM_BINDING=ollama
|
||||||
LLM_BINDING_HOST=http://host.docker.internal:11434
|
LLM_BINDING_HOST=http://host.docker.internal:11434
|
||||||
LLM_MODEL=mistral-nemo:latest
|
LLM_MODEL=mistral-nemo:latest
|
||||||
|
|
||||||
# OpenAI alike example
|
### OpenAI alike example
|
||||||
# LLM_BINDING=openai
|
# LLM_BINDING=openai
|
||||||
# LLM_MODEL=deepseek-chat
|
# LLM_MODEL=deepseek-chat
|
||||||
# LLM_BINDING_HOST=https://api.deepseek.com
|
# LLM_BINDING_HOST=https://api.deepseek.com
|
||||||
# LLM_BINDING_API_KEY=your_api_key
|
# LLM_BINDING_API_KEY=your_api_key
|
||||||
|
|
||||||
# for OpenAI LLM (LLM_BINDING_API_KEY take priority)
|
### for OpenAI LLM (LLM_BINDING_API_KEY take priority)
|
||||||
# OPENAI_API_KEY=your_api_key
|
# OPENAI_API_KEY=your_api_key
|
||||||
|
|
||||||
# Lollms example
|
### Lollms example
|
||||||
# LLM_BINDING=lollms
|
# LLM_BINDING=lollms
|
||||||
# LLM_BINDING_HOST=http://host.docker.internal:9600
|
# LLM_BINDING_HOST=http://host.docker.internal:9600
|
||||||
# LLM_MODEL=mistral-nemo:latest
|
# LLM_MODEL=mistral-nemo:latest
|
||||||
|
|
||||||
|
|
||||||
# Embedding Configuration (Use valid host. For local services, you can use host.docker.internal)
|
### Embedding Configuration (Use valid host. For local services, you can use host.docker.internal)
|
||||||
# Ollama example
|
# Ollama example
|
||||||
EMBEDDING_BINDING=ollama
|
EMBEDDING_BINDING=ollama
|
||||||
EMBEDDING_BINDING_HOST=http://host.docker.internal:11434
|
EMBEDDING_BINDING_HOST=http://host.docker.internal:11434
|
||||||
EMBEDDING_MODEL=bge-m3:latest
|
EMBEDDING_MODEL=bge-m3:latest
|
||||||
|
|
||||||
# Lollms example
|
### Lollms example
|
||||||
# EMBEDDING_BINDING=lollms
|
# EMBEDDING_BINDING=lollms
|
||||||
# EMBEDDING_BINDING_HOST=http://host.docker.internal:9600
|
# EMBEDDING_BINDING_HOST=http://host.docker.internal:9600
|
||||||
# EMBEDDING_MODEL=bge-m3:latest
|
# EMBEDDING_MODEL=bge-m3:latest
|
||||||
|
|
||||||
# Security (empty for no key)
|
### Optional for Azure (LLM_BINDING_HOST, LLM_BINDING_API_KEY take priority)
|
||||||
LIGHTRAG_API_KEY=your-secure-api-key-here
|
|
||||||
|
|
||||||
# Logging
|
|
||||||
LOG_LEVEL=INFO
|
|
||||||
|
|
||||||
# Optional SSL Configuration
|
|
||||||
#SSL=true
|
|
||||||
#SSL_CERTFILE=/path/to/cert.pem
|
|
||||||
#SSL_KEYFILE=/path/to/key.pem
|
|
||||||
|
|
||||||
# Optional Timeout
|
|
||||||
#TIMEOUT=30
|
|
||||||
|
|
||||||
# Optional for Azure (LLM_BINDING_HOST, LLM_BINDING_API_KEY take priority)
|
|
||||||
# AZURE_OPENAI_API_VERSION=2024-08-01-preview
|
# AZURE_OPENAI_API_VERSION=2024-08-01-preview
|
||||||
# AZURE_OPENAI_DEPLOYMENT=gpt-4o
|
# AZURE_OPENAI_DEPLOYMENT=gpt-4o
|
||||||
# AZURE_OPENAI_API_KEY=myapikey
|
# AZURE_OPENAI_API_KEY=myapikey
|
||||||
@ -72,54 +76,57 @@ LOG_LEVEL=INFO
|
|||||||
# AZURE_EMBEDDING_DEPLOYMENT=text-embedding-3-large
|
# AZURE_EMBEDDING_DEPLOYMENT=text-embedding-3-large
|
||||||
# AZURE_EMBEDDING_API_VERSION=2023-05-15
|
# AZURE_EMBEDDING_API_VERSION=2023-05-15
|
||||||
|
|
||||||
# Ollama Emulating Model Tag
|
### Data storage selection
|
||||||
# OLLAMA_EMULATING_MODEL_TAG=latest
|
|
||||||
|
|
||||||
|
|
||||||
# Data storage selection
|
|
||||||
# LIGHTRAG_KV_STORAGE=PGKVStorage
|
# LIGHTRAG_KV_STORAGE=PGKVStorage
|
||||||
# LIGHTRAG_VECTOR_STORAGE=PGVectorStorage
|
# LIGHTRAG_VECTOR_STORAGE=PGVectorStorage
|
||||||
# LIGHTRAG_GRAPH_STORAGE=PGGraphStorage
|
# LIGHTRAG_GRAPH_STORAGE=PGGraphStorage
|
||||||
# LIGHTRAG_DOC_STATUS_STORAGE=PGDocStatusStorage
|
# LIGHTRAG_DOC_STATUS_STORAGE=PGDocStatusStorage
|
||||||
|
|
||||||
# Oracle Database Configuration
|
### Oracle Database Configuration
|
||||||
ORACLE_DSN=localhost:1521/XEPDB1
|
ORACLE_DSN=localhost:1521/XEPDB1
|
||||||
ORACLE_USER=your_username
|
ORACLE_USER=your_username
|
||||||
ORACLE_PASSWORD='your_password'
|
ORACLE_PASSWORD='your_password'
|
||||||
ORACLE_CONFIG_DIR=/path/to/oracle/config
|
ORACLE_CONFIG_DIR=/path/to/oracle/config
|
||||||
ORACLE_WALLET_LOCATION=/path/to/wallet # 可选
|
#ORACLE_WALLET_LOCATION=/path/to/wallet # optional
|
||||||
#ORACLE_WALLET_PASSWORD='your_password' # 可选
|
#ORACLE_WALLET_PASSWORD='your_password' # optional
|
||||||
#ORACLE_WORKSPACE=default # 可选,默认为default
|
#ORACLE_WORKSPACE=default # separating all data from difference Lightrag instances(deprecated, use NAMESPACE_PREFIX in future)
|
||||||
|
|
||||||
# TiDB Configuration
|
### TiDB Configuration
|
||||||
TIDB_HOST=localhost
|
TIDB_HOST=localhost
|
||||||
TIDB_PORT=4000
|
TIDB_PORT=4000
|
||||||
TIDB_USER=your_username
|
TIDB_USER=your_username
|
||||||
TIDB_PASSWORD='your_password'
|
TIDB_PASSWORD='your_password'
|
||||||
TIDB_DATABASE=your_database
|
TIDB_DATABASE=your_database
|
||||||
#TIDB_WORKSPACE=default # 可选,默认为default
|
#TIDB_WORKSPACE=default # separating all data from difference Lightrag instances(deprecated, use NAMESPACE_PREFIX in future)
|
||||||
|
|
||||||
# PostgreSQL Configuration
|
### PostgreSQL Configuration
|
||||||
POSTGRES_HOST=localhost
|
POSTGRES_HOST=localhost
|
||||||
POSTGRES_PORT=5432
|
POSTGRES_PORT=5432
|
||||||
POSTGRES_USER=your_username
|
POSTGRES_USER=your_username
|
||||||
POSTGRES_PASSWORD='your_password'
|
POSTGRES_PASSWORD='your_password'
|
||||||
POSTGRES_DATABASE=your_database
|
POSTGRES_DATABASE=your_database
|
||||||
#POSTGRES_WORKSPACE=default # 可选,默认为default
|
#POSTGRES_WORKSPACE=default # separating all data from difference Lightrag instances(deprecated, use NAMESPACE_PREFIX in future)
|
||||||
# AGE Configuration
|
|
||||||
AGE_GRAPH_NAME=dickens
|
|
||||||
|
|
||||||
# Database Configurations
|
### Independent AGM Configuration(not for AMG embedded in PostreSQL)
|
||||||
# Neo4j
|
AGE_POSTGRES_DB=
|
||||||
|
AGE_POSTGRES_USER=
|
||||||
|
AGE_POSTGRES_PASSWORD=
|
||||||
|
AGE_POSTGRES_HOST=
|
||||||
|
# AGE_POSTGRES_PORT=8529
|
||||||
|
|
||||||
|
# AGE Graph Name(apply to PostgreSQL and independent AGM)
|
||||||
|
# AGE_GRAPH_NAME=lightrag # deprecated, use NAME_SPACE_PREFIX instead
|
||||||
|
|
||||||
|
### Neo4j Configuration
|
||||||
NEO4J_URI=neo4j+s://xxxxxxxx.databases.neo4j.io
|
NEO4J_URI=neo4j+s://xxxxxxxx.databases.neo4j.io
|
||||||
NEO4J_USERNAME=neo4j
|
NEO4J_USERNAME=neo4j
|
||||||
NEO4J_PASSWORD='your_password'
|
NEO4J_PASSWORD='your_password'
|
||||||
|
|
||||||
# MongoDB (可选)
|
### MongoDB Configuration
|
||||||
MONGODB_URI=mongodb+srv://name:password@your-cluster-address
|
MONGODB_URI=mongodb://root:root@localhost:27017/
|
||||||
MONGODB_DATABASE=lightrag
|
MONGODB_DATABASE=LightRAG
|
||||||
MONGODB_GRAPH=false
|
MONGODB_GRAPH=false # deprecated (keep for backward compatibility)
|
||||||
|
|
||||||
# Qdrant
|
### Qdrant
|
||||||
QDRANT_URL=http://localhost:16333
|
QDRANT_URL=http://localhost:16333
|
||||||
QDRANT_API_KEY=your-api-key # 可选
|
QDRANT_API_KEY=your-api-key # 可选
|
||||||
|
@ -75,8 +75,8 @@ class AGEStorage(BaseGraphStorage):
|
|||||||
.replace("'", "\\'")
|
.replace("'", "\\'")
|
||||||
)
|
)
|
||||||
HOST = os.environ["AGE_POSTGRES_HOST"].replace("\\", "\\\\").replace("'", "\\'")
|
HOST = os.environ["AGE_POSTGRES_HOST"].replace("\\", "\\\\").replace("'", "\\'")
|
||||||
PORT = int(os.environ["AGE_POSTGRES_PORT"])
|
PORT = os.environ.get("AGE_POSTGRES_PORT", "8529")
|
||||||
self.graph_name = os.environ["AGE_GRAPH_NAME"]
|
self.graph_name = namespace or os.environ.get("AGE_GRAPH_NAME", "lightrag")
|
||||||
|
|
||||||
connection_string = f"dbname='{DB}' user='{USER}' password='{PASSWORD}' host='{HOST}' port={PORT}"
|
connection_string = f"dbname='{DB}' user='{USER}' password='{PASSWORD}' host='{HOST}' port={PORT}"
|
||||||
|
|
||||||
|
@ -107,10 +107,13 @@ STORAGE_ENV_REQUIREMENTS = {
|
|||||||
"AGE_POSTGRES_DB",
|
"AGE_POSTGRES_DB",
|
||||||
"AGE_POSTGRES_USER",
|
"AGE_POSTGRES_USER",
|
||||||
"AGE_POSTGRES_PASSWORD",
|
"AGE_POSTGRES_PASSWORD",
|
||||||
"AGE_GRAPH_NAME",
|
|
||||||
],
|
],
|
||||||
"GremlinStorage": ["GREMLIN_HOST", "GREMLIN_PORT", "GREMLIN_GRAPH"],
|
"GremlinStorage": ["GREMLIN_HOST", "GREMLIN_PORT", "GREMLIN_GRAPH"],
|
||||||
"PGGraphStorage": ["POSTGRES_USER", "POSTGRES_PASSWORD", "POSTGRES_DATABASE"],
|
"PGGraphStorage": [
|
||||||
|
"POSTGRES_USER",
|
||||||
|
"POSTGRES_PASSWORD",
|
||||||
|
"POSTGRES_DATABASE",
|
||||||
|
],
|
||||||
"OracleGraphStorage": [
|
"OracleGraphStorage": [
|
||||||
"ORACLE_DSN",
|
"ORACLE_DSN",
|
||||||
"ORACLE_USER",
|
"ORACLE_USER",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user