os.environ["OPENAI_API_BASE"] = "https://api.openai-proxy.org/v1" os.environ["OP...
🚨 错误信息
os.environ["OPENAI_API_BASE"] = "https://api.openai-proxy.org/v1"
os.environ["OPENAI_API_KEY"] = "sk-nkIkzBab0gb0kMwK5W54aIVfcf7z00Ft5aKlPPA8aaQPsYHS"
model = ChatOpenAI(model='gpt-3.5-turbo')
store = {}
def get_session_history(session_id:str) ->BaseChatMessageHistory:
if session_id not in store:
store[session_id] = InMemoryChatMessageHistory()
return store[session_id]
with_message_history = RunnableWithMessageHistory(model,get_session_history)
config = {"configurable":{"session_id":"abc12"}}
response = with_message_history.invoke(
[HumanMessage(content="What's my name")],
config=config
)
print(response.content)
🤖 AI解决方案
Error: openai.APIConnectionError: Error communicating with OpenAI: Failed to connect to api.openai-proxy.org port 443 after 60 seconds: Connection refused
原因分析
代码尝试连接到 https://api.openai-proxy.org/v1 这个地址,但连接被拒绝了。这通常意味着目标服务器不存在、网络防火墙阻止了连接,或者服务器本身没有运行。
解决方案
- 检查代理服务器地址和端口: * 确认
- 检查网络连接和防火墙:
https://api.openai-proxy.org/v1 这个代理地址是否正确且可用。
* 尝试直接连接 OpenAI 的官方 API 地址:https://api.openai.com/v1,如果目标地址是你的本地代理,请确保代理服务正在运行。
* 确认你的网络环境允许访问该地址和端口。
* 检查本地或网络防火墙是否阻止了对
api.openai-proxy.org 的访问。
import os
from langchain_openai import ChatOpenAI
from langchain_core.messages import HumanMessage
from langchain_core.runnables import RunnableWithMessageHistory
from langchain_core.chat_models import BaseChatMessageHistory
from langchain_community.chat_message_histories import InMemoryChatMessageHistory
# 检查并尝试使用官方 API,或者确认代理可用
# 如果代理不可用,可以注释掉以下两行,直接使用官方 API
# os.environ["OPENAI_API_BASE"] = "https://api.openai-proxy.org/v1"
# os.environ["OPENAI_API_KEY"] = "sk-nkIkzBab0gb0kMwK5W54aIVfcf7z00Ft5aKlPPA8aaQPsYHS"
# 示例:如果代理有问题,可以尝试使用官方 API
# os.environ["OPENAI_API_BASE"] = "https://api.openai.com/v1"
# os.environ["OPENAI_API_KEY"] = "YOUR_ACTUAL_OPENAI_API_KEY" # 请替换为你的真实 API Key
# 示例:直接使用官方 API,假设你已经设置了 OPENAI_API_KEY 环境变量
try:
model = ChatOpenAI(model='gpt-3.5-turbo')
except Exception as e:
print(f"Error initializing ChatOpenAI: {e}")
print("Please ensure OPENAI_API_KEY is set and accessible, or check OPENAI_API_BASE.")
exit()
store = {}
def get_session_history(session_id:str) ->BaseChatMessageHistory:
if session_id not in store:
store[session_id] = InMemoryChatMessageHistory()
return store[session_id]
with_message_history = RunnableWithMessageHistory(model,get_session_history)
config = {"configurable":{"session_id":"abc12"}}
try:
response = with_message_history.invoke(
[HumanMessage(content="What's my name")],
config=config
)
print(response.content)
except Exception as e:
print(f"Error during invoke: {e}")
print("Please verify the API endpoint and your network connection.")