Support custom OpenAI-compatible embedding server with OpenAI fallback
Adds EMBEDDING_SERVER_URL and EMBEDDING_MODEL_NAME env vars, mirroring the existing LLAMA_SERVER_URL pattern for LLM configuration. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -19,6 +19,12 @@ BASE_URL=192.168.1.5:8000
|
|||||||
LLAMA_SERVER_URL=http://192.168.1.213:8080/v1
|
LLAMA_SERVER_URL=http://192.168.1.213:8080/v1
|
||||||
LLAMA_MODEL_NAME=llama-3.1-8b-instruct
|
LLAMA_MODEL_NAME=llama-3.1-8b-instruct
|
||||||
|
|
||||||
|
# Embedding Server Configuration
|
||||||
|
# If set, uses a custom OpenAI-compatible embedding server (e.g. llama-server)
|
||||||
|
# Falls back to OpenAI embeddings if not set
|
||||||
|
EMBEDDING_SERVER_URL=http://192.168.1.7:8086/v1
|
||||||
|
EMBEDDING_MODEL_NAME=all-minilm
|
||||||
|
|
||||||
# OpenAI Configuration
|
# OpenAI Configuration
|
||||||
OPENAI_API_KEY=your-openai-api-key
|
OPENAI_API_KEY=your-openai-api-key
|
||||||
|
|
||||||
|
|||||||
+11
-1
@@ -17,7 +17,17 @@ load_dotenv()
|
|||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
embeddings = OpenAIEmbeddings(model="text-embedding-3-small")
|
_embedding_server_url = os.getenv("EMBEDDING_SERVER_URL")
|
||||||
|
_embedding_model = os.getenv("EMBEDDING_MODEL_NAME", "text-embedding-3-small")
|
||||||
|
|
||||||
|
if _embedding_server_url:
|
||||||
|
embeddings = OpenAIEmbeddings(
|
||||||
|
model=_embedding_model,
|
||||||
|
base_url=_embedding_server_url,
|
||||||
|
api_key="not-needed",
|
||||||
|
)
|
||||||
|
else:
|
||||||
|
embeddings = OpenAIEmbeddings(model=_embedding_model)
|
||||||
|
|
||||||
# Convert Tortoise-style postgres:// URL to SQLAlchemy-style postgresql+psycopg://
|
# Convert Tortoise-style postgres:// URL to SQLAlchemy-style postgresql+psycopg://
|
||||||
_db_url = os.getenv(
|
_db_url = os.getenv(
|
||||||
|
|||||||
@@ -31,6 +31,8 @@ services:
|
|||||||
- BASE_URL=${BASE_URL}
|
- BASE_URL=${BASE_URL}
|
||||||
- OLLAMA_URL=${OLLAMA_URL:-http://localhost:11434}
|
- OLLAMA_URL=${OLLAMA_URL:-http://localhost:11434}
|
||||||
- OPENAI_API_KEY=${OPENAI_API_KEY}
|
- OPENAI_API_KEY=${OPENAI_API_KEY}
|
||||||
|
- EMBEDDING_SERVER_URL=${EMBEDDING_SERVER_URL}
|
||||||
|
- EMBEDDING_MODEL_NAME=${EMBEDDING_MODEL_NAME}
|
||||||
- JWT_SECRET_KEY=${JWT_SECRET_KEY}
|
- JWT_SECRET_KEY=${JWT_SECRET_KEY}
|
||||||
- LLAMA_SERVER_URL=${LLAMA_SERVER_URL}
|
- LLAMA_SERVER_URL=${LLAMA_SERVER_URL}
|
||||||
- LLAMA_MODEL_NAME=${LLAMA_MODEL_NAME}
|
- LLAMA_MODEL_NAME=${LLAMA_MODEL_NAME}
|
||||||
|
|||||||
Reference in New Issue
Block a user