因此,在Ubuntu 14上工作,我更改了我的OPENAI_API_KEY并将更改放入我的NodeJS项目.env文件中。以前一切都很好。但现在openai API响应错误。所以事实证明,我的程序正在向它发送以前的API密钥,尽管我在.env文件中更改了它。我试图手动设置它,
process.env.OPENAI_API_KEY=abcdefghij123
字符串它工作了,但是当我把它从代码中删除时(因为它最终会出现在Git上,这是一个很大的不可以),它又在阅读旧的API密钥。
dddzy1tm1#
解决这个问题的第一部分是打印整个进程.env像
console.log('My process.env', process.env)
字符串这在我的NodeJS项目.env中发现了比3-4个变量多得多的变量,比如JAVA_HOME, Catalina _HOME,USER,DESKTOP_SESSION.
export OPENAI_API_KEY=sk-iXefsjfijsifjsifjsifjsifj
型所以下一步就是试着解除它。所以我做了
unset OPENAI_API_KEY
型重启我的NodeJS应用,瞧,它正在从我的.env文件中阅读我的新API密钥!编辑:好吧,再次面临同样的问题。现在的问题是,'unset'只为当前会话取消设置密钥。所以我决定对此更持久一点,我做到了,在我的根:
cat .bash* | grep OPENAI_API_KEY
型它发现下面的一行确实在那里的某个地方:
export OPENAI_API_KEY=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
型最后,我没有足够注意我的.bashrc文件,导出文件在它的底部。这个故事的寓意:不要相信你的眼睛,相信终端命令。
1条答案
按热度按时间dddzy1tm1#
解决这个问题的第一部分是打印整个进程.env像
字符串
这在我的NodeJS项目.env中发现了比3-4个变量多得多的变量,比如JAVA_HOME, Catalina _HOME,USER,DESKTOP_SESSION.
型
所以下一步就是试着解除它。所以我做了
型
重启我的NodeJS应用,瞧,它正在从我的.env文件中阅读我的新API密钥!
编辑:好吧,再次面临同样的问题。现在的问题是,'unset'只为当前会话取消设置密钥。所以我决定对此更持久一点,我做到了,在我的根:
型
它发现下面的一行确实在那里的某个地方:
型
最后,我没有足够注意我的.bashrc文件,导出文件在它的底部。
这个故事的寓意:不要相信你的眼睛,相信终端命令。