File size: 1,174 Bytes
0a25329 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
from langchain_openai import ChatOpenAI, OpenAIEmbeddings
from langchain_qdrant import QdrantVectorStore
from qdrant_client import QdrantClient
from qdrant_client.http.models import (
Distance,
VectorParams,
)
from config import (
COLLECTION_NAME,
OPENAI_API_KEY,
OPENAI_BASE_URL,
QDRANT_API_KEY,
QDRANT_URL,
)
EMBEDDING = OpenAIEmbeddings(
openai_api_key=OPENAI_API_KEY,
openai_api_base=OPENAI_BASE_URL,
model="Qwen/Qwen3-Embedding-8B",
check_embedding_ctx_length=False,
)
QDRANT_CLIENT = QdrantClient(
url=QDRANT_URL,
api_key=QDRANT_API_KEY,
port=443,
https=True,
)
if not QDRANT_CLIENT.collection_exists(COLLECTION_NAME):
QDRANT_CLIENT.create_collection(
collection_name=COLLECTION_NAME,
vectors_config=VectorParams(
size=4096,
distance=Distance.COSINE,
),
)
VECTOR_STORE = QdrantVectorStore(
client=QDRANT_CLIENT,
collection_name=COLLECTION_NAME,
embedding=EMBEDDING,
)
LLM = ChatOpenAI(
openai_api_key=OPENAI_API_KEY,
openai_api_base=OPENAI_BASE_URL,
model="openai/gpt-oss-120b",
temperature=0.3,
streaming=True,
)
|