ERROR: Failed building wheel for chroma-hnswlib Building wheel for llama-cpp-python (pyproject.toml) ... error error: subprocess-exited-with-error
时间: 2025-05-20 10:58:02 浏览: 26
### 解决方案
在 Windows 平台上安装 `chroma-hnswlib` 和 `llama-cpp-python` 时遇到的错误通常与依赖项编译失败有关。以下是针对该问题的具体解决方案:
#### 方法一:指定兼容版本并调整源地址
通过指定特定版本号以及更改 PyPI 镜像源可以有效解决问题。例如,对于 `chroma-hnswlib` 和 `chromadb` 的安装命令如下所示[^1]:
```bash
pip install chroma-hnswlib==0.7.5 chromadb==0.5.4 -i https://pypi.tuna.tsinghua.edu.cn/simple
```
此方法能够规避因版本不匹配而导致的构建失败。
#### 方法二:手动安装 HNSWLib 及其依赖
如果仍然存在无法构建 `hnswlib` 轮子的情况,则可能需要单独处理 `hnswlib` 安装过程。具体操作步骤包括卸载现有库并重新安装支持的版本[^2]:
```bash
pip uninstall hnswlib
pip install hnswlib==0.8.0
```
此外,在某些情况下还需要确认系统环境配置无误(如 Visual C++ Build Tools 是否已正确安装),因为这些工具链直接影响到扩展模块的本地编译能力。
#### 方法三:使用预编译版 Llama-CPP-Python
关于 `llama-cpp-python` 报错的问题,推荐尝试官方文档中的替代选项——即利用带有 GPU 加速功能或者仅限 CPU 运行模式下的二进制文件来完成部署工作流程。下面给出了一种常见做法:
```bash
pip install llama-cpp-python --force-reinstall --no-cache-dir --verbose
```
上述指令强制重置当前设置,并启用详尽日志记录以便于排查潜在隐患;与此同时还可以考虑切换至其他分支测试最新改进成果。
---
### 提供一段 Python 测试脚本验证安装情况
为了进一步检验以上措施的效果如何,这里附上一小段简单的代码用于加载所需模型组件并执行基础查询任务。
```python
import chromadb
from llama_cpp import Llama
# 初始化 ChromaDB 实例
client = chromadb.Client()
# 创建集合对象
collection = client.create_collection(name="example")
# 插入示例数据条目
collection.add(
embeddings=[[1.1, 2.3, 3.2], [4.5, 6.9, 2.8]],
metadatas=[{"uri": "/document1"}, {"uri": "/document2"}],
ids=["id1", "id2"]
)
print("ChromaDB 数据写入成功!")
# 启动 LLaMA 推理引擎实例化
model_path = "./models/llama-2-7b.ggmlv3.q4_K_S.bin"
llm = Llama(model_path=model_path)
output = llm("你好世界!", max_tokens=10)
print(f"LLaMa 输出结果:{output}")
```
---
阅读全文
相关推荐


















