(Mac)torch==2.1.2 与 Python 3.12 不兼容+onnxruntime-silicon 不支持 Intel Mac



🔍 错误原因

  1. 虽然你现在用的是 Python 3.11,但 onnxruntime-silicon 这个包只支持 Apple Silicon(arm64)Mac,不支持 Intel(x86_64)
  2. 加上 uv 会检查所有 Python 版本的兼容性,哪怕你当前用的是 3.11,它也会因为"不兼容其他版本"而报错
  3. 同时,你的 requires-python 没有写死范围,导致 uv 默认允许更高版本的 Python,进一步放大了问题

✅ 最终版可直接复制的 pyproject.toml

这个配置完全适配你的 Intel Mac + Python 3.11,并且解决了所有依赖冲突:

toml 复制代码
[project]
name = "ai-test-agent-system"
version = "0.1.0"
description = "Add your description here"
# 强制锁定 Python 版本,避免 uv 检查其他版本导致报错
requires-python = "==3.11.*"
dependencies = [
    "langchain>=1.2.12",
    "langchain-deepseek>=1.0.1",
    "langchain-mcp-adapters>=0.2.1",
    "langgraph-cli[inmem]>=0.4.15",
    "pillow>=12.1.1",
    "langchain-community>=0.3.0",
    "langchain-openai>=0.3.0",
    # 把 pymupdf4llm 降级到不强制高版本 onnxruntime 的版本
    "pymupdf4llm<0.0.20",
    # 用官方最后支持 Intel Mac 的 onnxruntime 版本
    "onnxruntime==1.16.3",
    # 用官方最后支持 Intel Mac 的 torch 版本
    "torch==2.1.2",
    "torchvision==0.16.2",
    "torchaudio==2.1.2"
]

[tool.uv]
# 强制 uv 只考虑你的 Intel Mac + Python 3.11 环境
required-environments = [
  "python_version == '3.11' and sys_platform == 'darwin' and platform_machine == 'x86_64'"
]

🛠️ 执行步骤(按顺序来)

python 复制代码
 uv venv
 source .venv/bin/activate
 1025  pyenv install 3.11.11
 1026  pyenv local 3.11.11
 1027  source ~/.zshrc
 1028  python --version
 1029  uv sync

💡 关键说明

  • 为什么不用 onnxruntime-silicon 它的名字里的 silicon 就是指 Apple Silicon 芯片,Intel Mac 用不了,所以直接用官方最后一个支持 Intel 的 onnxruntime==1.16.3 更稳。
  • 为什么降级 pymupdf4llm 新版本的 pymupdf4llm 会强制依赖高版本 onnxruntime,降级到 <0.0.20 就能兼容 1.16.3
  • 为什么写死 requires-python = "==3.11.*" 这样 uv 就不会再去检查 3.12/3.13 版本的兼容性,避免额外报错。
相关推荐
灯澜忆梦8 小时前
GO_并发编程---定时器
开发语言·后端·golang
-银雾鸢尾-8 小时前
C#中的StringBuilder相关方法
开发语言·c#
-银雾鸢尾-9 小时前
C#中结构体与类的区别;抽象类与接口的区别
开发语言·c#
大模型码小白10 小时前
【Python零基础教程】继承、多态与魔法函数:面向对象编程三大核心特性详解
java·大数据·开发语言·人工智能·python·ai编程
麻雀飞吧10 小时前
最新量化学习路径,交易认知和技术实现要并行
人工智能·python
段一凡-华北理工大学12 小时前
向量数据库实战:选型、调优与落地~系列文章12:文本分块策略实战:chunk_size 怎么选?重叠多少?
开发语言·数据库·后端·oracle·rust·工业智能体·高炉智能化
Ljwuhe12 小时前
C++——多态
开发语言·c++
心平气和量大福大13 小时前
C#-WPF-Window主窗体
开发语言·c#·wpf
从零开始的代码生活_14 小时前
C++ 继承详解:访问控制、对象模型、菱形继承与设计取舍
开发语言·c++·后端·学习·算法
云小逸14 小时前
【C++ 第七阶段:模板、泛型编程与工程综合详解】
开发语言·c++