Я сделал это на своем ноутбуке, и это работает отлично, только чтобы столкнуться Ошибка IndexError: индекс списка вне диапазона в моем приложении с потоковым освещением. Я использовал GoogleGenerativeAIEmbeddings с FAISS.
Это блок кода:
Код: Выделить всё
main_placeholder = sl.empty()
llm = ChatGoogleGenerativeAI(model = 'gemini-pro')
if process_url_clicked:
loader = UnstructuredURLLoader(urls = urls)
main_placeholder.text("Data loading...started...✅✅✅")
data = loader.load()
text_splitter = RecursiveCharacterTextSplitter(
separators = ['\n','\n\n','.',','],
chunk_size = 1000,
chunk_overlap = 200
)
main_placeholder.text("Text splitter...started...✅✅✅")
docs = text_splitter.split_documents(data)
embeddings = GoogleGenerativeAIEmbeddings(model = 'models/embedding-001')
vector_index = FAISS.from_documents(docs,embeddings)
IndexError: индекс списка вне диапазона
Traceback :
Файл «C:\Python312\Lib\site-packages\streamlit\runtime\scriptrunner\script_runner.py», строка 584, в _run_script
exec(code, Module.dict)
Файл «C:\Users\owner\Desktop\Projects\nlp\main.py», строка 84, в
vectorstore_openai = FAISS.from_documents(docs, embeddings)
^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Файл "C:\Python312\Lib\ site-packages\langchain_core\vectorstores.py", строка 550, в from_documents
return cls.from_texts(texts, embedding, Metadatas=metadatas, **kwargs)
^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^
Файл "C:\Python312\Lib\site-packages\langchain_community\vectorstores\faiss.py", строка 931, в from_texts
return cls.__from(
^^ ^^^^^^^^^
Файл "C:\Python312\Lib\site-packages\langchain_community\vectorstores\faiss.py", строка 888, в __from
index = faiss.IndexFlatL2( len(embeddings[0]))
~~~~~~~~~~^^^
Это отлично работает в моем блокноте и я серьезно не понимаю, почему это происходит.
Подробнее здесь: https://stackoverflow.com/questions/784 ... -streamlit