Получение ошибок при построении контроля качества PDF с помощью OPEN AI и Langchain.
Я пытаюсь использовать Langchain & AI. Итак, я установил все библиотеки и попытался написать приведенный ниже код с документацией Langchain. Но я, кажется, сталкиваюсь с некоторыми ошибками, которые я не могу решить.
Вот мой код:
import os
from langchain.document_loaders import PyPDFLoader
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain.vectorstores import Chroma
from langchain.embeddings import OpenAIEmbeddings
from langchain.chat_models import ChatOpenAI
from langchain.chains import RetrievalQA
os.environ['OPENAI_API_KEY'] = 'OPenAi key'
persist_directory = "./storage"
loader = PyPDFLoader("sodapdf-converted.pdf")
documents = loader.load()
documents = loader.load()
text_splitter = RecursiveCharacterTextSplitter(chunk_size=512, chunk_overlap=10)
texts = text_splitter.split_documents(documents)
embeddings = OpenAIEmbeddings()
vectordb = Chroma.from_documents(documents=texts,
embedding=embeddings,
persist_directory=persist_directory)
vectordb.persist()
retriever = vectordb.as_retriever(search_kwargs={"k": 3})
llm = ChatOpenAI(model_name='gpt-4')
qa = RetrievalQA.from_chain_type(llm=llm, chain_type="stuff", retriever=retriever)
while True:
user_input = input("Enter a query: ")
if user_input == "exit":
break
query = f"###Prompt {user_input}"
try:
llm_response = qa(query)
print(llm_response["result"])
except Exception as err:
print('Exception occurred. Please try again', str(err))
И я получаю следующие ошибки:
Traceback (most recent call last):
File "c:\Users\ansha\OneDrive\Documents\Python\HOA Search\Langchain\test.py", line 21, in <module>
vectordb = Chroma.from_documents(documents=texts,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\langchain\vectorstores\chroma.py", line 564, in from_documents
return cls.from_texts(
^^^^^^^^^^^^^^^
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\langchain\vectorstores\chroma.py", line 528, in from_texts
chroma_collection.add_texts(texts=texts, metadatas=metadatas, ids=ids)
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\langchain\vectorstores\chroma.py", line 166, in add_texts
embeddings = self._embedding_function.embed_documents(list(texts))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\langchain\embeddings\openai.py", line 478, in embed_documents
return self._get_len_safe_embeddings(texts, engine=self.deployment)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\langchain\embeddings\openai.py", line 328, in _get_len_safe_embeddings
response = embed_with_retry(
^^^^^^^^^^^^^^^^^
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\langchain\embeddings\openai.py", line 107, in embed_with_retry
return _embed_with_retry(**kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\tenacity\__init__.py", line 289, in wrapped_f
return self(f, *args, **kw)
^^^^^^^^^^^^^^^^^^^^
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\tenacity\__init__.py", line 379, in __call__
do = self.iter(retry_state=retry_state)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\tenacity\__init__.py", line 314, in iter
return fut.result()
^^^^^^^^^^^^
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\concurrent\futures\_base.py", line 449, in result
return self.__get_result()
^^^^^^^^^^^^^^^^^^^
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\concurrent\futures\_base.py", line 401, in __get_result
raise self._exception
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\tenacity\__init__.py", line 382, in __call__
result = fn(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\langchain\embeddings\openai.py", line 104, in _embed_with_retry
response = embeddings.client.create(**kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\openai\api_resources\embedding.py", line 33, in create
response = super().create(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\openai\api_resources\abstract\engine_api_resource.py", line 153, in create
response, _, api_key = requestor.request(
^^^^^^^^^^^^^^^^^^
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\openai\api_requestor.py", line 298, in request
resp, got_stream = self._interpret_response(result, stream)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\openai\api_requestor.py", line 700, in _interpret_response
self._interpret_response_line(
File "C:\Users\ansha\AppData\Local\Programs\Python\Python311\Lib\site-packages\openai\api_requestor.py", line 763, in _interpret_response_line
raise self.handle_error_response(
openai.error.AuthenticationError: Incorrect API key provided: cjbZWnFC************************************xYfa. You can find your API key at https://platform.openai.com/account/api-keys.
Пожалуйста, игнорируйте ошибку «Неверный ключ API».