Spaces:
Sleeping
Sleeping
Update main.py
Browse files
main.py
CHANGED
|
@@ -7,14 +7,14 @@ from langchain_huggingface import HuggingFaceEmbeddings
|
|
| 7 |
from langchain_openai import ChatOpenAI
|
| 8 |
from langchain_core.runnables import RunnablePassthrough, RunnableLambda
|
| 9 |
from langchain_core.output_parsers import StrOutputParser
|
| 10 |
-
import os
|
| 11 |
-
from dotenv import load_dotenv
|
| 12 |
from prompt_engineering import build_prompt
|
| 13 |
|
| 14 |
# ββ Γtat global βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
| 15 |
rag_chain = None
|
| 16 |
retriever = None
|
| 17 |
-
|
|
|
|
|
|
|
| 18 |
|
| 19 |
# ββ Helper format docs ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
| 20 |
def format_docs(docs) -> str:
|
|
@@ -65,24 +65,19 @@ async def lifespan(app: FastAPI):
|
|
| 65 |
)
|
| 66 |
|
| 67 |
vectorstore = FAISS.load_local(
|
| 68 |
-
|
| 69 |
embeddings=embedding,
|
| 70 |
allow_dangerous_deserialization=True
|
| 71 |
)
|
| 72 |
|
| 73 |
-
|
| 74 |
-
|
| 75 |
-
|
| 76 |
llm = ChatOpenAI(
|
| 77 |
-
|
| 78 |
-
|
| 79 |
-
|
| 80 |
-
)
|
| 81 |
|
| 82 |
retriever = vectorstore.as_retriever(search_kwargs={"k": 3})
|
| 83 |
|
| 84 |
-
# β
FIX : retriever | format_docs (via RunnableLambda) pour convertir les
|
| 85 |
-
# documents en texte avant de les injecter dans le prompt
|
| 86 |
rag_chain = (
|
| 87 |
{
|
| 88 |
"context": retriever | RunnableLambda(format_docs),
|
|
|
|
| 7 |
from langchain_openai import ChatOpenAI
|
| 8 |
from langchain_core.runnables import RunnablePassthrough, RunnableLambda
|
| 9 |
from langchain_core.output_parsers import StrOutputParser
|
|
|
|
|
|
|
| 10 |
from prompt_engineering import build_prompt
|
| 11 |
|
| 12 |
# ββ Γtat global βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
| 13 |
rag_chain = None
|
| 14 |
retriever = None
|
| 15 |
+
|
| 16 |
+
# NOTE: On Hugging Face Spaces, set MISTRAL_API_KEY in your Space's Settings > Secrets.
|
| 17 |
+
# Do NOT use python-dotenv or .env files on HF Spaces.
|
| 18 |
|
| 19 |
# ββ Helper format docs ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
| 20 |
def format_docs(docs) -> str:
|
|
|
|
| 65 |
)
|
| 66 |
|
| 67 |
vectorstore = FAISS.load_local(
|
| 68 |
+
"faiss_index",
|
| 69 |
embeddings=embedding,
|
| 70 |
allow_dangerous_deserialization=True
|
| 71 |
)
|
| 72 |
|
|
|
|
|
|
|
|
|
|
| 73 |
llm = ChatOpenAI(
|
| 74 |
+
base_url="https://api.mistral.ai/v1",
|
| 75 |
+
api_key=os.environ["MISTRAL_API_KEY"], # set in HF Spaces Secrets
|
| 76 |
+
model_name="mistral-medium"
|
| 77 |
+
)
|
| 78 |
|
| 79 |
retriever = vectorstore.as_retriever(search_kwargs={"k": 3})
|
| 80 |
|
|
|
|
|
|
|
| 81 |
rag_chain = (
|
| 82 |
{
|
| 83 |
"context": retriever | RunnableLambda(format_docs),
|