indexName = requestDTO.Index # Initialisation des paramètres pour les requètes sur MongoDB Atlas mongodb_client = pymongo.MongoClient(_mongoURI) store = MongoDBAtlasVectorSearch(mongodb_client, db_name=indexName) print(store) # Initialisation de l'index via les index sur MongoDB Atlas # Et inversement, commenter/décommenter si on veut juste query l'index existant # build index index = VectorStoreIndex.from_vector_store(store) # configure retriever retriever = VectorIndexRetriever( index=index ) # configure response synthesizer, ici on peut chosir le mode réponse pour la query(ici on peut influer sur la maniere dont le contexte et le prompt sont itéré sur la query) response_synthesizer = get_response_synthesizer(response_mode=GetResponseMode(requestDTO.Mode), text_qa_template=qa_template) # assemble query engine, o recupere l'index grace au retriver et aussi le mode de reponse du "ResponseMode.TREE_SUMMARIZE" via response_synthesizer query_engine = RetrieverQueryEngine( retriever=retriever, response_synthesizer=response_synthesizer ) # Partie permettant de créer la réponse query_engine = index.as_query_engine(similarity_top_k=requestDTO.LinkNumber,text_qa_template=qa_template)
- Add to your vector store from llama_index.core.node_parser import SentenceSplitter from llama_index.core import Document parser = SentenceSplitter() nodes = parser.get_nodes_from_documents([Document(text="This is a text")]) for node in nodes: node_embedding = embed_model.get_text_embedding( node.get_content(metadata_mode="all") ) node.embedding = node_embedding store.add(nodes) - Create retriever instance and do retrieve index = VectorStoreIndex.from_vector_store(store) retriever = index.as_retriever() print(retriever.retrieve("ASK one query"))