这是我的代码:
import os
from dotenv import load_dotenv,find_dotenv
load_dotenv(find_dotenv())
print(os.environ.get("OPEN_AI_KEY"))
from langchain.llms import OpenAI
llm=OpenAI(model_name="text-davinci-003",temperature=0.7,max_tokens=512)
print(llm)
字符串
当我执行上面的代码时,我得到这个错误
ValidationError: 1 validation error for OpenAI
__root__
Did not find openai_api_key, please add an environment variable `OPENAI_API_KEY` which contains it, or pass `openai_api_key` as a named parameter. (type=value_error)
型
医生说
如果你不想设置环境变量,你可以在初始化OpenAI LLM类时直接通过openai_API_key命名参数传入密钥:
但是已经设置好了,打印正确
的数据
当我通过传入命名参数来设置llm
时:
llm=OpenAI(openai_api_key="PASSINGCORRECTKEY", model_name="text-davinci-003",temperature=0.7,max_tokens=512)
llm("Tell me a joke")
型
然后我得到这个错误:
raise ValueError(
"Argument `prompt` is expected to be a string. Instead found "
f"{type(prompt)}. If you want to run the LLM on multiple prompts, use "
"`generate` instead."
)
型
更新
env变量最初被设置为OPEN_AI_KEY
,因为我从调用chat/completions
API的其他项目中复制和粘贴。我将env更改为OPENAI_API_KEY
,而不是我得到这个错误:
AuthenticationError: Incorrect API key provided: org-Wz3J****************2XK6. You can find your API key at https://platform.openai.com/account/api-keys.
型
但是当我调用"https://api.openai.com/v1/chat/completions"
端点时,相同的API键起作用
7条答案
按热度按时间ewm0tg9j1#
您可能需要存储OpenAI令牌,然后将其传递给您在这里拥有的
llm
变量,或者将您的环境变量重命名为openai_api_key
。直接传递密钥的一个可能的例子是:
字符串
现在应该能用了
azpvetkf2#
你应该添加一个.env文件并在其中添加open_API_key
字符串
zxlwwiss3#
您的env变量必须具有键名称
OPENAI_API_KEY
这应该可以解决您的问题:OPEN_AI_KEY
=>OPENAI_API_KEY
cidc1ykv4#
我得到了错误在Yutter笔记本
OPENAI_API_KEY
,或将openai_api_key
作为命名参数传递。(type=value_error)*对于使用笔记本电脑的人:
字符串
帮我解决了问题。
aor9mmx15#
我得到了类似的错误,但传递openai_API_key作为一个参数解决了这个问题。
字符串
ffdz8vbo6#
添加OPENAI API KEY的最佳方法是将其放在系统环境中。
svmlkihl7#
对于使用google colab的人,如果
%env
不适合你,试试:字符串