【问题标题】:Setting Environment variables in .venv在 .venv 中设置环境变量
【发布时间】:2022-01-11 00:09:33
【问题描述】:

我正在使用 .venv 创建用于项目的虚拟环境。在这个项目中,我需要访问 OpenAI GPT3 环境。为此,我有一个 API 密钥,但我想将其存储为环境变量。因为我使用 windows 和 VS-Code 来处理我的项目,所以很多尝试都失败了。有谁知道如何解决这个问题?

【问题讨论】:

  • 您是否将venv 称为虚拟环境?或者它是一个文件?您是否尝试在虚拟环境中设置环境变量?
  • 我使用 venv 作为虚拟环境。我有一个读取export OPENAI_API_KEY="..." 的.env 文件和一个读取openai.api_key = os.getenv("OPENAI_API_KEY") 的普通python 文件。所有这些都是用 VS-Code 打开的,我正在尝试在我的虚拟环境中设置变量。
  • 能否说明您在哪里创建了.env 以及如何在.env 中存储环境变量?
  • 我将 .env 存储在运行它的脚本所在的同一目录中。 .env 只包含上面的代码,没有别的。

标签: python visual-studio-code environment-variables python-venv openai


【解决方案1】:

删除导出命令并设置您的密钥

OPENAI_API_KEY="..."

【讨论】:

  • 不幸的是,这似乎不起作用
【解决方案2】:

你可以像这样在settings.json文件中修改系统环境:

  "terminal.integrated.env.windows": {
    "OPENAI_API_KEY": "xxx"
  },

并将其添加到.env 文件中:

OPENAI_API_KEY=xxx

使用终端设置时,PYTHONPATH 会影响任何工具 由用户在终端内运行,以及任何操作 扩展为通过终端路由的用户执行,例如 作为调试。但是,在这种情况下,当扩展程序正在执行时 未通过终端路由的操作,例如使用 linter 或格式化程序,则此设置不会影响 模块查找。

当使用 .env 文件设置 PYTHONPATH 时,它将影响任何 扩展程序代表您执行调试器执行的操作, 但不会影响终端中运行的工具。

您可以参考official docs了解更多详情。

【讨论】:

    猜你喜欢
    • 2021-02-20
    • 2020-09-12
    • 2021-06-15
    • 2018-07-13
    • 2011-03-25
    • 2015-02-01
    • 2017-01-01
    • 2017-10-30
    • 2012-03-22
    相关资源
    最近更新 更多