You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在运行Spacy项目命令时传递环境变量至Python脚本?

问题:如何在spaCy项目运行命令时传递环境变量?

我有一个spaCy项目,其命令配置片段如下:

commands:
- name: "get-models"
  help: "Downloads trained models from s3."
  script:
    - "python scripts/get_models.py"
  deps:
    - "scripts/get_models.py"

我的get_models.py脚本需要S3_ACCESS_KEY和S3_SECRET_KEY这两个环境变量,并通过os.getenv('S3_ACCESS_KEY')和os.getenv('S3_SECRET_KEY')分别读取它们。请问在运行python -m spacy project run get-models命令时,如何将这些环境变量传递给该脚本?


解决方法

方法1:命令行临时传递

直接在运行命令前前置环境变量,仅对当前命令生效:

S3_ACCESS_KEY=你的密钥ID S3_SECRET_KEY=你的密钥密码 python -m spacy project run get-models

方法2:当前Shell会话全局生效

先在Shell中导出环境变量,之后当前会话内运行的所有命令都能访问这些变量:

export S3_ACCESS_KEY=你的密钥ID
export S3_SECRET_KEY=你的密钥密码
python -m spacy project run get-models

方法3:使用.env文件(需额外配置)

如果希望环境变量持久化且不用每次手动输入,可以创建.env文件:

S3_ACCESS_KEY=你的密钥ID
S3_SECRET_KEY=你的密钥密码

然后修改get_models.py开头添加加载代码:

from dotenv import load_dotenv
load_dotenv()

运行命令前确保已安装依赖:

pip install python-dotenv
python -m spacy project run get-models

内容的提问来源于stack exchange,提问作者ryuzakinho

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 21:42:38