Spaces:
Running
Running
| import os | |
| from langchain_huggingface import HuggingFaceEmbeddings | |
| from langchain_postgres import PGVector | |
| from dotenv import load_dotenv | |
| load_dotenv() | |
| def get_embeddings(): | |
| """Initialise et retourne le modèle d'embeddings BAAI/bge-m3.""" | |
| return HuggingFaceEmbeddings( | |
| model_name="BAAI/bge-m3", | |
| model_kwargs={'device': 'cpu'}, | |
| encode_kwargs={'normalize_embeddings': True} | |
| ) | |
| def get_vector_store(collection_name: str = "rh_cgi_vectors"): | |
| """Connecte et retourne l'instance PGVector connectée à la base de données.""" | |
| db_url = os.getenv("DATABASE_URL") | |
| if not db_url: | |
| raise ValueError("Erreur : La variable DATABASE_URL est introuvable dans le fichier .env") | |
| embeddings = get_embeddings() | |
| return PGVector( | |
| embeddings=embeddings, | |
| collection_name=collection_name, | |
| connection=db_url, | |
| use_jsonb=True, | |
| create_extension=False | |
| ) |