langchain-ai / langchain

🦜🔗 Build context-aware reasoning applications
https://python.langchain.com
MIT License
93.09k stars 14.97k forks source link

validation error for ConversationalRetrievalChain retriever instance of BaseRetriever expected (type=type_error.arbitrary_type; expected_arbitrary_type=BaseRetriever) #18852

Closed yashwant43 closed 1 month ago

yashwant43 commented 7 months ago

Checked other resources

Example Code

def get_vectorstore(text_chunks): embeddings = OpenAIEmbeddings()

## Vector Search DB In Pinecone
Pinecone(api_key=os.environ.get('PINECONE_API_KEY'))

index_name="langchainvector"

vectorstore=PineconeVectorStore.from_documents(text_chunks,embeddings,index_name=index_name)

#vectorstore = FAISS.from_texts(texts=text_chunks, embedding=embeddings)

return vectorstore

def get_conversation_chain(vectorstore):

llm = ChatOpenAI()
# llm = HuggingFaceHub(repo_id="google/flan-t5-xxl", model_kwargs={"temperature":0.5, "max_length":512})

memory = ConversationBufferMemory(
    memory_key='chat_history', return_messages=True)

conversation_chain = ConversationalRetrievalChain.from_llm(
    llm=llm,
    retriever=vectorstore.as_retriever(),
    memory=memory,

)
return conversation_chain

            # create conversation chain
            st.session_state.conversation = get_conversation_chain(
                vectorstore)

if name == 'main': main()

Error Message and Stack Trace (if applicable)

No response

Description

File "D:\LLM projects\ask-multiple-pdfs-main\ask-multiple-pdfs-main\app.py", line 128, in main() File "D:\LLM projects\ask-multiple-pdfs-main\ask-multiple-pdfs-main\app.py", line 123, in main st.session_state.conversation = get_conversation_chain( File "D:\LLM projects\ask-multiple-pdfs-main\ask-multiple-pdfs-main\app.py", line 67, in get_conversation_chain conversation_chain = ConversationalRetrievalChain.from_llm( File "d:\llm projects\ask-multiple-pdfs-main\ask-multiple-pdfs-main\llm\lib\site-packages\langchain\chains\conversational_retrieval\base.py", line 212, in from_llm return cls( File "pydantic\main.py", line 341, in pydantic.main.BaseModel.init pydantic.error_wrappers.ValidationError: 1 validation error for ConversationalRetrievalChain retriever instance of BaseRetriever expected (type=type_error.arbitrary_type; expected_arbitrary_type=BaseRetriever)

System Info

NA

vaishali18lalit commented 4 months ago

I am facing the same issue . Can you tell how to resolve this error ?