deeplore-ai / deeplore

https://village-and-lies.netlify.app/
19 stars 1 forks source link

[BUG] Fuite mémoire backend #7

Closed CartierPierre closed 1 month ago

CartierPierre commented 1 month ago

Corriger rapidement le problème du backend Fast API qui instancie des vector stores sans jamais les vider

thomasBontempsFr commented 1 month ago

Il faut qu'à la fin de session d'un utilisateur, une requête api se fasse pour surprimer tous les fichiers créés par la session de jeu.

@CartierPierre Je vois qu'une variable Vecteur est créée pour chaque utilisateur. Cette variable est-elle stockée ?

Si réalisable directement dans le server, réaliser lors de la compilation du code dans le serveur le Vecteur sur tous les documents. Load cette variable et l'utiliser dans le fichier python LangChain

thomasBontempsFr commented 1 month ago

Pour stocker le vecteur, j'ai trouvé ça :

vector = FAISS.from_documents(docs, embeddings)
vector.save_local("faiss_index")
vector = FAISS.load_local("faiss_index", embeddings)

Cela enlèvera le temps d'execution du vecteur mais obligé de le charger pour chaque session. Autrement, faut qu'il le load sur le chache de leur propre machine.

thomasBontempsFr commented 1 month ago

La fuite a été réglée il me semble ?

JosselinTD commented 1 month ago

Je n'ai pas reconstaté de fuite mémoire. Avec toutes les modifications, le problème a du être réglé.

J'ai aussi implémenté le save_local, ça accélère le redémarrage serveur pendant le dev