找回密码
 立即注册
搜索

Gemma 4 本地AI终极指南

作者:admin | 时间:2026-4-11 06:08:13 | 阅读:61| 显示全部楼层

马上注册,让你轻松玩转程序园

您需要 登录 才可以下载或查看,没有账号?立即注册

x
谷歌几天前发布了Gemma 4,我终于重新爱上了这些模型。

在Gemma 2之后,我停止使用它们:我转向了Qwen,因为它为我提供了足够的上下文长度用于文档分析和智能体功能。

但现在,即使是小巧的Gemma-4-E2B也能做到一切。

我是一个"显卡穷人",所以我总是押注于具有出色能力的小语言模型。而Gemma 4是我的新选择!

在本文中,我将向你展示如何将旧电脑用作本地AI服务器:以及如何在Google AI Studio上免费测试更大的模型。

1、Gemma-4

Gemma-4是谷歌最新的开放权重模型家族,专注于更强的推理能力、智能体行为和多模态设备端使用。

主要新功能

高级推理和"思考"模式:Gemma-4可以进行逐步推理、多步规划,并针对智能体工作流进行优化(例如自主工具使用和工作流)。

长上下文窗口:小型E2B/E4B边缘模型支持高达128K token,26B/31B版本支持高达256K token,支持非常长的上下文任务。

多模态输入:所有模型都支持文本加图像(支持可变宽高比和多个token预算);E2B/E4B还原生支持音频,某些变体处理类似视频的序列。

更强的编码和函数调用:改进的编码基准测试加上内置的函数调用支持,让模型能够在智能体管道中调用工具和API,无需额外微调。

原生系统提示支持:4系列现在具有内置的system角色处理,使指令和行为控制更加一致且对开发者友好。在我看来,这是最伟大的功能(我一直在等待它)。

边缘优化的小型模型(E2B/E4B):高效的2B和4B有效参数模型,专为手机、树莓派和类似硬件设计,具有多模态推理和接近零延迟的离线执行能力。

Gemma-4是一个推理更快、上下文更长、多模态、支持智能体的模型家族,即使在移动设备和边缘设备上也能高效运行。

不同模型尺寸、目标用例和硬件

已经令人惊叹的gemma2-2b-it中主要缺失的功能是:上下文和系统消息。

在现代大语言模型使用中,智能体能力和结构化输出是相辅相成的,为此你需要系统消息和广泛的上下文长度。

002736xya6vsyk0yn68mzy.jpg

gemma-2-2b-it

  • 强大的聊天/指令遵循能力,针对小占用部署进行优化(例如端点、简单聊天机器人)。
  • 纯文本到文本;没有原生多模态或高级"思考"模式;编码和数学能力弱于后代模型。
gemma-3n-E2B

  • 专家混合式设计:总共 5B 参数但表现得像 2B 占用模型,针对设备端效率进行调整。
  • 纯文本,但比 Gemma-2-2B 具有更好的推理和指令遵循能力,面向"设备端"但尚不支持多模态或智能体。
gemma-4-E2B

  • 多模态:支持文本+图像(以及在更广泛的 Gemma-4 家族中支持类似音频或视频的行为),具有长上下文(例如 32K-128K 范围)。
  • 专为高级推理("思考模式")、函数调用和手机/树莓派类设备上的智能体工作流设计。

002737zbnk2uy2jctiznkz.jpg

我们可以轻松地在硬件上运行该家族的边缘模型,使用 llama.cpp。但如果你想尝试 26B/31B 版本,你可以选择 Google AI studio 上的免费 API 或 Playground……免费!

2、Google AI Studio 免费 API 和 Playground

谷歌提供了一个丰富的集成环境,可以直接在 Google AI Studio 上玩转谷歌模型(文本、音频、图像和视频)。

002739u6v3re6w32xdxvud.jpg

Google AI Studio

如果你有 Gmail 地址或 Google 账户,注册过程简单直接。

