ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

如何快速上手d1a-e2b-it-qat-4bit:3步完成安装并跑通第一个决策请求(完整教程)

如何快速上手d1a-e2b-it-qat-4bit:3步完成安装并跑通第一个决策请求(完整教程)

如何快速上手d1a-e2b-it-qat-4bit:3步完成安装并跑通第一个决策请求(完整教程)

【免费下载链接】d1a-e2b-it-qat-4bit项目地址: https://ai.gitcode.com/hf_mirrors/mlx-community/d1a-e2b-it-qat-4bit

d1a-e2b-it-qat-4bit 是一款运行在Apple Silicon上的4-bit 量化 AI 决策模型:给它一段情境描述和几个问题,它只需一次前向传播,就会为每个选项返回校准后的概率,而不是生成一段文本。它基于MLX框架与 Gemma 4 E2B-it QAT 权重,支持决策、聊天以及照片/语音/视频多模态输入。本文带你3 步完成安装,并跑通第一个决策请求。

一、它是什么?为什么说"决策模型"很不一样 🧠

普通大模型靠"生成文字"回答问题,而 d1a-e2b-it-qat-4bit 的工作方式是:

输入 = 一段状态描述(state)+ 若干问题(questions,每个问题是 是/否、多选 或 打分) 输出 = 每个选项一个校准概率,一次前向传播完成,答案必然落在有效选项内

这意味着它的输出可解释、可比较、可接入自动化流程(比如给 PR 自动打标签、给工单做路由分派)。

项目说明
主干模型Gemma 4 E2B-it QAT(276 个 int4 线性层与 Google 官方 QAT 权重逐位一致)
量化4-bit(group size 32),嵌入层 4-bit(group size 64),反量化误差 0.0
参数量 / 体积约 46 亿参数,主模型约2.7 GB
决策适配器LoRA(rank 16,约 97 MB),未合并,可随时关闭
多模态编码器视觉 + 音频编码器(bf16,约 1.0 GB),在 media/ 目录
校准温度1.55(拟合得到,ECE 从 0.064 降到 0.018)
授权Apache-2.0

细节可见仓库说明 README.md。

二、仓库结构速览:先认清每个文件 📁

文件 / 目录作用
model.safetensors、model.safetensors.index.json4-bit 主干权重(2.7 GB,约 46 亿参数)
adapter/决策用 LoRA 适配器;adapter/adapter_config.json 中 rank 16、alpha 32
head.safetensors指针头(pointer head),用于输出选项概率
d1a_config.json决策配置:校准温度、leading tokens、量化参数等
config.json模型架构与量化配置(Gemma4 文本 + 视觉 + 音频)
generation_config.json聊天模式的采样参数(temperature 1.0、top_k 64、top_p 0.95)
media/视觉/音频编码器及配套处理器配置
tokenizer.json、chat_template.jinja分词器与聊天模板

💡 适配器是"未合并"的:关掉适配器,这个权重就是 Gemma 4 E2B-it QAT 本身,也能正常聊天——一份权重,两种用法。

三、3 步完成安装(macOS / Apple Silicon)🍎

第 1 步:安装 d1a 服务包

