Perceptron Mk1.5 上手指南:给机器人用的多模态感知模型,$0.15/M 在 OpenRouter 跑通视频追踪与空间标注

9 月 25 日,前 Meta FAIR 团队创立的 Perceptron 把 Mk1.5 放上了 OpenRouter。这不是一个聊天模型,而是一个给无人机、四足机器人、智能眼镜和手机用的「感知层」:输入文字、图片、视频、音频,输出除了自然语言,还能是机器直接能用的点、框、多边形、片段和时序轨迹。

我把 OpenRouter 模型页、Perceptron 官方文档和几份第三方技术分析对照读了一遍。下面把它的核心用法、定价陷阱和三个真实用例整理出来,方便你拿到 Key 后直接复制运行。

一、Mk1.5 与普通视觉语言模型的区别

普通 VLM 问你「图里有没有叉车」,它回答「有」。这个答案对人够用,对机器人没用——机器人需要知道叉车在哪个像素位置、接下来往哪移动、要不要避让。

Mk1.5 的设计目标就是解决这个问题。它支持五种结构化输出:

  • point:一个像素坐标
  • box:矩形框(x1, y1, x2, y2)
  • polygon:任意多边形
  • clip:视频里的一个时间段
  • track:带时间戳的连续空间观测,不是逐帧独立检测

换句话说,普通模型给你一段描述,Mk1.5 给你控制器能消费的 JSON。这和 9 月 16 日聊过的 Gemini 3.8 Live 形成互补:Gemini 适合「边说话边后台执行工具」,Mk1.5 适合「看画面并给出精确几何位置」。

二、规格与定价:便宜但有几个限制

OpenRouter 上的公开参数如下:

项目 数值
上下文窗口 36,864 tokens
最大输出 8,192 tokens
输入 文字、图片、视频、音频(WAV/MP3/FLAC)
定价 $0.15/M input,$1.50/M output
Cache $0.0375/M input(标准价的 1/4)
OpenRouter P50 延迟 0.45s
OpenRouter 吞吐 124 tok/s

注意:36K 的上下文窗口不是给你塞两小时视频用的。它的定位是「单个感知任务」,比如一帧画面加一段简短指令。如果你拿它做长视频逐帧分析,会很快撞墙。长上下文需求应该回退到 Qwen 3.8 Max 或 Kimi K3 这类长上下文模型。

三、5 分钟跑通:用 OpenRouter 调第一张图

你不需要机器人。只要一个 OpenRouter API Key 和一段 Python,就能在普通图片上测试空间标注。

环境:Python 3.10+,安装 openai 包即可:

Bash
pip install -U openai

最小可运行示例(单图 box 检测):

Python
import os
from openai import OpenAI

client = OpenAI(
    base_url="https://openrouter.ai/api/v1",
    api_key=os.environ.get("OPENROUTER_API_KEY"),
)

response = client.chat.completions.create(
    model="perceptron/perceptron-mk1.5",
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "image_url",
                    "image_url": {
                        "url": "https://example.com/warehouse.jpg"
                    },
                },
                {
                    "type": "text",
                    "text": (
                        "Find all forklifts in this image. "
                        "Return each forklift as a bounding box with normalized coordinates."
                    ),
                },
            ],
        }
    ],
    extra_body={
        "annotation_format": "box",
        "reasoning_effort": "medium",
    },
)

print(response.choices[0].message.content)

关键参数说明:

  • annotation_format:只有显式设为 point、box、polygon 或 clip 时,模型才会在文字里内联输出结构化几何。不设这个参数,它只返回普通文字描述——这是最容易漏掉的开关。
  • reasoning_effort:Mk1.5 把旧版的 vision_config.enable_thinking 换成了这个字段,默认是 high。简单感知任务用 medium 通常就够了,档位越高 token 消耗越大,具体差多少建议用你自己的图片跑一轮再定。

四、视频追踪:让模型返回带时间戳的轨迹

这是 Mk1.5 最有区分度的能力。普通模型对视频做目标检测,通常是逐帧输出框,然后你在外面再做一个后处理(re-ID、卡尔曼滤波)把帧串成轨迹。Mk1.5 的 track 输出直接把「同一对象在不同时间的位置」打包返回。

Python
response = client.chat.completions.create(
    model="perceptron/perceptron-mk1.5",
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "video_url",
                    "video_url": {
                        "url": "https://example.com/assembly-line.mp4"
                    },
                },
                {
                    "type": "text",
                    "text": (
                        "Track the worker's right hand from start to end. "
                        "Return timestamped bounding boxes."
                    ),
                },
            ],
        }
    ],
    extra_body={
        "annotation_format": "box",
        "reasoning_effort": "high",
    },
)

