import faiss import pandas as pd from sentence_transformers import SentenceTransformer # Charger les données contextuelles depuis rag_documents.csv df = pd.read_csv("rag_documents.csv") # Vérifiez que le fichier a des données if "Content" not in df.columns: raise ValueError("Le fichier rag_documents.csv doit contenir une colonne 'Content'.") # Charger le modèle SentenceTransformer pour encoder les phrases encoder = SentenceTransformer("sentence-transformers/all-MiniLM-L6-v2") # Créer les embeddings pour les contenus print("Création des embeddings pour le RAG...") embeddings = encoder.encode(df["Content"].tolist()).astype("float32") # Créer un index FAISS print("Création de l'index FAISS...") index = faiss.IndexFlatL2(embeddings.shape[1]) # Crée un index avec une distance Euclidienne index.add(embeddings) # Ajouter les embeddings à l'index # Sauvegarder l'index FAISS faiss.write_index(index, "blood_test_index.faiss") print("Index FAISS créé et sauvegardé sous 'blood_test_index.faiss'.") # Vérifier le nombre d'éléments dans l'index print(f"Nombre d'éléments indexés : {index.ntotal}")