d1a 是承载该模型的推理框架,需要安装带serve、mlx、media三组扩展的版本(需支持其 issue #261 之后的开发版):

pip install "d1a[serve,mlx,media]"

第 2 步:获取模型文件(二选一)

  • 方式 A(推荐):不手动下载,第 3 步用模型名mlx-community/d1a-e2b-it-qat-4bit让服务启动时自动拉取;
  • 方式 B:直接克隆仓库镜像,本地磁盘预留约4 GB(主模型 2.7 GB + 编码器 1.0 GB + 适配器 97 MB):
git clone https://gitcode.com/hf_mirrors/mlx-community/d1a-e2b-it-qat-4bit

第 3 步:启动本地推理服务

python -m d1a.serving.serve --run mlx-community/d1a-e2b-it-qat-4bit --port 8009

使用本地克隆时,把--run参数换成你的本地目录即可。服务默认监听localhost:8009,启动后提供三个端点:

端点用途
/v1/systemone决策请求(文本)
/v1/systemone/media多模态决策(照片/语音/视频)
/v1/chat/completions聊天(OpenAI 兼容格式,支持流式)

四、跑通第一个决策请求:/v1/systemone ✅

一个决策请求由两部分组成:state(发生了什么)和questions(每个问题给出类型与候选项)。用 README 里的官方示例:

curl -s localhost:8009/v1/systemone -H 'content-type: application/json' -d '{ "state": "Shoes arrived two weeks late and in the wrong size. Also I see two charges on my card.", "questions": {"team": {"type": "choice", "instructions": "Which team should handle this?", "criteria": {"returns": null, "shipping": null, "billing": null}}} }'

返回结果会给出每个选项的校准概率(官方示例在 Apple M1 Max 上约109 ms返回)。你也可以在 Python 进程内直接调用:

from d1a import D1A model = D1A.load("mlx-community/d1a-e2b-it-qat-4bit") answer = model.decide(state, questions)

五、进阶玩法:多模态决策与聊天 📸💬

照片 / 语音 / 视频决策

同一个请求加上media字段,发到/v1/systemone/media:

curl -s localhost:8009/v1/systemone/media -H 'content-type: application/json' -d '{ "media": {"type": "image", "data": "'"$(base64 -i parcel.jpg)"'"}, "questions": {"damaged": {"type": "noul", "instructions": "Is the parcel damaged?"}} }'

支持的多模态类型:

type格式限制
imageJPEG / PNG / WebP—
audioWAV / FLAC / OGG≤ 30 秒
videoMP4 / MOV / WebM≤ 32 MB,均匀采样 16 帧(不用音轨)

聊天模式

聊天时会自动关闭决策适配器,此时它就是 Gemma 4 E2B-it QAT 本身,走标准 OpenAI 格式:

curl -s localhost:8009/v1/chat/completions -H 'content-type: application/json' -d '{ "messages": [{"role": "user", "content": "Name three things to check when a parcel arrives damaged."}] }'

采样参数见 generation_config.json。

六、关键配置解读:d1a_config.json 里的几个重点 ⚙️

打开 d1a_config.json 可以看到几个值得留意的字段:

  • temperature: 1.55——在 3178 条校准数据上拟合的校准温度,让输出的概率"说真话"(交叉验证 ECE 从 0.064 降到 0.018);
  • leading_ids: [2]——模型训练时每条记录以 token 2(<bos>)开头,d1a 框架会自动补上;如果你自己编码请求,必须手动前置它;
  • adapter: "unmerged"——适配器未合并,这也是它能兼顾决策与聊天的原因;
  • quantization——4-bit、affine 模式,线性层 group 32,嵌入层 group 64,与 config.json 中的quantization_config一一对应。

七、上手限制与避坑指南 ⚠️

  • 问题必须用英文;文档内容可以是英文或日文;
  • 该版本在未训练过的任务类型(transfer-v4)上比 v0.6 低 5.2 分。如果你的业务远离 D1A 自身任务(PR 标签、路由、难决策),建议锁定JohnP1/d1a-e2b-it@v0.6;
  • 媒体能力目前仅在 14 个演示请求上做过零样本验证,正式使用前建议自行回归测试;
  • 项目仍标记为实验性,接入 Agent 工具调用时需经过 D1A 的 fail-safe 阈值(d1a.agents.presets.advise)。

结语

到这里,你已经在自己的 Mac 上跑通了一个4-bit 量化决策模型:一次前向传播、每个选项一个可信概率、还能看照片听语音。d1a-e2b-it-qat-4bit 相比上一代快了约 11%,体积只有 2.7 GB——想让大模型"做判断"而不只是"写答案",这就是一个很好的起点。下一步可以试试把/v1/systemone接入你的工单系统或 PR 流水线,体验校准概率带来的确定性。

【免费下载链接】d1a-e2b-it-qat-4bit项目地址: https://ai.gitcode.com/hf_mirrors/mlx-community/d1a-e2b-it-qat-4bit

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进