解决方案

>>> import os
>>> os.environ['OPENAI_API_KEY'] = 'sk-xxxxxx-xxxxxx'

再次执行即可

此问题的一种潜在解决方法是OPENAI_API_KEY在运行代码之前设置一个虚拟环境变量。这可能有助于绕过错误,尽管这不是一个有保证的解决方案。您可以这样做:

import os

os.environ['OPENAI_API_KEY'] = 'dummy_key'

# Your code here

如果您有 OpenAI API 密钥,您还可以将其设置为终端中的环境变量:

export OPENAI_API_KEY="your_openai_api_key"

openai_api_key或者您可以在启动 OpenAI LLM 类时直接通过命名参数传递密钥:

from langchain.llms import OpenAI

llm = OpenAI(openai_api_key="your_openai_api_key")

然而,这些只是解决方法,可能无法解决问题的根本原因。如果您不使用 OpenAI 模型,请查看 LangChain 文档或论坛以获取有关如何禁用 OpenAI 初始化的更多信息。

在您的共享上下文中,提到您还可以PromptLayerOpenAI通过设置PROMPTLAYER_API_KEYOPENAI_API_KEY环境变量来使用 LLM。如果您有权访问这些密钥,则可以将它们设置为环境变量并使用 LLM,PromptLayerOpenAI如下所示:

from getpass import getpass
import os
from langchain.llms import PromptLayerOpenAI

PROMPTLAYER_API_KEY = getpass()
os.environ["PROMPTLAYER_API_KEY"] = PROMPTLAYER_API_KEY

OPENAI_API_KEY = getpass()
os.environ["OPENAI_API_KEY"] = OPENAI_API_KEY

llm = PromptLayerOpenAI(pl_tags=["langchain"])
llm("I am a cat and I want")

这可能会帮助您绕过遇到的错误。如果您发现这是一个可能影响其他用户的错误,您可以考虑通过拉取请求提供修复。

完整代码参考(请求代码,标题是执行如下代码抛出的报错)

OPENAI_API_KEY="sk-cxxxxxxxxxxxxxx"
import os
import sys
os.path.dirname(sys.executable)
import os
os.environ['http_proxy'] = 'http://127.0.0.1:7897'
from langchain.document_loaders import WebBaseLoader
from langchain.indexes import VectorstoreIndexCreator
loader = WebBaseLoader("https://lilianweng.github.io/posts/2023-06-23-agent/")
index = VectorstoreIndexCreator().from_loaders([loader])
index.query("What is Task Decomposition?")

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