原贴链接

安装: https://www.python.org/downloads/release/python-3119/ (勾选“添加到路径”)

安装: Visual Studio Community 2019 (16.11.38) : https://www.softexia.com/programming/visual-studio-2019

工作负载: 使用C++的桌面开发

  • MSVC v142
  • 适用于Windows的C++ CMake工具
  • IntelliCode
  • Windows 11 SDK 10.0.22000.0

单独组件(使用搜索):

  • Git for Windows

安装: CUDA Toolkit 12.1.0 (2023年2月): https://developer.nvidia.com/cuda-12-1-0-download-archive?target_os=Windows&target_arch=x86_64&target_version=11&target_type=exe_local

  • 运行时
  • 文档
  • 开发
  • Visual Studio集成

依次运行(适用于VS 2019的开发者PowerShell):

定位安装文件夹 例如 "cd C:\LLM"
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
pip install -r requirements.txt
$env:GGML_CUDA='1'
$env:FORCE_CMAKE='1'
$env:CMAKE_ARGS='-DGGML_CUDA=on'
$env:CMAKE_ARGS='-DCMAKE_GENERATOR_TOOLSET="cuda=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1"'
cmake -B build -DGGML_CUDA=ON
cmake --build build --config Release

从llama.cpp\build\bin\Release复制exe文件(llama-quantize, llama-imatrix等)并粘贴到llama.cpp主文件夹中,或者在量化脚本前使用这些exe文件的路径。

讨论总结

本次讨论主要围绕如何在Windows 11上使用NVIDIA GPU加速本地构建llama.cpp展开。参与者分享了详细的安装和编译步骤,讨论了自动化脚本的使用,以及在Linux和Windows平台上的构建经验。话题涉及CUDA加速、GitHub Actions的自动化构建、编译优化等多个技术层面,同时也包含了幽默和跨平台的讨论。

主要观点

  1. 👍 自动化脚本的使用
    • 支持理由:自动化脚本如rebuild_llama.cpp.ps1简化了在Windows机器上构建llama.cpp的过程,提高了操作的便捷性。
    • 反对声音:无明显反对声音,多数用户认为自动化脚本提高了效率。
  2. 🔥 跨平台构建经验
    • 正方观点:用户分享了在Linux系统上的构建经验,提供了相关的命令和建议,增强了跨平台构建的可行性。
    • 反方观点:无明显反方观点,多数用户对跨平台构建持积极态度。
  3. 💡 CUDA加速的重要性
    • 解释:使用CUDA加速可以显著提高llama.cpp的构建和运行效率,是讨论中的一个重要技术点。

金句与有趣评论

  1. “😂 MoffKalast:Tbf, github actions run a build every merge and you can find downloadable cuda binaries right there. One click away.”
    • 亮点:简洁地说明了GitHub Actions的便捷性。
  2. “🤔 CountZeroHandler:I did https://github.com/countzero/windows_llama.cpp to automate this in Windows machines.”
    • 亮点:展示了自动化脚本的具体实现和GitHub仓库链接。
  3. “👀 oof-baroomf:Nice but using llamafile is soo much easier and its basically the same in terms of speed.”
    • 亮点:对比了使用llamafile和本地构建的简便性和速度。

情感分析

讨论的总体情感倾向积极,多数用户对技术指南和自动化脚本表示赞赏。主要分歧点在于跨平台构建的经验分享,以及CUDA加速的具体实现方式。可能的原因是不同用户的技术背景和操作习惯差异。

趋势与预测

  • 新兴话题:自动化脚本和跨平台构建可能会引发更多后续讨论。
  • 潜在影响:技术指南和自动化脚本的分享可能会简化更多用户在本地构建llama.cpp的过程,提高整体社区的技术水平和操作效率。