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

安装ChatterBot失败:处理PyYAML时出现subprocess-exited-with-error错误

解决ChatterBot安装时PyYAML编译报错的问题

问题根源

你遇到的AttributeError: cython_sources错误,本质是PyYAML 5.1.2的构建脚本依赖setuptools中的旧方法,但新版setuptools已经移除了该方法。而ChatterBot的依赖限制要求PyYAML版本在5.1<=PyYAML<5.2之间,导致了版本冲突。

可行解决方案

以下是几个直接有效的解决方法:

方法1:安装PyYAML预编译轮子,跳过编译步骤

先卸载可能残留的PyYAML,再直接安装对应系统的预编译二进制包,避免触发编译流程:

pip uninstall -y pyyaml
pip install pyyaml==5.1.2 --only-binary :all:
pip install chatterbot

--only-binary :all:参数会强制pip下载预编译的轮子文件,而非源码编译,绕开了编译时的方法缺失问题。

方法2:使用社区维护的ChatterBot分支

原ChatterBot项目维护滞后,依赖未更新。可以寻找已更新依赖的社区fork版本,这类分支通常修复了旧版依赖和现代工具链的冲突,直接安装对应fork的Git仓库即可。

方法3:临时降级setuptools到兼容版本

先把setuptools降级到还保留cython_sources方法的旧版本,完成ChatterBot安装后再升级回新版:

pip install setuptools==58.0.4
pip install chatterbot
# 安装完成后可按需升级setuptools
pip install --upgrade setuptools

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 22:04:55