Scripts2026年5月8日·1 分钟阅读

Grok 2 Vision — Image Understanding API for Apps

Grok-2 Vision handles images via OpenAI-compat chat.completions. Pass URL or base64. UI critique, screenshot QA, OCR, chart reading.

Agent 就绪

这个资产可以被 Agent 直接读取和安装

TokRepo 同时提供通用 CLI 命令、安装契约、metadata JSON、按适配器生成的安装计划和原始内容链接,方便 Agent 判断适配度、风险和下一步动作。

Stage only · 17/100Stage only
Agent 入口
任意 MCP/CLI Agent
类型
Skill
安装
Stage only
信任
信任等级:New
入口
Asset
通用 CLI 安装命令
npx tokrepo install 3ac4e1a5-2129-498e-920b-c46a9c17839c

简介

Grok-2 Vision(模型 grok-2-vision-latest)按标准 OpenAI chat.completions message 格式吃图片 —— image_url 传公网 URL 或 base64 data URI。输出是基于图片的文本推理。适合 UI 截图评审、图表和仪表盘读取、带语义理解的文档 OCR、内容审核、无障碍 alt 文本生成。兼容 openai-python、openai-node、任何 OpenAI 兼容客户端。装机时间 2 分钟。


公网 URL

from openai import OpenAI
client = OpenAI(base_url="https://api.x.ai/v1", api_key=os.environ["XAI_API_KEY"])

resp = client.chat.completions.create(
    model="grok-2-vision-latest",
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "评审这个仪表盘。讲讲间距、对比度、信息层级。"},
            {"type": "image_url", "image_url": {"url": "https://example.com/dashboard.png"}},
        ],
    }],
)
print(resp.choices[0].message.content)

Base64(本地文件 / 私有 URL)

import base64, mimetypes

def to_data_uri(path: str) -> str:
    mime = mimetypes.guess_type(path)[0] or "image/png"
    b64 = base64.b64encode(open(path, "rb").read()).decode()
    return f"data:{mime};base64,{b64}"

resp = client.chat.completions.create(
    model="grok-2-vision-latest",
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "把行项目抽成 JSON:description / qty / unit_price / total"},
            {"type": "image_url", "image_url": {"url": to_data_uri("invoice.png")}},
        ],
    }],
    response_format={"type": "json_object"},
)

多图对比

content = [{"type": "text", "text": "找出这两版 UI mockup 的 3 处差别。"}]
for url in ["https://example.com/v1.png", "https://example.com/v2.png"]:
    content.append({"type": "image_url", "image_url": {"url": url}})

resp = client.chat.completions.create(
    model="grok-2-vision-latest",
    messages=[{"role": "user", "content": content}],
)

限制

限制
单条消息最大图数 10
单图最大 20 MB
支持格式 PNG / JPEG / WebP / 非动图 GIF
上下文窗口 32,768 tokens
最大长边 8,192 px(服务端 resize)

FAQ

Q: Grok-2 Vision vs GPT-4o 视觉 vs Claude 3.5 Sonnet 视觉? A: 大部分基准上不分上下。Grok-2 端到端最快,最便宜 ~$2/M 输入;GPT-4o 精细 OCR 最强;Claude 长指令结构化抽取最强。按主任务选。

Q: 能给 bounding box 吗? A: 不能 —— Grok-2 Vision 返回文字描述,不是坐标。要带 bbox 的物体检测用 Gemini 2.5(detect_objects 工具)或 YOLO。组合:YOLO 出框、Grok 对裁剪区域做语义解释。

Q: 能在图片上微调吗? A: 还不能 —— 截至 2026 年 5 月 xAI 没开图像微调。变通:在 system prompt 里嵌例子(用图像类型的文本描述做 few-shot),或在文本输出上跑下游分类器。


🙏

来源与感谢

Built by xAI. Vision docs at docs.x.ai/docs/guides/image-understanding.

Public SDK: xai-org

讨论

登录后参与讨论。
还没有评论,来写第一条吧。

相关资产