Files
ailine/rag_core/client.py

28 lines
748 B
Python
Raw Normal View History

2026-04-20 01:10:18 +08:00
# rag_core/client.py
import os
from typing import Optional
from qdrant_client import QdrantClient
2026-04-20 17:30:39 +08:00
2026-04-20 01:10:18 +08:00
QDRANT_URL = os.getenv("QDRANT_URL", "http://127.0.0.1:6333")
QDRANT_API_KEY = os.getenv("QDRANT_API_KEY")
def create_qdrant_client(
url: Optional[str] = None,
api_key: Optional[str] = None,
2026-04-20 14:05:57 +08:00
timeout: int = 300, # 索引构建需要较长超时
2026-04-20 01:10:18 +08:00
) -> QdrantClient:
effective_url = url or QDRANT_URL
effective_api_key = api_key or QDRANT_API_KEY
2026-04-20 14:05:57 +08:00
2026-04-20 01:10:18 +08:00
if not effective_url:
raise ValueError("Qdrant URL 未配置")
2026-04-20 14:05:57 +08:00
client_kwargs = {
"url": effective_url,
"timeout": timeout,
}
2026-04-20 01:10:18 +08:00
if effective_api_key:
client_kwargs["api_key"] = effective_api_key
2026-04-20 14:05:57 +08:00
2026-04-20 01:10:18 +08:00
return QdrantClient(**client_kwargs)