在过去三年里,很多人认为模型越大越"聪明"。他们觉得参数越多性能越好,GPU 越多就越强。这个普遍认知本周被 Google 的开源模型 "Gemma 4" 彻底颠覆。
Gemma 是 Google 发布的一系列 open-weight 模型。"Open-weight" 意味着模型的权重可以自由获取,任何人都可以下载并在自己的 PC、服务器或云端运行。
当 ChatGPT 和 Gemini Advanced 只能通过云端使用时,Gemma 最大的优势在于它可以直接安装并在本地环境运行。

为什么会出现这种变化?
因为 Google 新发布的 TurboQuant 是一项能大幅降低 LLM 内存占用的技术。据称它能将内存占用降低到原来的六分之一,这极大地降低了 AI 的运行成本。
很多人因此期待:"本地 LLM 终于能更轻量了""此前无法跑的大模型,现在在家用 GPU 上也能轻松跑起来"。
KV Cache 问题
当 LLM 生成文本时,会使用一种称为 "Key-Value Cache (KV cache)" 的工作内存来保存已计算过的 token 信息。没有它的话,每生成一个新 token 都得从头计算一次。
问题在于,随着上下文长度增长,KV cache 的大小会线性增长。处理长对话或长文档时,真正吃 GPU 内存的是 KV cache,而不是模型权重。
结论:TurboQuant 不是一条"能显著减小本地 LLM 整体权重"的魔法。它的核心在于强力压缩"推理过程中膨胀的内存",主要是 KV cache。
Gemma 4 的独特之处
Gemma 4 有四种规模:E2B、E4B、26B、A4B 和 31B。小规格针对智能手机与边缘设备,更大规格适合本地 PC 与工作站。
此外,它支持最长 256K tokens 的 long context,并可处理 140 多种语言。
核心能力:
- 较小(128K)与较大(256K)的上下文长度,让它在分享整套代码库或长篇设计文档时非常实用
- 原生支持 function calls(调用外部工具与 API 的机制)
- 默认支持 system role
- 所有模型都能处理文本与图像,小模型还原生支持语音
不只是 "smart",更是 "easy to integrate into the workflow"。我认为这就是 Gemma 4 的精髓。虽然模型本身的智能很重要,但真正落地的关键在于三点:读长文本的能力、调用工具的能力、以及本地运行的能力。
TurboQuant 的独特之处
它"不是让模型本身更轻"的技术,并不意味着价值低。相反,在本地 LLM 的实际运行中,后期更显著的反而是 KV cache 的压力,因此降低其负担的收益非常可观。
根据 Google Research,TurboQuant 追求极低比特深度的压缩;在 KV cache 量化上,在 3.5 bits/channel 可实现"absolute quality neutrality",即质量绝对不受影响;即便降到 2.5 bits/channel,质量也仅有"marginal"轻微退化。
TurboQuant 带来的变化
1. 更容易处理长文本
这会让长文本摘要、代码库分析、文档输入与 RAG 等任务更容易处理。由于 KV cache 会随序列长度增长而增大,对其进行压缩能让长文本操作更实用。
2. 在相同 GPU 上更容易保持性能
这能缓解"短文本没问题,但一到长文本就力不从心"的状况。对于显存约 16GB 的 GPU 尤其重要:即使模型本身能载入,长文本常常依然吃紧。
3. 对多轮与 agent 场景尤其有效
在需要长期对话、多任务、RAG、代码辅助等应用中,瓶颈往往不在模型本身,而在 KV cache,因此优化它价值极高。
实战:OCR 文档处理系统
下面用一个实时 chatbot 的小 demo,快速展示一下工作流程。
工作流程
- 上传文件:可以上传包含资产与负债的信息图片,任意格式
- 保存临时文件:文件会保存到磁盘的临时目录,文件名随机但扩展名保持正确
- PDF 转换:如果输入是 PDF,使用 Poppler 库中的 pdftoppm 工具将每一页转换为 PNG
- 图像缩放:如果图片大于最大边(默认 1536 像素),用高质量的 Lanczos 滤波按比例缩放
- 文档分类:如果文档类型设为 "auto",agent 会先快速分类图片类型(general、table、handwriting 或 scan)
- OCR 识别:将图片编码,与选定的提示词一起发送到本地的 Ollama API
- 输出格式化:根据选择的输出类型进行格式化(Plain text、Markdown 或 JSON)
核心代码示例
页码解析函数:
def parse_pages(page_str: str) -> list[int]:
"""Parse a page range string like '1-5' or '1,3,7-10' into a sorted list of 1-based page numbers."""
pages = set()
for part in page_str.split(","):
part = part.strip()
if "-" in part:
start, end = part.split("-", 1)
pages.update(range(int(start), int(end) + 1))
else:
pages.add(int(part))
return sorted(pages)
PDF 转图像函数:
def pdf_to_images(pdf_path: str, output_dir: str, dpi: int = DEFAULT_DPI, pages: list[int] | None = None) -> list[Path]:
"""Convert a PDF to PNG images using pdftoppm (poppler)."""
if not shutil.which("pdftoppm"):
print("Error: pdftoppm not found. Install poppler:")
print(" macOS: brew install poppler")
print(" Ubuntu: sudo apt install poppler-utils")
sys.exit(1)
# Convert pages and return sorted list of image paths
单文件处理函数:
def process_single_file(file_path: str, doc_type: str = "auto", model: str = DEFAULT_MODEL, dpi: int = DEFAULT_DPI) -> dict:
"""Run OCR on a single PDF or image file. Returns a unified result dict with per-page text and metadata."""
# Image OCR: direct processing
# PDF OCR: convert to images first, then OCR each page
# Returns unified dict structure for both types
输出格式化
系统支持三种输出格式:
- JSON:完整保留时间戳、token 数等全部信息
- Markdown:结构化输出,包含文件名、模型、页数、耗时等头部信息
- Plain Text:最简洁,几乎不加任何额外格式
总结与展望
Gemma 4 最重要的意义,并不是"又多了一个顶级模型"。我认为真正的转折在于:过去仅依赖云端的 AI 开发,正在转向云 + 本地的 hybrid 形态。
未来趋势:
- 重推理与最终决策放在云端
- 日常支持与内部数据处理在本地完成
- TurboQuant 有望显著提升 AI 的性能与效率
苏米注:Gemma 4 + TurboQuant 的组合确实值得关注。对于需要在本地部署 AI 应用的开发者来说,这意味着可以在消费级硬件上运行更大的模型。特别是 OCR + RAG 场景,长上下文支持 +KV cache 压缩能显著提升实用性。虽然 TurboQuant 目前还不是面向普通用户的服务,但作为一项将深刻影响 AI 未来走向的技术,非常值得持续关注。