在Ubuntu 26.04版本上借助本地AI助手在AMD显卡基础上安装并运行Qwen3.6-35B-A3B,作为本地编程AI 系统环境操作系统Ubuntu 26.04 本来想在deepin系统上折腾的但是有些包需要通过源码进行编译所以还是选择了Ubuntu因为这个系统更好下载各种缺少的包显卡AMD Radeon RX 7900 XTX 24G显存内存32G本次安装的大模型 Qwen3.6-35B-A3B与一般的安装方式不同之处本次安装借助MIMO这个本地AI助手可以极大化解安装困难让小白也能自己搞定。安装新系统后先安装MIMO在终端中运行命令curl-fsSLhttps://mimo.xiaomi.com/install|bash若是全新安装的系统会提示你缺少curl你按提示先安装curl然后重复上面的安装命令sudoaptinstallcurl做国内本地化处理请在桌面建立一个文件夹在文件夹中点右键启动终端。然后输入mimo启动mimo软件第一次启动时会问你是否信任当前文件夹你直接回车选择信任即可。接下来很多工作都交给mimo处理。在国内跨国下载软件几乎不可能如果不能科学上网就需要作本地化优化尽量把软件源改成国内源。在mimo中输入如下的指令一般都能顺利完成。我的操作系统是ubuntu26.04当前网络环境为中国国内检查下apt源是否为国内源若不是修改为阿里源若需要输入密码你弹出窗口我输入密码后你继续完成处理。最后报告结果。在这个过程中MIMO会弹出窗口引导你输入密码你输入开机密码即可。后续操作MIMO给你完成。开始安装大模型诀窍不要直接在mimo中输入你的想法先借助其他AI如KIMI给你写个AI指令。打开KIMI网页版微信登陆后在对话框中输入请搜索下最新信息然后回答我Linux平台下7900 XTX显卡如何才能做到运行Qwen3.6-35B-A3B的效能最好具体点例如应该使用哪种软件KIMI搜索后会告诉你最优路线你再给KIMI回个话很好我接受你的建议现在给我是写个AI指令我让本地AI助手开始配置。需要注意的是我的网络环境为中国大陆境内安装软件/升级组件时要优先使用国内源。在执行过程中若遇到一些无法成功下载的软件包请暂停并给出完整下载链接我用迅雷等软件完成下载后放在指定文件夹下然后继续执行。然后KIMI会给你可用的AI指令你再把这个指令发给mimo。接下来mimo就会跑一阵子就卡住你根据实际情况完成交互最终就可以顺利利用AMD Radeon RX 7900 XTX显卡驱动本地AI大模型。你还可以让AI给你做好开机启动等工作再写个控制脚本并要求他给你做好安全控制。最后让AI助手mimo写了个本地部署指南把中途遇到的问题都写出来了你可以在让AI助手执行安装时参考下这个记录。———————————————————————————————————————Qwen3.6-35B-A3B 本地部署完全指南适用环境操作系统Ubuntu 26.04 LTSGPUAMD Radeon RX 7900 XTX (24GB VRAM, RDNA3, gfx1100)软件栈ROCm 7.13 llama.cpp (HIP后端)模型Qwen3.6-35B-A3B (MoE, 35B总参数/3B激活)部署时间约 2-4 小时首次目录硬件与系统准备ROCm安装与配置编译依赖安装关键步骤llama.cpp编译模型下载与放置基础推理测试局域网API服务配置上下文长度优化多模态功能配置客户端接入指南常见问题排查一、硬件与系统准备1.1 确认硬件兼容性# 检查GPU是否被系统识别lspci|grep-ivga|grep-iamd# 预期VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 31 [Radeon RX 7900 XTX]1.2 系统更新sudoaptupdatesudoaptupgrade-ysudoaptinstall-ybuild-essentialgitcurlwgetpython3bcnet-tools iproute2 ufw openssl1.3 确认内核版本Ubuntu 26.04 LTS 默认内核应 ≥ 6.11ROCm 7.13 需要较新的内核支持。uname-r# 预期6.11.x 或更高二、ROCm安装与配置2.1 安装ROCm# 下载AMDGPU安装器如本地已有deb包可直接安装wgethttps://repo.radeon.com/amdgpu-install/latest/ubuntu/noble/amdgpu-install_7.13.60200-1_all.deb# 安装sudoaptinstall./amdgpu-install_*.deb# 执行安装sudoamdgpu-install--usecaserocm,opencl,hip --accept-eula本地文件替代如/home/you_PC_name(改成你自己的计算机名)/下载下已有amdgpu-install_*.debcd/home/you_PC_name(改成你自己的计算机名)/下载sudoaptinstall./amdgpu-install_*.debsudoamdgpu-install--usecaserocm,opencl,hip --accept-eula2.2 配置用户权限sudousermod-aGrender,video$USER# 重新登录使权限生效2.3 验证ROCm安装rocminfo|grep-EName:|gfx|head-5rocm-smi--showproductnamerocm-smi--showmeminfovram hipconfig--versionwhichhipccgroups$USER# 确认包含 render 和 video预期输出Name: gfx1100 Name: AMD Radeon RX 7900 XTX HIP version: 7.13.99004-xxxx三、编译依赖安装关键步骤这一步在实际部署中最容易遗漏。ROCm 7.13 的默认安装不包含编译llama.cpp所需的cmake配置文件必须额外安装以下包。3.1 安装cmake# 方式1从已下载的二进制包安装cd/tmptar-xzf/home/you_PC_name(改成你自己的计算机名)/下载/cmake-3.31.3-linux-x86_64.tar.gzexportPATH/tmp/cmake-3.31.3-linux-x86_64/bin:$PATHcmake--version# 验证3.31.3# 方式2在线下载wgethttps://github.com/Kitware/CMake/releases/download/v3.31.6/cmake-3.31.6-linux-x86_64.tar.gztar-xzfcmake-3.31.6-linux-x86_64.tar.gzexportPATH$(pwd)/cmake-3.31.6-linux-x86_64/bin:$PATH3.2 安装HIP语言支持包必须# 这个包提供 hip-lang-config.cmakellama.cpp编译必需sudoapt-getinstall-yamdrocm-runtime-dev7.13# 验证ls/opt/rocm/core-7.13/lib/cmake/hip-lang/hip-lang-config.cmake3.3 安装hipblas开发包必须# 这个包提供 hipblas-config.cmakellama.cpp编译必需sudoapt-getinstall-yamdrocm-hipblas-common-dev7.13-gfx110x amdrocm-blas-dev7.13-gfx110x# 验证ls/opt/rocm/core-7.13/lib/cmake/hipblas/hipblas-config.cmake如果没有安装这两个包cmake配置时会报错The ROCm root directory does not contain the HIP runtime CMake packageCould not find a package configuration file provided by hipblas四、llama.cpp编译4.1 获取源码cd~gitclone https://github.com/ggerganov/llama.cpp.gitcdllama.cpp本地文件替代如/home/you_PC_name(改成你自己的计算机名)/下载下已有llama.cpp-b9963.tar.gzcd~tar-xzf/home/you_PC_name(改成你自己的计算机名)/下载/llama.cpp-b9963.tar.gzmvllama.cpp-b9963 llama.cppcd~/llama.cpp4.2 使用HIP后端编译针对RDNA3# 确保cmake在PATH中exportPATH/tmp/cmake-3.31.3-linux-x86_64/bin:$PATH# 配置HIPCXX$(hipconfig-l)/clang\HIP_PATH$(hipconfig-R)\cmake-Bbuild\-DGGML_HIPON\-DAMDGPU_TARGETSgfx1100\-DCMAKE_BUILD_TYPERelease# 编译使用所有CPU核心cmake--buildbuild--configRelease -j$(nproc)编译时间约 5-15 分钟4.3 验证编译结果ls-la~/llama.cpp/build/bin/llama-serverls-la~/llama.cpp/build/bin/llama-cli五、模型下载与放置5.1 模型选择量化版本文件大小适用VRAM推荐度Q4_K_M当前使用~20GB24GB推荐Q4_K_S~20GB24GB推荐IQ4_NL_XL~17GB24GBVRAM紧张时5.2 下载模型# 创建模型目录mkdir-p~/models/qwen3.6-35b-a3b# 下载Q4_K_S量化版huggingface-cli download bartowski/Qwen3.6-35B-A3B-UD-Q4_K_S-GGUF\--local-dir ~/models/qwen3.6-35b-a3b\--local-dir-use-symlinks False本地文件替代如/home/you_PC_name(改成你自己的计算机名)/下载下已有模型文件mkdir-p~/models/qwen3.6-35b-a3bcp/home/you_PC_name(改成你自己的计算机名)/下载/Qwen3.6-35B-A3B-Uncensored-HauhauCS-Aggressive-Q4_K_M.gguf\~/models/qwen3.6-35b-a3b/六、基础推理测试cd~/llama.cppexportLD_LIBRARY_PATH$PWD/build/bin:/opt/rocm/core-7.13/lib:$LD_LIBRARY_PATH./build/bin/llama-cli\-m~/models/qwen3.6-35b-a3b/Qwen3.6-35B-A3B-UD-Q4_K_S.gguf\-ngl999\--flash-attn on\--cache-type-k q4_0\--cache-type-v q4_0\-c8192\-pWhat is 22?\-n64\--no-display-prompt注意--flash-attn必须显式指定on/off/auto不能只写-fa。新版llama.cpp已不支持-fa直接跟值。预期性能生成速度约 100-110 tok/s七、局域网API服务配置7.1 生成API KeyAPI_KEYsk-llama-$(openssl rand-hex16)echo$API_KEY~/.llama_api_keychmod600~/.llama_api_key7.2 创建启动脚本mkdir-p~/scriptscat~/scripts/start-llama-lan.shEOF #!/bin/bash LAN_IP$(ip -4 addr show | grep inet | grep -v 127.0.0.1 | grep -v docker | grep -v virbr | awk {print $2} | cut -d/ -f1 | head -1) LAN_IP${LAN_IP:-127.0.0.1} API_KEY$(cat ~/.llama_api_key 2/dev/null || echo ) MODEL_PATH$HOME/models/qwen3.6-35b-a3b/Qwen3.6-35B-A3B-UD-Q4_K_S.gguf echo llama-server: http://${LAN_IP}:8080 cd ~/llama.cpp export LD_LIBRARY_PATH$PWD/build/bin:/opt/rocm/core-7.13/lib:$LD_LIBRARY_PATH exec ./build/bin/llama-server \ --model $MODEL_PATH \ --host $LAN_IP \ --port 8080 \ --api-key $API_KEY \ --n-gpu-layers 999 \ --flash-attn on \ --cache-type-k q4_0 \ --cache-type-v q4_0 \ --ctx-size 131072 \ -b 512 \ -ub 512 \ --reasoning on \ --reasoning-format none \ --no-webui EOFchmodx ~/scripts/start-llama-lan.sh关键参数说明--reasoning on启用Qwen3.6思考模式--reasoning-format none将thinking内容放回message.content兼容标准API客户端--ctx-size 131072128K上下文需配合KV cache量化--no-webui关闭Web界面减少攻击面LD_LIBRARY_PATHsystemd环境下必须设置否则找不到共享库7.3 配置防火墙仅允许局域网sudoaptinstall-yufwsudoufw default deny incomingsudoufw default allow outgoingsudoufw allow22/tcp commentSSHLAN_IP$(ip-4addr show|grepinet |grep-v127.0.0.1|awk{print $2}|cut-d/-f1|head-1)LAN_SUBNET$(echo$LAN_IP|seds/\.[0-9]*$/.0\/24/)sudoufw allow from$LAN_SUBNETto any port8080proto tcp commentllama-server LANechoy|sudoufwenable7.4 创建systemd服务USERNAME$(whoami)sudotee/etc/systemd/system/llama-qwen36-lan.service/dev/nullEOF [Unit] Descriptionllama.cpp Qwen3.6-35B-A3B Server (LAN Only) Afternetwork-online.target Wantsnetwork-online.target [Service] Typesimple User$USERNAMEWorkingDirectory/home/$USERNAMEEnvironmentHIP_VISIBLE_DEVICES0 ExecStart/home/$USERNAME/scripts/start-llama-lan.sh Restarton-failure RestartSec10 StandardOutputjournal StandardErrorjournal [Install] WantedBymulti-user.target EOFsudosystemctl daemon-reloadsudosystemctlenablellama-qwen36-lan.servicesudosystemctl start llama-qwen36-lan.service7.5 验证服务systemctl status llama-qwen36-lan.service --no-pagercurlhttp://局域网IP:8080/health# 预期{status:ok}八、上下文长度优化8.1 最大化上下文至128K在24GB VRAM下使用KV cache q4_0量化Qwen3.6-35B-A3B可支持131072 tokens (128K)上下文。验证方法在启动脚本中设置--ctx-size 131072确认服务能正常加载。8.2 VRAM占用参考配置VRAM占用ctx-size 8192, parallel 4~21.8 GBctx-size 131072, parallel 4 (无mmproj)~22.9 GBctx-size 131072, parallel 4 (含mmproj)~24.2 GB8.3 如遇OOM降低--ctx-size例如改为65536或32768。九、多模态功能配置多模态--mmproj与MTP投机解码不兼容。当前基线模式可直接启用。9.1 下载mmproj文件mkdir-p~/下载/mmproj# mmproj文件通常与视觉版模型配套约860MB-2GB9.2 修改启动脚本启用多模态在启动脚本中添加--mmproj参数# 在 ~/scripts/start-llama-lan.sh 的 exec 命令中添加# --mmproj ~/下载/mmproj/mmproj-Qwen3.6-35B-A3B-BF16.gguf \9.3 VRAM注意启用mmproj后VRAM占用会增加约1-2GB。在128K上下文下总占用约24.2GB接近24GB上限。如遇OOM需降低--ctx-size。十、客户端接入指南10.1 通用配置Base URL: http://服务器局域网IP:8080/v1 API Key: 来自 ~/.llama_api_key 模型: qwen3.6-35b-a3b10.2 MIMO设置 → AI服务 → 自定义OpenAI API → 填入上述配置10.3 TRAE设置 → 模型 → 添加自定义模型 → API地址填http://IP:8080/v1/chat/completions10.4 Python调用fromopenaiimportOpenAI clientOpenAI(base_urlhttp://服务器IP:8080/v1,api_keyAPI_KEY)responseclient.chat.completions.create(modelqwen3.6-35b-a3b,messages[{role:user,content:你好}])print(response.choices[0].message.content)10.5 多模态调用BASE64$(base64-w0image.jpg)curl-HAuthorization: Bearer API_KEY\-HContent-Type: application/json\-d{\model\:\qwen3.6-35b-a3b\,\messages\:[{\role\:\user\,\content\:[ {\type\:\text\,\text\:\描述这张图片\}, {\type\:\image_url\,\image_url\:{\url\:\data:image/jpeg;base64,$BASE64\}} ]}] }\http://IP:8080/v1/chat/completions十一、常见问题排查问题1cmake找不到原因系统未安装cmake解决从二进制包安装或在线下载参见第三章问题2hip-lang-config.cmake缺失原因未安装amdrocm-runtime-dev7.13解决sudo apt-get install -y amdrocm-runtime-dev7.13问题3hipblasConfig.cmake缺失原因未安装hipblas开发包解决sudo apt-get install -y amdrocm-hipblas-common-dev7.13-gfx110x amdrocm-blas-dev7.13-gfx110x问题4libhipblas.so.3找不到原因动态库路径未设置解决启动脚本中添加export LD_LIBRARY_PATH$PWD/build/bin:/opt/rocm/core-7.13/lib:$LD_LIBRARY_PATH问题5systemd服务启动失败exit code 127原因systemd环境中没有LD_LIBRARY_PATH解决在启动脚本中设置export LD_LIBRARY_PATH...问题6MTP启动报错 “model doesn’t contain MTP layers”原因当前模型不包含MTP层解决使用不带--spec-type draft-mtp的基线模式问题7WorkBuddy报错 “Cannot read properties of undefined (reading ‘type’)”原因Qwen3.6的thinking模式产生非标准的reasoning_content字段解决启动参数添加--reasoning-format none问题8模型输出全是空行原因Qwen3.6思考模型的thinking tokens思考过程会占满token限制解决增加--max_tokens或使用--reasoning off禁用思考问题9上下文设为128K后OOM原因VRAM不足24GB上限解决降低--ctx-size如65536或使用更小的量化版本问题10流式输出没有128K上下文实际上下文已设置为128K流式和非流式共用同一个--ctx-size配置无需额外设置。附录文件清单安装后关键路径路径说明~/llama.cpp/build/bin/llama-server推理服务主程序~/llama.cpp/build/bin/llama-cli命令行推理工具~/models/qwen3.6-35b-a3b/模型存放目录~/下载/mmproj/mmproj投影文件目录~/scripts/start-llama-lan.sh局域网启动脚本~/.llama_api_keyAPI Key文件/etc/systemd/system/llama-qwen36-lan.servicesystemd服务配置~/桌面/控制AI大模型/桌面控制脚本桌面快捷方式文件功能启动-llama服务.desktop启动服务停止-llama服务.desktop停止服务查看-服务状态.desktop查看状态和日志设置-开机启动.desktop启用开机自启取消-开机启动.desktop禁用开机自启当前运行配置参数值GPUAMD RX 7900 XTX (gfx1100)ROCm7.13.99llama.cppb9963模型Qwen3.6-35B-A3B-Uncensored-HauhauCS-Aggressive-Q4_K_Mmmprojmmproj-Qwen3.6-35B-A3B-BF16上下文131072 (128K)KV Cacheq4_0 量化Flash Attention启用Thinking模式启用 (reasoning-format none)API认证启用VRAM占用~24.2 GB / 24 GB生成速度~105 tok/s文档版本v1.1基于实际部署经验修订生成时间2026-07-12适用环境Ubuntu 26.04 LTS AMD RX 7900 XTX ROCm 7.13 llama.cpp b9963