1、OpenAI调用API报错 time out:HTTPSConnectionPool(host=‘api.openai.com‘, port=443)
pip install urllib3==1.25.11
2、langchain新版本V0.1(2024年1月)需要python3.8+
官方文档Quickstart | 🦜️🔗 Langchain
3、openai.APIConnectionError: Connection error.
测试发现openai-1.12.0的版本报错(有tizi),降到openai-0.28.0可正常
由于降低版本进而引出异常AttributeError: module 'openai' has no attribute 'OpenAI'
#原openai-1.12.0
from langchain_openai import ChatOpenAI
llm=ChatOpenAI()
#降到openai==0.28
#提示langchain-openai 0.0.6 requires openai<2.0.0,>=1.10.0, but you have openai 0.28.0 which is incompatible.
#报错AttributeError: module 'openai' has no attribute 'OpenAI'
解决方案目前是改用旧版的调用方式,会出现警告
UserWarning: You are trying to use a chat model. This way of initializing it is no longer supported. Instead, please use: `from langchain_community.chat_models import ChatOpenAI`
from langchain.llms import OpenAI,OpenAIChat
from langchain_community.llms.openai import OpenAIChat
llm = OpenAI(model_name="gpt-3.5-turbo", temperature=0)
------------------------2024年2月25日更新-----------------------------------------------------------------------------
win11、python3.9.18、openai=1.12.0、urllib3=1.25.11
可正常调用,无需其他改动
--------------------------------------------------------------------------------------------------------------------------------
4、create_stuff_documents_chain、create_retrieval_chain
from langchain.chains.combine_documents import create_stuff_documents_chain
documents_chain的prompt有格式要求?未按格式找不到答案
prompt = ChatPromptTemplate.from_template(
"""
只根据提供的内容进行回答,如果问题与提供的材料无关,请回答"对不起,我不知道"
{context}
{input}
""")
from langchain.chains import create_retrieval_chain
retrieval_chain要求传入prompt中用input,否则报错KeyError: 'input',retrieval_docs = (lambda x: x["input"]) | retriever