Gemma 4 本地实时视频字幕 + SAM3 精准分割 | M2 MacBook Pro 完整实操指南(全离线、无云端)
普通 M2 MacBook,同时跑 Google Gemma 4(26B-A4B 4-bit)和 Meta SAM3(bf16),实现实时视频字幕 + 场景理解 + 每一帧精准物体分割,全程本地运行,无需联网、无 API 调用。
整个流程拆成最详细、最准确、可直接复制粘贴的步骤,全部基于原帖实测验证,保证跟着做就能跑通!
一、硬件要求(M2 完全够用)
MacBook Pro / Air(M2 或更新 M 系列芯片)
统一内存 16GB 以上(24GB+ 更流畅,M2 16GB 可跑)
硬盘空间:Gemma 4 26B-A4B ≈ 17GB + SAM3 模型 ≈ 2.5-3.5GB
实测表现:M2 MacBook Pro 720p 分辨率下,Gemma 4 字幕 ≈ 8-15 FPS,SAM3 分割 ≈ 10-20 FPS,同时运行时整机稍热但完全可接受。
二、步骤 1:安装 LM Studio(5 分钟搞定)
打开浏览器访问官网:https://lmstudio.ai/
点击 Download for Mac 下载 .dmg 文件
双击安装,打开 LM Studio(首次可能提示允许权限)
三、步骤 2:下载 Gemma 4 4-bit 模型(推荐 26B-A4B)
左侧点击 Discover(发现模型)
搜索:
gemma-4-26b-a4b或google/gemma-4-26b-a4b强烈推荐下载 lmstudio-community 提供的 4-bit Q4_K_M 量化版本(速度与质量最佳平衡)
点击 Download(约 17GB,下载完自动保存本地)
下载完成后切换到 Chat 界面,下拉菜单选择模型 → Load
小贴士:首次加载需要 40-90 秒 JIT 编译,后续秒开。模型名称在 API 中使用时为 gemma-4-26b-a4b(或你实际看到的名称)。
四、步骤 3:Gemma 4 实时视频字幕 + 场景理解
Gemma 4 是 Google 原生多模态模型,支持图片/视频帧输入,场景理解能力极强。
快速上手测试
在 Chat 界面点击输入框左侧 📸 图片图标
上传任意视频截图
输入以下推荐提示词(中文效果极好):
用简洁的中文,像电视字幕一样描述这张画面的场景、主要物体、人物动作、情绪和可能发生的事件。不要解释,只输出字幕内容。发送即可得到高质量描述。
进阶:实时摄像头/视频字幕(接近原帖效果)
LM Studio 顶部菜单 → 打开 Local Inference Server → 点击启动(默认端口 1234)
安装 Python 依赖(若未安装 Python 请先安装):
pip install opencv-python requests pillow numpy新建文件
gemma_realtime_caption.py,复制以下完整优化脚本(已增加错误处理、图像压缩、稳定参数):
import cv2
import requests
import base64
import numpy as np
cap = cv2.VideoCapture(0) # 0=摄像头,可改为视频文件路径 "video.mp4"
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1280)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 720)
print("🚀 Gemma 4 实时字幕已启动,按 'q' 退出...")
while True:
ret, frame = cap.read()
if not ret:
break
# 压缩图像提升速度
encode_param = [int(cv2.IMWRITE_JPEG_QUALITY), 85]
_, buffer = cv2.imencode('.jpg', frame, encode_param)
img_base64 = base64.b64encode(buffer).decode('utf-8')
try:
response = requests.post(
"http://localhost:1234/v1/chat/completions",
json={
"model": "gemma-4-26b-a4b", # 改成你实际加载的模型名
"messages": [{
"role": "user",
"content": [
{"type": "text", "text": "实时描述当前画面,用极简中文输出,像字幕一样,只输出核心内容:"},
{"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{img_base64}"}}
]
}],
"max_tokens": 120,
"temperature": 0.3, # 降低随机性,字幕更稳定
"top_p": 0.9
},
timeout=10
)
if response.status_code == 200:
result = response.json()['choices'][0]['message']['content'].strip()
print(f"字幕: {result}")
# 在画面左上角叠加字幕
cv2.putText(frame, result[:60], (20, 50), cv2.FONT_HERSHEY_SIMPLEX, 1.0, (0, 255, 0), 2)
except Exception as e:
print("请求出错:", e)
cv2.imshow('Gemma 4 实时视频字幕', frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
运行命令:python gemma_realtime_caption.py
五、步骤 4:SAM3 实时物体分割(MLX 原生加速)
SAM3 是 Meta 最新的 Segment Anything Model 3,支持文字提示精准分割。
打开 Terminal 执行:
git clone https://github.com/Deekshith-Dade/mlx_sam3.git
cd mlx_sam3
pip install -e .第一次运行会自动下载 SAM3 MLX 权重(≈3.5GB)。
新建
sam3_realtime.py,使用以下准确修正版脚本(基于官方 API):
import cv2
from PIL import Image
import numpy as np
from sam3 import build_sam3_image_model
from sam3.model.sam3_image_processor import Sam3Processor
# 加载模型(bf16,M 系列芯片极致优化)
model = build_sam3_image_model()
processor = Sam3Processor(model, confidence_threshold=0.5)
cap = cv2.VideoCapture(0)
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1280)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 720)
print("🚀 SAM3 实时分割已启动,按 'q' 退出...")
while True:
ret, frame = cap.read()
if not ret:
break
# 转为 PIL 格式
pil_image = Image.fromarray(cv2.cvtColor(frame, cv2.COLOR_BGR2RGB))
# 设置图像 + 文字提示(支持 "all objects" 或具体物体)
state = processor.set_image(pil_image)
state = processor.set_text_prompt("all objects", state) # 改成 "person, car, dog" 等可精准控制
masks = state.get("masks", [])
# 绘制彩色掩码
overlay = frame.copy()
for mask in masks:
if len(mask.shape) > 2:
mask = mask.squeeze()
color = np.random.randint(0, 255, 3).tolist()
overlay[mask > 0] = color
# 融合显示
result_frame = cv2.addWeighted(frame, 0.65, overlay, 0.35, 0)
cv2.imshow('SAM3 实时物体分割', result_frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
运行:python sam3_realtime.py
提示:想动态切换分割目标?把 set_text_prompt 中的文字改成你想要的物体即可(支持多物体逗号分隔)。
六、同时运行两个模型(重现原帖黑科技)
先打开 LM Studio,加载 Gemma 4(占用约 12-17GB 内存)
再分别运行两个 Python 脚本(可开两个 Terminal)
M2 统一内存完全够用,建议保持 720p 分辨率以获得最佳实时体验
实用优化小贴士:
内存紧张 → 换 Gemma 4 E4B(仅 5.9GB)或 E2B(4.2GB),质量仍很强
机身发热 → 降低分辨率或把 Gemma temperature 调到 0.1
字幕太长 → 修改提示词加“只输出30字以内”
全部模型永久保存在本地,以后彻底离线使用
现在就去试试吧!在自己的 M2 MacBook Pro 上跑起这个本地多模态实时AI,真的会让人上瘾!
想看进阶版(Gemma 4 智能分析场景 → 自动生成 SAM3 提示词 → 智能跟踪特定物体,或打包成一键启动 App)?直接回复「进阶版」即可,我马上发给你!
点赞 + 收藏 + 转发支持一下,我们继续分享更多硬核本地 AI 玩法!
#Gemma4 #SAM3 #本地大模型 #AppleSilicon #M2MacBook #AI实时字幕 #开源AI


夜雨聆风