但你需要同意 Gemini API 附加服务条款:出于某些原因,你需要同意你*"是使用 Google AI Studio 和 Gemini API 进行专业或商业目的开发的开发者……"*

由你决定:我将其用于不涉及专有数据的个人项目(主要是搜索、比较和探索新主题)。

002739g5ovnlg8n877vyc6.jpg

点击继续后……你就完成了。

你可以访问 Playground,在那里你可以立即开始聊天,切换模型(在我的情况下,我想测试 Gemma 4 的高端:31B 和 MoE)。你还可以设置思考深度(最小、高)。

002740q9na3h9s0k9s692l.jpg

你还可以生成 API 密钥以在许多应用程序(如 Perplexica、LMStudio、Opencode、Open Claude)中从你的 PC 使用模型。

免费层的 API 密钥允许你每天进行多达 1500 次调用!

速率限制都在这里。

具体来说,Gemma-4 模型基本上是免费的。

002741vc2no4ijt4r6ri20.jpg

来源
稍后我将向你展示如何将本地 Perplexica 配置为强大的工具,使用 Gemma4-MoE 和免费 API 调用。
所以,创建你的第一个 API 密钥,并将其保存在安全的地方。我们很快就会使用它。



3、MiniPC 作为本地 AI 服务器

我有一台旧的 Beelink mini-PC,4 年前花了我 100 美元。这是一台低端电脑,配备英特尔第 6 代 CPU,没有独立 GPU,16GB 内存。而且 CPU 只有 4 个线程。

但是……我这台不再使用的 miniPC,即使运行 Gemma4-E4B 量化模型也能以不错的速度运行。

使用我的 GGUF Runner 和 Inspector 生成速度为 6 token/秒
想法很简单:

  • 你可以使用旧笔记本电脑(装有 Linux 的旧 MacBook)或旧 PC
  • 通过 WiFi 将其连接到本地网络
  • 使用 llama.cpp 服务器和一些技巧运行模型
并获得一个远程、完全本地的 AI,不会降低你自己的工作电脑的速度。

4、在旧硬件上运行 Gemma-4-E4B
超级简单。

1)你需要模型
我建议你从 Hugging Face 上的 Unsloth Gemma 4 专用仓库 下载 GGUF 模型:
  • gemma-4-E4B-it-Q3_K_S.gguf 对应 4B 活跃参数
  • gemma-4-E2B-it-Q4_K_M.gguf 对应 2B 活跃参数
下载到一个新的项目目录:我将其命名为 GoogleAIstudio。

2)你需要 llama.cpp
获取 llama.cpp 的最新二进制文件。你可能已经拥有的旧版本不一定能工作。
以下是当我尝试使用 b8429 版本运行它时发生的情况……

002742aksr5tmr6c7ls7ks.jpg

llama.cpp 版本 b8429
002742bkaha6eifysgas02.jpg

gemma4 模型架构未知

获取最新版本!

在撰写本文时,b8705 是最后一个版本。

  • Release b8705 · ggml-org/llama.cpp
我在 Windows 上,所以我下载了仅 CPU 的 X64 架构二进制文件:
  • llama-b8705-bin-win-cpu-x64.zip
将 ZIP 压缩包解压到同一目录(我的名为 GoogleAIstudio)。
在同一目录中打开终端并运行:
.\llama-server.exe -m .\gemma-4-E4B-it-Q4_K_S.gguf -c 64000 -ngl 0 -ctk q4_0 -ctv q4_0 --mmap --temp 1.0 --top-p 0.95 --top-k 64 --port 8888 --host 0.0.0.0
这里的关键参数是:

  • --port 8888 这是 API 的监听端口
  • --host 0.0.0.0 这里告诉将 API 暴露到网络。实际上你可以看到 Windows 正在询问你是否允许 llama-server.exe 访问网络(点击允许)

002743hj00z806gz6690ji.jpg

