Spaces:
Runtime error
Runtime error
File size: 959 Bytes
91ca409 |
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 |
# app/services/chatbot.py
from langchain_chroma import Chroma
from langchain_huggingface import HuggingFaceEmbeddings
from app.config import Config
PERSIST_DIR = Config.PERSIST_DIR
EMBEDDING_MODEL = Config.EMBEDDING_MODEL
embeddings = HuggingFaceEmbeddings(model_name=EMBEDDING_MODEL)
db = Chroma(persist_directory=PERSIST_DIR, embedding_function=embeddings)
def ask(query, k=6):
results = db.similarity_search_with_score(query, k=k)
response = []
for doc, score in results:
meta = doc.metadata
response.append({
"titre": meta.get("titre", ""),
"chapitre": meta.get("chapitre", ""),
"article": meta.get("article", ""),
"contenu": doc.page_content,
"doc": meta.get("doc", ""),
"pages": meta.get("pages", []) if isinstance(meta.get("pages"), list) else [meta.get("pages")] if meta.get("pages") else []
})
return response
|