按官方文档描述,track 条目同时携带空间观测和所属时间戳,返回的是一个随时间变化的位置序列,而不是每帧独立检测。这对库存盘点、体育分析、产线质检等场景很有价值——你少写一层 re-ID 逻辑。遮挡后 ID 能保持多久、时间戳精度如何,建议先用一段你业务里的真实短视频跑样本验证,再决定要不要接入生产流水线。

五、两个容易踩的坑

坑 1:默认 reasoning_effort=high 会推高账单

Mk1.5 默认开启最高档推理。如果你只是做简单的「图里有没有某个物体」,记得显式改成 medium 或 low,否则同样的请求 token 消耗会明显增加。这一条对所有按量计费的高频调用场景都适用——感知类负载的特点恰恰是调用次数多、单次价值低,账单对档位特别敏感。

坑 2:音频分析不会自动开启

Mk1.5 虽然支持音频输入,但视频音轨分析是 opt-in 的。如果你传了一段带声音的视频,但没开对应开关,模型会「看」但不会「听」。需要单独设置音频分析参数(具体字段名请参考 Perceptron 官方文档,不同 SDK 版本可能有差异)。

六、什么时候不建议用 Mk1.5

Mk1.5 不是万能模型,下面三种情况我会直接绕开它:

  1. 长文档理解:36K 上下文放不下长 PDF 或代码库,请用长上下文文本模型。
  2. 需要复杂推理+规划:Mk1.5 是感知层,不是决策层。如果需要「看到叉车后规划搬运路径」,应该把它和 OpenAI Agents API 或 Gemini Antigravity 这类编排层组合使用。
  3. 对延迟极度敏感的边缘场景:OpenRouter 上 P50 延迟 0.45s,对无人机实时避障可能还是太慢。本地部署小模型或专用 CV 方案仍然是更稳的选择。

七、一个可落地的组合架构

一个典型的「物理 Agent」流水线可以拆成两层:

  • 感知层(Mk1.5):接收摄像头/麦克风输入,输出「有什么、在哪、怎么动」。
  • 决策层(Agent API / 本地 LLM):根据感知结果做计划、调工具、下发控制指令。

这种分层思路也适用于 本地部署大模型 的场景:把 Mk1.5 放在云端做重感知,本地小模型做轻决策,兼顾成本与隐私。

八、成本测算:跑 1000 张图要多少钱

按 OpenRouter 定价粗算:

  • 假设单图输入约 1000 tokens(约 1000×750 分辨率),输出约 200 tokens。
  • 单张成本 ≈ $0.15/1M × 1000 + $1.50/1M × 200 = $0.00015 + $0.0003 = $0.00045。
  • 1000 张图 ≈ $0.45。

如果开启 cache 且输入高度重复(比如同一张参考图反复对比),成本还能再降。注意这是按定价的纸面测算,真实项目的 token 数取决于图片分辨率和输出长度,建议先用一小批真实样本试跑一轮,再按实际账单推算全量成本。

参考与外链

推荐阅读

  • Google Gemini Antigravity 上手指南:一行代码启动带 Linux Sandbox 的托管 Agent,代码审计与数据处理实战

    Google Antigravity 成为 Gemini 托管 Agent 默认 harness:一行代码启动 Linux sandbox,支持文件编辑、后台运行与安全凭证管理。附 Python 实战…

  • 小米 MiMo-V2.6 开源上手:AA 46.3 分登顶的万亿级全模态模型,API 调用、本地部署与四款模型怎么选

    小米 9 月 22 日开源 MiMo-V2.6:Pro 以 AA 46.3 分登顶开源权重第一,全模态输入加 1M 上下文,价格不变。本文讲清四款模型怎么选、两条 API 路线怎么走、缓存命中后单任务…

  • Qwen-Image-2.1 上手:7B 开源模型原生透明图 + 10 张参考图,文生图与编辑终于合一

    Qwen-Image-2.1 开源上手:7B 视觉主干把文生图、图像编辑、原生 RGBA 透明图塞进同一个 checkpoint,最多支持 10 张参考图与圈选/涂抹/mask 局部编辑。这篇给出 D…

  • Jev 决策模型上手:不生成文字的 AI、输出还免费,上线 48 小时被开源圈复刻了 6 次

    TypeSafe AI 的 Jev 不生成任何文字,只返回带概率的结构化判断:输入 $0.042/百万 token、输出免费、P50 延迟 0.23 秒。本文讲清它与 LLM 的区别、OpenRout…