61 lines
2.1 KiB
Python
61 lines
2.1 KiB
Python
#!/usr/bin/env python3
|
|
"""
|
|
Fixed LightRAG server startup with forced DeepSeek API configuration
|
|
"""
|
|
|
|
import os
|
|
import sys
|
|
from pathlib import Path
|
|
|
|
# Force set environment variables for DeepSeek
|
|
os.environ["LLM_BINDING"] = "openai"
|
|
os.environ["LLM_MODEL"] = "deepseek-chat"
|
|
os.environ["LLM_BINDING_HOST"] = "https://api.deepseek.com/v1"
|
|
os.environ["LLM_BINDING_API_KEY"] = "sk-55f6e57f1d834b0e93ceaf98cc2cb715"
|
|
os.environ["EMBEDDING_BINDING"] = "ollama"
|
|
os.environ["EMBEDDING_MODEL"] = "snowflake-arctic-embed2:latest"
|
|
os.environ["EMBEDDING_DIM"] = "1024"
|
|
|
|
# Force storage backends
|
|
os.environ["LIGHTRAG_KV_STORAGE"] = "RedisKVStorage"
|
|
os.environ["LIGHTRAG_VECTOR_STORAGE"] = "QdrantVectorDBStorage"
|
|
os.environ["LIGHTRAG_DOC_STATUS_STORAGE"] = "PGDocStatusStorage"
|
|
os.environ["LIGHTRAG_GRAPH_STORAGE"] = "Neo4JStorage"
|
|
|
|
# Database connections
|
|
os.environ["REDIS_URI"] = "redis://localhost:6379"
|
|
os.environ["NEO4J_URI"] = "bolt://localhost:7687"
|
|
os.environ["NEO4J_USERNAME"] = "neo4j"
|
|
os.environ["NEO4J_PASSWORD"] = "jleu1212"
|
|
os.environ["QDRANT_URL"] = "http://localhost:6333"
|
|
os.environ["POSTGRES_HOST"] = "localhost"
|
|
os.environ["POSTGRES_PORT"] = "5432"
|
|
os.environ["POSTGRES_USER"] = "jleu3482"
|
|
os.environ["POSTGRES_PASSWORD"] = "jleu1212"
|
|
os.environ["POSTGRES_DATABASE"] = "rag_anything"
|
|
|
|
print("FIXED DeepSeek API configuration:")
|
|
print(f" LLM: {os.environ['LLM_BINDING']} - {os.environ['LLM_MODEL']}")
|
|
print(f" Embedding: {os.environ['EMBEDDING_BINDING']} - {os.environ['EMBEDDING_MODEL']}")
|
|
print(f" Storage: {os.environ['LIGHTRAG_KV_STORAGE']}, {os.environ['LIGHTRAG_VECTOR_STORAGE']}")
|
|
|
|
# Now start the server
|
|
lightrag_dir = Path(__file__).parent / "LightRAG-main"
|
|
os.chdir(lightrag_dir)
|
|
|
|
import subprocess
|
|
cmd = [
|
|
sys.executable, "-m", "lightrag.api.lightrag_server",
|
|
"--port", "3015",
|
|
"--host", "0.0.0.0",
|
|
"--working-dir", "rag_storage",
|
|
"--input-dir", "../inputs",
|
|
"--key", "jleu1212",
|
|
"--auto-scan-at-startup",
|
|
"--llm-binding", os.environ["LLM_BINDING"],
|
|
"--embedding-binding", os.environ["EMBEDDING_BINDING"],
|
|
"--rerank-binding", "jina"
|
|
]
|
|
|
|
print(f"Starting server with command: {' '.join(cmd)}")
|
|
subprocess.run(cmd, check=True) |