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

关于Conda安装requirements.txt中非PyPI语法及包缺失问题的咨询

问题解答

1. 非PyPI语法的含义

你看到的certifi=2024.2.2=py311h06a4308_0是conda专属的精确包标识格式,拆分后各部分意义:

  • certifi:包名
  • 2024.2.2:包版本号
  • py311h06a4308_0:构建字符串,其中:
    • py311:表示该包适配Python 3.11版本
    • h06a4308:平台/编译环境的哈希标识(对应特定系统架构、编译参数)
    • 0:构建编号(同一版本多次编译的区分号)

这种格式是通过conda env export命令导出的,包含了特定平台、Python版本的精准构建信息,和PyPI的pip格式(name==version)完全不同。

2. 安装失败的解决方法

你遇到PackagesNotFoundError的核心原因是:作者导出的requirements.txt是针对他的平台(大概率是x86_64架构)生成的,而你使用的是osx-arm64(苹果M系列芯片),跨平台后这些精准构建包无法匹配,加上部分包可能不在你当前的通道里。具体操作步骤:

步骤1:简化requirements.txt内容

删除每个包后面的构建字符串部分,只保留包名=版本号格式,比如把certifi=2024.2.2=py311h06a4308_0改成certifi=2024.2.2。这样conda会自动搜索适配你osx-arm64平台的可用构建版本。

步骤2:添加必要的conda通道

除了defaults和conda-forge,部分科学计算类包可能在bioconda通道,执行以下命令添加通道并设置优先级:

# 添加常用通道
conda config --add channels bioconda
conda config --add channels conda-forge
conda config --add channels defaults
# 设置通道优先级(conda-forge优先,避免版本冲突)
conda config --set channel_priority strict

步骤3:重新创建环境

使用简化后的requirements.txt执行创建命令:

conda create --name multid_features --file simplified_requirements.txt

备选方案:手动指定包安装

如果简化后仍有部分包找不到,可以直接指定包名和版本手动安装,比如:

# 先创建空环境
conda create --name multid_features python=3.11
# 安装指定包
conda install -n multid_features certifi=2024.2.2 pandas=2.2.1 ...

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 05:41:01