你需要知道旧电脑上的 IP 地址
就像我在上面小视频中所做的那样,打开一个新终端并运行此命令:
ipconfig
你将获得有关 PC 上所有网络适配器的信息,类似这样
无线局域网适配器 Wi-Fi 2:连接特定的 DNS 后缀 . : nexxtIPv6 地址. . . . . . . . . . . : 2001:b07:6440:da7b:3542:8fe1:62f7:1c9临时 IPv6 地址. . . . . . : 2001:b07:6440:da7b:205b:32ec:4099:deb3临时 IPv6 地址. . . . . . : 2001:b07:6440:da7b:4d8b:a209:4120:d0b5本地链接 IPv6 地址 . . . . . : fe80::eec7:e9e9:80cf:a71d%5IPv4 地址. . . . . . . . . . . : 192.168.1.75子网掩码 . . . . . . . . . . . : 255.255.255.0默认网关 . . . . . . . . . : fe80::5a76:acff:fe04:9220%5192.168.1.254
我的 miniPC IP 地址是标记为"IPv4 地址"的那个:192.168.1.75。这是网络上 llama-server 的地址,API 暴露在 8888 端口……
http://192.168.1.75:88885、测试本地网络模型 —— 交互方式
我创建了一个小 CLI 应用程序,让你立即了解这些模型有多好。另外,llama-cpp 的内置 Web 聊天已经可用。
你甚至可以从网络上的另一台计算机运行它(只需在浏览器中输入 IP:端口,在我的情况下是 http://192.168.1.75:8888)
对于 CLI 应用程序,我们需要一些库,最好全局安装。
打开终端并运行:
pip install openai rich
这个 CLI 应用程序能够从远程 llama-server 流式传输结果,并在终端中以 Markdown 格式渲染推理过程和最终输出。
5.1 导入
我们需要 rich 来在终端中渲染 Markdown,以及 openai 库来处理 chat.completion 的 API 调用。
import sysimport timefrom openai import OpenAIfrom rich.console import Consolefrom rich.markdown import Markdownfrom rich.live import Livefrom rich.panel import Panelfrom rich.table import Table# 初始化 Rich 控制台console = Console()client = OpenAI(    base_url="http://192.168.1.75:8888/v1", #根据你的 IP 调整    api_key="sk-no-key-required")
请注意,base_url 必须根据你的网络设置和上一步发现的 IP 地址。
5.2 用户输入函数
我想允许在终端中进行长文本复制/粘贴,所以我创建了一个函数来支持多行输入。输入仅在最后按 Ctrl+Z 和 Enter(在 Windows 上)或 Linux/mac 上的 Ctrl+D 后才被接受。
def get_multiline_input():    console.print("\n[bold cyan]User[/bold cyan] [dim](Ctrl+D/Z 发送, 'exit' 退出):[/dim]")    contents = []    try:        while True:            line = sys.stdin.readline()            if not line:                break            contents.append(line)    except EOFError:        pass    return "".join(contents).strip()5.3 响应函数
因为我们使用流式选项发送 API 调用,所以我们将几乎立即开始打印响应,保持一个小缓冲区以在终端中渲染 Markdown:
def chat():    messages = [        {"role": "system", "content": "你是一个有用的助手。使用 Markdown 进行格式化。"}    ]    console.print(Panel.fit("[bold reverse] 本地大语言模型聊天 [/bold reverse]\n连接到 192.168.1.75:8888", border_style="green"))    # 这里是主循环    while True:        user_text = get_multiline_input()        if user_text.lower() in ['exit', 'quit']:            console.print("[yellow]正在关闭会话...[/yellow]")            break        if not user_text:            continue        messages.append({"role": "user", "content": user_text})        # 启动 KPI 计时器        try:            start_time = time.time()            ttft_time = None            response = client.chat.completions.create(                model="gemma",                messages=messages,                temperature=1.0,                stream=True            )            console.print("\n[bold magenta]助手:[/bold magenta]")            # 我使用 rich.live 来渲染控制台            full_response = ""            with Live(console=console, refresh_per_second=10, vertical_overflow="visible") as live:                for chunk in response:                    # 捕获首 token 时间                    if ttft_time is None:                        ttft_time = time.time() - start_time                    content = chunk.choices[0].delta.content                    if content:                        full_response += content                        live.update(Markdown(full_response))            total_time = time.time() - start_time            # 在小表格中显示性能指标            stats_table = Table(show_header=False, box=None, padding=(0, 2))            stats_table.add_row(                f"[dim]TTFT: {ttft_time:.2f}s[/dim]",                f"[dim]总计: {total_time:.2f}s[/dim]",                f"[dim]速度: {len(full_response.split()) / total_time:.1f} 词/秒[/dim]"            )            console.print(stats_table)            messages.append({"role": "assistant", "content": full_response})        except Exception as e:            console.print(f"\n[bold red]错误:[/bold red] {e}")
最后我们调用 Python 应用程序:
if __name__ == "__main__":    chat()
我的文件名为 ATEST_remoteGemma4.py。要使用 Python 应用程序,请从终端运行:
python .\ATEST_remoteGemma4.py
这就是将要发生的事情……
002744q0t95fk63yyluy5k.jpg

你也可以在我的 GitHub 仓库中找到整个代码。
6、在Perplexica中使用它
你可以在 CLI 应用程序中调用它,或者轻松将其连接到 LMStudio,甚至 Opencode(你的本地 AI 智能体堆栈)。
但今天我将向你展示如何将其与 Perplexica 一起使用,这是著名的 Perplexity 的本地版本。
当你的 vane/Perplexica 已经在运行(对我来说在 Docker 容器中),启动浏览器并点击  设置图标:
002745itbatbbuv2uwtpbv.jpg

设置 > 模型 > 添加连接
现在我们想要 Gemini 连接(也适用于 GoogleAIstudio API),使用我们 5 分钟前创建的 API 密钥。
002746qpbakd75y25w6s55.jpg

002747ignimbglmmobmemn.jpg

002747sy5ddeukkkzladde.jpg

你会看到 Perplexica 已经扫描了所有可用模型:我高亮显示了 Gemma4 的模型。
记住检查哪些模型有免费层!!
目前,我只能看到 Gemma4 是免费的。
返回 Perplexica 主页,将模型切换到我们刚刚配置的新连接中的模型,然后运行你的查询
002749btcezsxe7i2j2i0a.jpg

7、为什么 Gemma 4 是游戏规则改变者
在我们结束之前,让我们看看从 Gemma 2 到 Gemma 4 的跳跃对"显卡穷人"来说为什么重要。
  • 系统提示革命:在以前的版本中,你必须将指令"黑客攻击"到用户消息中。Gemma 4 的原生系统角色支持意味着模型实际上保持角色并更好地遵循约束,即使是小尺寸。
  • 可呼吸的上下文:从旧的小型模型的狭窄 8K 上下文移动到 E2B/E4B 系列的128K改变了一切。你现在可以将整个技术文档 PDF 输入到 4 线程的 mini-PC 并获得有意义的答案。
  • "思考"优势:新的推理模式适用于所有模型。即使是边缘模型现在也可以"暂停"并规划,这大大减少了复杂任务(如编码或逻辑谜题)期间的幻觉。

您需要登录后才可以回帖 登录 | 立即注册
热门 WordPress 重定向插件暗藏休眠后门多年
热门 WordPress 重定向插件暗藏休眠后门多年
“快速页面 / 文章重定向”(Quick Page/Post Redirect)插件安装量超 7 万,5 年前被植入后门,可向用户网
官方 SAP npm 软件包遭入侵,用于窃取凭证
官方 SAP npm 软件包遭入侵,用于窃取凭证
多个官方 SAP npm 软件包疑似遭 TeamPCP 供应链攻击,被入侵后用于窃取开发者系统中的凭证和身份验证令牌。
开源电子病历软件 OpenEMR 发现 38 个漏洞
开源电子病历软件 OpenEMR 发现 38 个漏洞
应用安全公司 Aisle 在开源电子病历平台 OpenEMR 中发现了数十个漏洞,其中包括一些可被利用来窃取敏感患者
数百面向互联网的 VNC 服务器暴露 ICS/OT
数百面向互联网的 VNC 服务器暴露 ICS/OT
Forescout 的研究显示,数百万远程访问的 RDP 和 VNC 服务器暴露在互联网上,其中数百台可能提供对工业控制
朝鲜新一轮攻击:利用 AI 植入 npm 恶意软件、虚假公司和远程访问木马 ...
朝鲜新一轮攻击:利用 AI 植入 npm 恶意软件、虚假公司和远程访问木马 ...
网络安全研究人员在一个 npm 软件包中发现了恶意代码,该恶意软件包作为依赖项被引入到由 Anthropic 公司的
cPanel 与 WHM 紧急更新修复关键认证绕过漏洞
cPanel 与 WHM 紧急更新修复关键认证绕过漏洞
一个严重漏洞影响了除最新版本之外的所有 cPanel 及 WebHost Manager(WHM)控制面板版本,该漏洞可被利用
Robinhood 账户创建漏洞遭利用,被用于发送网络钓鱼邮件
Robinhood 账户创建漏洞遭利用,被用于发送网络钓鱼邮件
在线交易平台罗宾汉(Robinhood)的账户创建流程被威胁行为者利用,他们将网络钓鱼信息注入合法邮件,诱使
ShinyHunters 宣称盗走超 900 万条记录,Medtronic 随后证实安全事件 ...
ShinyHunters 宣称盗走超 900 万条记录,Medtronic 随后证实安全事件 ...
在黑客组织 ShinyHunters 宣称窃取了超 900 万条记录后,美敦力(Medtronic)证实其公司 IT 系统遭遇了网络
2026年4月全球和全国数据库系统最新排行榜
一、全球最新使用排名(2026 年 4 月)1. DBEngines 流行度(综合市场份额) [*]Oracl
Zed正式发布1.0版本:新增DeepSeek-V4支持
开源代码编辑器 Zed 日前正式发布 1.0 版本。开发团队表示,这并不意味着产品已经“完
新加坡国立大学研究人员发现关键蛋白或可逆
美国《科技日报》4月21日文章,原题:科学家发现一种可能有助于逆转脱发的“保护者”
Hermes WebUI可视化面板,5分钟安装,彻底
Hermes可视化WebUI · 告别命令行5分钟装好|浏览器管理AI|全功能面板亮点:一键安装
热门 WordPress 重定向插件暗藏休眠后门多
“快速页面 / 文章重定向”(Quick Page/Post Redirect)插件安装量超 7 万,5 年前被
官方 SAP npm 软件包遭入侵,用于窃取凭证
多个官方 SAP npm 软件包疑似遭 TeamPCP 供应链攻击,被入侵后用于窃取开发者系统中的
开源电子病历软件 OpenEMR 发现 38 个漏洞
应用安全公司 Aisle 在开源电子病历平台 OpenEMR 中发现了数十个漏洞,其中包括一些可
数百面向互联网的 VNC 服务器暴露 ICS/OT
Forescout 的研究显示,数百万远程访问的 RDP 和 VNC 服务器暴露在互联网上,其中数
朝鲜新一轮攻击:利用 AI 植入 npm 恶意软
网络安全研究人员在一个 npm 软件包中发现了恶意代码,该恶意软件包作为依赖项被引入
cPanel 与 WHM 紧急更新修复关键认证绕过漏
一个严重漏洞影响了除最新版本之外的所有 cPanel 及 WebHost Manager(WHM)控制面板