GLM 4.7 Flash 是一款 新近发布的 开源权重大型语言模型,因其可在本地运行,同时在编码、推理和代理式工作流中仍具备强劲表现而备受关注。
不同于许多依赖付费 API 或云端基础设施的现代模型,GLM 4.7 Flash 可借助轻量级推理框架完全在本地硬件上执行。对于希望全面掌控模型、支持离线使用、成本可预期、并在开发中快速迭代的开发者而言,这是一种极具吸引力的选择。
在合适的配置与量化方案下,该模型能在消费级 GPU 上实现较高的生成速度,同时保持有用的推理质量。
在本教程中,我将带您使用 llama.cpp 搭建运行 GLM 4.7 Flash 所需的系统环境。我们将重点保持流程简单、干净且可复现。我们会下载模型,构建并配置 llama.cpp,然后通过网页应用与基于 API 的推理服务器来测试模型。
在教程后半部分,我们将把本地 llama.cpp 服务器与 AI 编码代理集成,以实现代码自动生成、执行与测试的工作流。您也可以参考我们的指南:如何在本地运行 GLM-4.7 。
本地运行 GLM 4.7 Flash 的先决条件
在本地运行 GLM 4.7 Flash 之前,请确保您的系统满足以下要求。
硬件要求
针对全精度或更高比特量化:
NVIDIA GPU,至少 24 GB 显存
建议 32 GB 系统内存
至少 40 GB 可用磁盘空间,用于模型文件与构建产物
针对 4 位量化模型
NVIDIA GPU, 至少 16 GB 显存
建议 24 GB 显存,以在更大上下文下获得更平滑的推理
16 至 32 GB 系统内存
至少 25 GB 可用磁盘空间
Q4_K_XL 量化方案可在保留较强推理与编码性能的同时,显著降低内存占用,适用于 RTX 3090、RTX 4080、RTX 4090 等 GPU。该变体非常适合希望在不使用全精度权重的情况下获得高吞吐量的用户。
软件要求
推荐使用 Linux 或 macOS。Windows 用户应使用启用 GPU 直通的 WSL2。
需要安装 NVIDIA GPU 驱动,且必须与已安装的 CUDA 版本兼容。
运行 GLM 4.7 Flash 进行 GPU 加速需要 CUDA 支持。请安装 CUDA Toolkit 13.1 。
构建 llama.cpp 需要 CMake 3.26 或更高版本。
克隆与管理代码库需要 Git。
1. 配置 GLM 4.7 Flash 的运行环境
在构建 llama.cpp 并运行 GLM 4.7 Flash 之前,先确认您的 NVIDIA GPU 与驱动已正确安装。这可确保 CUDA 可用,系统可进行 GPU 加速推理。
nvidia-smi技术支持
输出会显示一块 RTX 3090、CUDA 版本 12.8,以及可用的 24GB 显存,这足以运行 GLM 4.7 Flash 及其量化变体。
接下来,打开终端并定义一个干净的工作区与目录结构。这样可使源码、模型文件与缓存数据井然有序,避免权限问题,并便于复现。
export WORKDIR = "/workspace"
export LLAMA_DIR = "$WORKDIR /llama.cpp"
export MODEL_DIR = "$WORKDIR /models/unsloth/GLM-4.7-Flash-GGUF" 技术支持
创建存放模型文件的目录,并将 Hugging Face 的缓存位置配置在工作区内而非主目录中。这样有助于加快下载并避免不必要的警告。
mkdir -p "$MODEL_DIR "
export HF_HOME = "$WORKDIR /.cache/huggingface"
export HUGGINGFACE_HUB_CACHE = "$WORKDIR /.cache/huggingface/hub"
export HF_HUB_CACHE = "$WORKDIR /.cache/huggingface/hub" 技术支持
设置其他环境变量以抑制符号链接警告,并启用高性能下载。
export HF_HUB_DISABLE_SYMLINKS_WARNING = 1
export HF_XET_HIGH_PERFORMANCE = 1 技术支持
最后,安装构建 llama.cpp 与管理下载所需的系统依赖。
sudo apt-get update
sudo apt-get install -y \
build-essential cmake git curl libcurl4-openssl-dev技术支持
至此,系统环境已就绪。下一部分将专注于在启用 CUDA 支持的情况下克隆并构建 llama.cpp。
2. 安装支持 CUDA 的 llama.cpp
环境准备好后,下一步是安装 llama.cpp 并以启用 CUDA 的方式构建。这可以让 GLM 4.7 Flash 在 GPU 上高效运行。
在终端中,进入您的工作区。然后运行以下命令克隆官方的 llama.cpp 仓库。
git clone https://github.com/ggml-org/llama.cpp "$LLAMA_DIR"技术支持
仓库克隆完成后,源文件将下载到工作区目录中。
Cloning into '/workspace/llama.cpp'...
remote: Enumerating objects: 76714, done.
remote: Counting objects: 100% (238/238), done.
remote: Compressing objects: 100% (157/157), done.
remote: Total 76714 (delta 172), reused 81 (delta 81), pack-reused 76476 (from 3)
Receiving objects: 100% (76714/76714), 282.23 MiB | 13.11 MiB/s, done.
Resolving deltas: 100% (55422/55422), done.
Updating files: 100% (2145/2145), done.技术支持
接下来使用 CMake 配置构建,并显式启用 CUDA 支持。此步骤将准备编译 GPU 加速的可执行文件。
cmake "$LLAMA_DIR " -B "$LLAMA_DIR /build" \
-DBUILD_SHARED_LIBS = OFF \
-DGGML_CUDA = ON技术支持
配置完成后,构建所需的 llama.cpp 可执行文件。该命令会编译核心推理工具,包括命令行界面与推理服务器。
cmake --build "$LLAMA_DIR /build" --config Release -j --clean-first \
--target llama-cli llama-mtmd-cli llama-server llama-gguf-split技术支持
构建完成后,将编译好的可执行文件拷贝到主目录,方便调用。
cp "$LLAMA_DIR /build/bin/llama-" * "$LLAMA_DIR /" 技术支持
最后,运行推理服务器的帮助命令,验证 llama.cpp 是否正确构建并检测到了 CUDA。
"$LLAMA_DIR /llama-server" --help > /dev/null && echo "✔ llama.cpp built" 技术支持
若已正确启用 CUDA,输出会确认检测到了 CUDA 设备,包括 GPU 型号与计算能力。
ggml_cuda_init: found 1 CUDA devices:
Device 0 : NVIDIA GeForce RTX 3090 , compute capability 8.6 , VMM: yes
✔ llama.cpp built技术支持
3. 使用 Xet 支持下载 GLM 4.7 Flash 模型
在构建好 llama.cpp 并验证 CUDA 支持后,下一步是下载 GLM 4.7 Flash 模型。在本教程中,我们使用带有 Xet 支持的 Hugging Face Hub,以实现对大型模型文件的快速且可靠的下载。
在同一终端中,输入以下命令安装用于高性能下载模型的 Python 包。
pip -q install -U "huggingface_hub[hf_xet]" hf-xet
pip -q install -U hf_transfer技术支持
然后在终端中运行以下 Python 脚本,以下载 4 位量化的模型变体。该脚本使用之前定义的工作区路径,并仅下载所需的 GGUF 文件。
python - << 'PY'
import os
from huggingface_hub import snapshot_download
model_dir = os.environ["MODEL_DIR"]
snapshot_download(
repo_id="unsloth/GLM-4.7-Flash-GGUF",
local_dir=model_dir,
allow_patterns=["*UD-Q4_K_XL*"],
)
print("✔ Download complete:", model_dir)
PY 技术支持
下载完成后,您应看到确认模型文件成功获取的输出,总大小约为 17.5 GB。
Fetching 1 files: 100 %| ███████████████████████████████████████████████████████████████████████████████████| 1 /1 [ 00:52 < 00:00, 52 .80s/it]
Download complete: 100 %| ████████████████████████████████████████████████████████████████████████████| 17 .5G/17.5G [ 00:52 < 00:00, 480MB/s] ✔ Download complete: /workspace/models/unsloth/GLM-4.7-Flash-GGUF技术支持
最后,验证目标目录中是否存在模型文件。
ls -lh "$MODEL_DIR " 技术支持
您应能看到 GLM-4.7-Flash-UD-Q4_K_XL.gguf 文件已列出,表明模型可用于推理。
total 17G
-rw-rw-rw- 1 root root 17G Jan 21 18 :46 GLM-4.7-Flash-UD-Q4_K_XL.gguf技术支持
4. 运行 GLM 4.7 Flash 推理服务器
在下载好模型并以启用 CUDA 的方式构建好 llama.cpp 后,下一步是启动推理服务器。该服务器会将 GLM 4.7 Flash 暴露为本地 API,供用户界面、脚本与 AI 编码代理使用。
请继续使用您在前面部分配置的同一终端会话与工作区。
首先,定位已下载的 GGUF 模型文件,并将其路径存入环境变量。
export MODEL_FILE = "$( ls "$MODEL_DIR " /*.gguf | grep -i UD-Q4_K_XL | head -n 1 ) " 技术支持
接着使用以下命令启动 llama.cpp 推理服务器。该配置针对 RTX 3090 进行了优化,在吞吐、延迟与上下文长度之间取得平衡。
$LLAMA_DIR /llama-server \
--model "$MODEL_FILE " \
--alias "GLM-4.7-Flash" \
--threads 32 \
--host 0.0 .0.0 \
--ctx-size 16384 \
--temp 0.7 \
--top-p 1 \
--port 8080 \
--fit on \
--prio 3 \
--jinja \
--flash-attn auto \
--batch-size 1024 \
--ubatch-size 256 技术支持
llama-server 配置说明
--model 加载所选的 GLM 4.7 Flash GGUF 模型文件进行推理。
--alias 指定一个可读的模型名称,将出现在 API 响应与日志中。
--threads 使用 32 个 CPU 线程以支持在多核系统上的分词、调度与请求处理。
--host 将服务器绑定到所有网络接口,以便本地或同一网络中的其他机器访问。
--ctx-size 设置较大的上下文窗口,在长提示支持与 GPU 显存占用之间取得平衡。
--temp 施加适度随机性,以提升响应质量,同时不损害推理稳定性。
--top-p 关闭核采样过滤,使生成时可使用完整的 token 分布。
--port 8080 在本地常用开发端口上暴露推理服务器。
--fit 启用自动内存拟合,以在不超出显存限制的情况下最大化 GPU 利用率。
--prio 为并发请求下的推理工作负载设置平衡的优先级。
--jinja 启用 Jinja 模板,以支持结构化提示与代理式工作流。
--flash-attn 在 GPU 支持时自动启用 Flash Attention 以提高吞吐。
--batch-size 允许较大的批处理,以提升 RTX 3090 上的 token 吞吐量。
--ubatch-size 将大批次拆分为更小的微批,以控制内存压力与延迟。
服务器启动后,将把模型加载到 GPU 显存,并开始在 8080 端口监听请求。此时,GLM 4.7 Flash 已在本地运行,可通过 HTTP 端点用于对话、补全与基于代理的工作流。
5. 测试 GLM 4.7 Flash 模型
在推理服务器运行后,您可以通过多种界面测试 GLM 4.7 Flash,包括内置 Web UI、直接 HTTP 请求以及兼容 OpenAI 的 Python SDK。
llama.cpp 的网页界面地址为: http://0.0.0.0:8080
复制该 URL 并在浏览器中打开,以访问类似 ChatGPT 的简洁聊天界面。
输入提示词,模型将立即开始生成回复。
该设置通过在 RTX 3090 上启用 CUDA 运行模型,在可用时使用 Flash Attention,并采用为高吞吐调优的批处理设置,从而实现速度优化。
在实践中,此配置可在短至中等长度的回复中达到约每秒 100 个 token 的速度。
您也可以使用 curl 与同一服务器交互。打开一个新的终端窗口,运行以下请求以发送对话补全提示。
curl -N http://127.0.0.1:8080/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer local" \
-d '{
"model": "GLM-4.7-Flash",
"messages": [
{ "role": "user", "content": "Write a short bash script that prints numbers 1 to 5." }
]
}' 技术支持
您也可以通过安装 OpenAI Python SDK 使用 Python 测试该模型。
pip -q install openai技术支持
在下面的 Python 示例中,OpenAI 客户端被配置为向本地运行的 llama.cpp 推理服务器发送请求。
base_url 指向本地 API 端点;SDK 要求提供 API key,但由于在本地进行认证,您可将其设置为任意占位值。
from openai import OpenAI
client = OpenAI(
base_url= "http://127.0.0.1:8080/v1" ,
api_key= "local"
) 技术支持
随后,客户端使用启动推理服务器时定义的模型别名向 GLM 4.7 Flash 发送对话补全请求。提示以标准聊天格式提供,响应将作为结构化对象返回。
r = client. chat. completions. create(
model= "GLM-4.7-Flash" ,
messages= [ { "role" : "user" , "content" : "Build me a Simple API server using FastAPI" } ]
)
print ( r. choices[ 0 ] . message. content) 技术支持
几秒之内,模型将返回完整的响应,包括示例代码与说明。
6. 配置 OpenCode 编码代理
OpenCode 是一款开源 AI 编码代理,旨在本地运行,并支持代码生成、文件编辑、命令执行与迭代式问题求解等代理式工作流。
与云端编码助手不同,OpenCode 可连接到自建的推理服务器,使您能够构建完全本地、免费的 AI 编码环境。
本教程中,我们将通过兼容 OpenAI 的 API,将 OpenCode 配置为使用本地运行 GLM 4.7 Flash 的 llama.cpp 服务器。
首先,仍在同一终端会话中,使用官方安装脚本安装 OpenCode。
curl -fsSL https://opencode.ai/install | bash 技术支持
安装完成后,更新 PATH,以便 opencode 命令可在终端中直接使用。
export PATH = "$HOME /.local/bin:$PATH " 技术支持
打开一个新的终端窗口,验证 OpenCode 是否已正确安装。
opencode --version 技术支持
您应能看到类似如下的版本号。
1.1 .29技术支持
接下来创建 OpenCode 配置目录。然后创建 OpenCode 配置文件,并将 llama.cpp 定义为提供方。该配置指示 OpenCode 将所有请求发送到本地运行的推理服务器,并使用 GLM 4.7 Flash 模型。
mkdir -p ~/.config/opencode
cat > ~/.config/opencode/opencode.json << 'EOF'
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"llamacpp": {
"npm": "@ai-sdk/openai-compatible",
"name": "llama.cpp (local)",
"options": {
"baseURL": "http://127.0.0.1:8080/v1"
},
"models": {
"GLM-4.7-Flash": {
"name": "GLM-4.7-Flash (UD-Q4_K_XL)"
}
}
}
},
"model": "GLM-4.7-Flash"
}
EOF 技术支持
最后,对 OpenCode 进行认证。该工具要求执行此步骤,但由于推理服务器在本地,API key 可使用任意占位值。
opencode auth login技术支持
在提示时,请使用以下值。
Provider:Other
Provider ID:llamacpp
API key:local
至此,OpenCode 已完整配置为通过本地 llama.cpp 服务器使用 GLM 4.7 Flash。
7. 搭配 OpenCode 使用 GLM 4.7 Flash
在将 OpenCode 配置并连接到本地 llama.cpp 服务器后,您即可将 GLM 4.7 Flash 用作全自动的 AI 编码代理。
首先创建一个新项目目录并进入该目录。
mkdir -p /workspace/project
cd /workspace/project技术支持
接着在同一终端中启动 OpenCode。
opencode技术支持
OpenCode 启动后,按 Tab 键切换到 计划模式(Plan mode) 。在该模式下,描述您希望构建的内容。
例如,输入提示,要求 OpenCode 使用 FastAPI 创建一个简单的机器学习驱动 API。OpenCode 将自动规划项目、生成代码、运行 API 服务器并测试实现。
在规划阶段,OpenCode 可能会提出后续问题,以澄清诸如框架选择、端点或项目结构等需求。请选择您偏好的选项并确认继续。
规划完成后,OpenCode 会给出详细的执行计划。请审阅该计划,若符合预期则批准。然后再次按 Tab ,从 计划模式(Plan mode) 切换到 构建模式(Build mode) 。
在构建模式中,OpenCode 会创建结构化任务清单,并依次执行每一步。这包括生成文件、编写代码、安装依赖、运行服务器与执行测试。您可以实时观察每个任务的完成情况。
构建流程结束后,OpenCode 将提供应用程序的完整概览,包括使用说明、示例请求与自动化测试结果。此时,您已经在本机上通过本地 AI 编码代理构建并验证了一个完整可用的应用。
结语
GLM 4.7 Flash 标志着迈向完全本地化 AI 编码代理的重要一步。能够在本地硬件上运行一款快速且具备推理能力的模型,并将其与 OpenCode 等工具集成,意味着工作流正从依赖云端转向本地化。
尽管如此,GLM 4.7 Flash 仍有局限。它在处理中小型任务时表现良好,但在更复杂的多步骤编码工作流中可能会遇到困难。上下文可能很快被填满,工具执行偶尔会失败,有时代理可能在中途停止,需要开启新会话继续。
这些问题在以速度为优先、而非追求最大推理深度的轻量级 MoE 模型中是预期之内的。
从原始能力上看,GLM 4.7 Flash 与完整的 GLM 4.7 模型不在同一水准,后者的表现更接近诸如 Claude 4.5 Sonnet 等模型。取舍非常明确:GLM 4.7 Flash 更重视速度、效率与本地可用性,而非极致的推理强度。
完成本教程并调优推理服务器是一次有价值的体验。运行更高精度的变体并增大上下文窗口或可提升编码可靠性,但要获得最佳结果,仍需对温度、top p、批大小与上下文长度等参数进行细致试验。达到最优配置是一个迭代过程。
总体而言,GLM 4.7 Flash 是当下开发者寻求快速、本地且免费的 AI 编码代理的务实且令人兴奋的选择,且随着工具与模型的持续演进,仍有明显的提升空间。
GLM 4.7 Flash 是一款新近发布的开源权重大型语言模型,因其可在本地运行,同时在编码、推理和代理式工作流中仍具备强劲表现而备受关注。
不同于许多依赖付费 API 或云端基础设施的现代模型,GLM 4.7 Flash 可借助轻量级推理框架完全在本地硬件上执行。对于希望全面掌控模型、支持离线使用、成本可预期、并在开发中快速迭代的开发者而言,这是一种极具吸引力的选择。
在合适的配置与量化方案下,该模型能在消费级 GPU 上实现较高的生成速度,同时保持有用的推理质量。
在本教程中,我将带您使用 llama.cpp 搭建运行 GLM 4.7 Flash 所需的系统环境。我们将重点保持流程简单、干净且可复现。我们会下载模型,构建并配置 llama.cpp,然后通过网页应用与基于 API 的推理服务器来测试模型。
在教程后半部分,我们将把本地 llama.cpp 服务器与 AI 编码代理集成,以实现代码自动生成、执行与测试的工作流。您也可以参考我们的指南:如何在本地运行 GLM-4.7。
本地运行 GLM 4.7 Flash 的先决条件
在本地运行 GLM 4.7 Flash 之前,请确保您的系统满足以下要求。
硬件要求
针对全精度或更高比特量化:
针对 4 位量化模型
Q4_K_XL量化方案可在保留较强推理与编码性能的同时,显著降低内存占用,适用于 RTX 3090、RTX 4080、RTX 4090 等 GPU。该变体非常适合希望在不使用全精度权重的情况下获得高吞吐量的用户。软件要求
1. 配置 GLM 4.7 Flash 的运行环境
在构建 llama.cpp 并运行 GLM 4.7 Flash 之前,先确认您的 NVIDIA GPU 与驱动已正确安装。这可确保 CUDA 可用,系统可进行 GPU 加速推理。
输出会显示一块 RTX 3090、CUDA 版本 12.8,以及可用的 24GB 显存,这足以运行 GLM 4.7 Flash 及其量化变体。
接下来,打开终端并定义一个干净的工作区与目录结构。这样可使源码、模型文件与缓存数据井然有序,避免权限问题,并便于复现。
创建存放模型文件的目录,并将 Hugging Face 的缓存位置配置在工作区内而非主目录中。这样有助于加快下载并避免不必要的警告。
设置其他环境变量以抑制符号链接警告,并启用高性能下载。
最后,安装构建 llama.cpp 与管理下载所需的系统依赖。
至此,系统环境已就绪。下一部分将专注于在启用 CUDA 支持的情况下克隆并构建 llama.cpp。
2. 安装支持 CUDA 的 llama.cpp
环境准备好后,下一步是安装llama.cpp 并以启用 CUDA 的方式构建。这可以让 GLM 4.7 Flash 在 GPU 上高效运行。
在终端中,进入您的工作区。然后运行以下命令克隆官方的 llama.cpp 仓库。
仓库克隆完成后,源文件将下载到工作区目录中。
接下来使用 CMake 配置构建,并显式启用 CUDA 支持。此步骤将准备编译 GPU 加速的可执行文件。
配置完成后,构建所需的 llama.cpp 可执行文件。该命令会编译核心推理工具,包括命令行界面与推理服务器。
构建完成后,将编译好的可执行文件拷贝到主目录,方便调用。
最后,运行推理服务器的帮助命令,验证 llama.cpp 是否正确构建并检测到了 CUDA。
若已正确启用 CUDA,输出会确认检测到了 CUDA 设备,包括 GPU 型号与计算能力。
3. 使用 Xet 支持下载 GLM 4.7 Flash 模型
在构建好 llama.cpp 并验证 CUDA 支持后,下一步是下载 GLM 4.7 Flash 模型。在本教程中,我们使用带有 Xet 支持的 Hugging Face Hub,以实现对大型模型文件的快速且可靠的下载。
在同一终端中,输入以下命令安装用于高性能下载模型的 Python 包。
然后在终端中运行以下 Python 脚本,以下载 4 位量化的模型变体。该脚本使用之前定义的工作区路径,并仅下载所需的 GGUF 文件。
下载完成后,您应看到确认模型文件成功获取的输出,总大小约为 17.5 GB。
最后,验证目标目录中是否存在模型文件。
您应能看到
GLM-4.7-Flash-UD-Q4_K_XL.gguf文件已列出,表明模型可用于推理。4. 运行 GLM 4.7 Flash 推理服务器
在下载好模型并以启用 CUDA 的方式构建好 llama.cpp 后,下一步是启动推理服务器。该服务器会将 GLM 4.7 Flash 暴露为本地 API,供用户界面、脚本与 AI 编码代理使用。
请继续使用您在前面部分配置的同一终端会话与工作区。
首先,定位已下载的 GGUF 模型文件,并将其路径存入环境变量。
接着使用以下命令启动 llama.cpp 推理服务器。该配置针对 RTX 3090 进行了优化,在吞吐、延迟与上下文长度之间取得平衡。
llama-server 配置说明
--model加载所选的 GLM 4.7 Flash GGUF 模型文件进行推理。--alias指定一个可读的模型名称,将出现在 API 响应与日志中。--threads使用 32 个 CPU 线程以支持在多核系统上的分词、调度与请求处理。--host将服务器绑定到所有网络接口,以便本地或同一网络中的其他机器访问。--ctx-size设置较大的上下文窗口,在长提示支持与 GPU 显存占用之间取得平衡。--temp施加适度随机性,以提升响应质量,同时不损害推理稳定性。--top-p关闭核采样过滤,使生成时可使用完整的 token 分布。--port 8080在本地常用开发端口上暴露推理服务器。--fit启用自动内存拟合,以在不超出显存限制的情况下最大化 GPU 利用率。--prio为并发请求下的推理工作负载设置平衡的优先级。--jinja启用 Jinja 模板,以支持结构化提示与代理式工作流。--flash-attn在 GPU 支持时自动启用 Flash Attention 以提高吞吐。--batch-size允许较大的批处理,以提升 RTX 3090 上的 token 吞吐量。--ubatch-size将大批次拆分为更小的微批,以控制内存压力与延迟。服务器启动后,将把模型加载到 GPU 显存,并开始在 8080 端口监听请求。此时,GLM 4.7 Flash 已在本地运行,可通过 HTTP 端点用于对话、补全与基于代理的工作流。
5. 测试 GLM 4.7 Flash 模型
在推理服务器运行后,您可以通过多种界面测试 GLM 4.7 Flash,包括内置 Web UI、直接 HTTP 请求以及兼容 OpenAI 的 Python SDK。
llama.cpp 的网页界面地址为:http://0.0.0.0:8080
复制该 URL 并在浏览器中打开,以访问类似 ChatGPT 的简洁聊天界面。
输入提示词,模型将立即开始生成回复。
该设置通过在 RTX 3090 上启用 CUDA 运行模型,在可用时使用 Flash Attention,并采用为高吞吐调优的批处理设置,从而实现速度优化。
在实践中,此配置可在短至中等长度的回复中达到约每秒 100 个 token 的速度。
您也可以使用
curl与同一服务器交互。打开一个新的终端窗口,运行以下请求以发送对话补全提示。您也可以通过安装 OpenAI Python SDK 使用 Python 测试该模型。
在下面的 Python 示例中,OpenAI 客户端被配置为向本地运行的 llama.cpp 推理服务器发送请求。
base_url指向本地 API 端点;SDK 要求提供 API key,但由于在本地进行认证,您可将其设置为任意占位值。随后,客户端使用启动推理服务器时定义的模型别名向 GLM 4.7 Flash 发送对话补全请求。提示以标准聊天格式提供,响应将作为结构化对象返回。
几秒之内,模型将返回完整的响应,包括示例代码与说明。
6. 配置 OpenCode 编码代理
OpenCode 是一款开源 AI 编码代理,旨在本地运行,并支持代码生成、文件编辑、命令执行与迭代式问题求解等代理式工作流。
与云端编码助手不同,OpenCode 可连接到自建的推理服务器,使您能够构建完全本地、免费的 AI 编码环境。
本教程中,我们将通过兼容 OpenAI 的 API,将 OpenCode 配置为使用本地运行 GLM 4.7 Flash 的 llama.cpp 服务器。
首先,仍在同一终端会话中,使用官方安装脚本安装 OpenCode。
打开一个新的终端窗口,验证 OpenCode 是否已正确安装。
您应能看到类似如下的版本号。
接下来创建 OpenCode 配置目录。然后创建 OpenCode 配置文件,并将 llama.cpp 定义为提供方。该配置指示 OpenCode 将所有请求发送到本地运行的推理服务器,并使用 GLM 4.7 Flash 模型。
最后,对 OpenCode 进行认证。该工具要求执行此步骤,但由于推理服务器在本地,API key 可使用任意占位值。
在提示时,请使用以下值。
至此,OpenCode 已完整配置为通过本地 llama.cpp 服务器使用 GLM 4.7 Flash。
7. 搭配 OpenCode 使用 GLM 4.7 Flash
在将 OpenCode 配置并连接到本地 llama.cpp 服务器后,您即可将 GLM 4.7 Flash 用作全自动的 AI 编码代理。
首先创建一个新项目目录并进入该目录。
接着在同一终端中启动 OpenCode。
OpenCode 启动后,按Tab 键切换到计划模式(Plan mode)。在该模式下,描述您希望构建的内容。
例如,输入提示,要求 OpenCode 使用 FastAPI 创建一个简单的机器学习驱动 API。OpenCode 将自动规划项目、生成代码、运行 API 服务器并测试实现。
在规划阶段,OpenCode 可能会提出后续问题,以澄清诸如框架选择、端点或项目结构等需求。请选择您偏好的选项并确认继续。
规划完成后,OpenCode 会给出详细的执行计划。请审阅该计划,若符合预期则批准。然后再次按Tab,从计划模式(Plan mode)切换到构建模式(Build mode)。
在构建模式中,OpenCode 会创建结构化任务清单,并依次执行每一步。这包括生成文件、编写代码、安装依赖、运行服务器与执行测试。您可以实时观察每个任务的完成情况。
构建流程结束后,OpenCode 将提供应用程序的完整概览,包括使用说明、示例请求与自动化测试结果。此时,您已经在本机上通过本地 AI 编码代理构建并验证了一个完整可用的应用。
结语
GLM 4.7 Flash 标志着迈向完全本地化 AI 编码代理的重要一步。能够在本地硬件上运行一款快速且具备推理能力的模型,并将其与 OpenCode 等工具集成,意味着工作流正从依赖云端转向本地化。
尽管如此,GLM 4.7 Flash 仍有局限。它在处理中小型任务时表现良好,但在更复杂的多步骤编码工作流中可能会遇到困难。上下文可能很快被填满,工具执行偶尔会失败,有时代理可能在中途停止,需要开启新会话继续。
这些问题在以速度为优先、而非追求最大推理深度的轻量级 MoE 模型中是预期之内的。
从原始能力上看,GLM 4.7 Flash 与完整的 GLM 4.7 模型不在同一水准,后者的表现更接近诸如Claude 4.5 Sonnet 等模型。取舍非常明确:GLM 4.7 Flash 更重视速度、效率与本地可用性,而非极致的推理强度。
完成本教程并调优推理服务器是一次有价值的体验。运行更高精度的变体并增大上下文窗口或可提升编码可靠性,但要获得最佳结果,仍需对温度、top p、批大小与上下文长度等参数进行细致试验。达到最优配置是一个迭代过程。
总体而言,GLM 4.7 Flash 是当下开发者寻求快速、本地且免费的 AI 编码代理的务实且令人兴奋的选择,且随着工具与模型的持续演进,仍有明显的提升空间。