a 4f@sddlmZddlmZddlmZddlZee e e ee ee ee ej edddZ ee dd d Zeed d d ZdS))FAISS)OpenAIEmbeddings) ModuleTypeN)api_keyidslabels text_contents ideologies embeddingsreturnc CsPt|d}ddt|||D}dd|D}tt||} tj| ||d} | S)z"Upsert data objects to FAISS indexZopenai_api_keycSs g|]\}}}t|||dqS))idideologylabel)dict).0r rrr!D:\repos\tsgpt\src\vectorstore.py z'client_vector_store..cSsg|] }|qSr)tolist)rxrrrrr) embedding metadatas)rziplistrfrom_embeddings) rrrrr r r propertiestext_embeddingsZembedding_pairsfaissrrrclient_vector_stores r )r r cCs|jdddS)Nz.\data2) folder_pathT) save_local)r rrrsave_vector_stores r#)rr cCstjdt|ddd}|S)Nz./data2r T)r!r allow_dangerous_deserialization)r load_localr)rrrrrload_vector_store sr&) langchain_community.vectorstoresrZlangchain_community.embeddingsrtypesrnumpynpstrrintndarrayr boolr#r&rrrrs