Gutsy Vibe 项目
# Gutsy:在普通 CPU 上跑的本地决策概率小模型 ## 项目简介 Gutsy 是一套开源的本地决策模型与推理服
Gutsy:在普通 CPU 上跑的本地决策概率小模型
项目简介
Gutsy 是一套开源的本地决策模型与推理服务,专门解决"给一个状态,判断各个选项各有多大可能"这类问题。你把一段文字或 JSON 描述的状态发进去,再提出是/否、单选、打分三种类型化问题,它会为每个选项返回一个带校准的概率值,而不是生成一大段自由文本。模型完全在本地 CPU 上运行,不联网、不产生按次调用成本,输出在同一机器与同一构建下完全可复现。API 遵循 Jev 风格的 Decisions 格式,已有客户端通常只需要改一个基础地址就能接入。
核心功能
- 概率输出而非文本输出:yes/no、choice、score 三类问题各返回概率分布,choice 与 score 还额外给出置信度、前两名差距以及"都不合适"的拒绝概率。
- 真正的校准:使用交叉熵与 Brier 分数等恰当评分规则在软标签上训练,并在留出集上做温度校正,缩放之前的验证集校准误差仅 0.022——模型说 0.8,实际就约等于八成把握。
- 本地与隐私:只依赖普通 CPU 推理,数据不出本机,适合处理订单、客户、内部工单这类不宜外传的信息。
- 状态缓存:同一状态只编码一次,后续针对该状态的追问只需支付自己那部分开销,重复请求命中缓存时几乎零成本。
- 选项顺序稳健:选项打乱后 96%~97% 的答案保持不变(BoolQ、SNLI 与开发集场景实测),避免"换个顺序答案就变"的脆弱性。
- 长选项列表:单次最多支持 255 个选项,超过 16 个时运行时会先做候选缩减,在 20~254 选项的测试集上缩减准确率约 99%。
- 明确的"都不合适":单选与打分问题会给出 reject 概率,避免在状态信息不足时硬选一个。
- 多风格接口:
POST /v1/systemone(TypeSafe 风格,兼容 JevBench 的 typesafe 适配器)、POST /api/alpha/decisions与POST /v1/decisions(OpenRouter Decisions 风格)、GET /health健康检查。
技术实现
Gutsy 的主力模型 gutsy-0.8b v0.4 是对 Qwen3.5-0.8B 的微调,训练目标不是语言建模,而是把"状态 + 类型化问题"映射成选项上的概率分布:数据集用软标签配合恰当评分规则(交叉熵 + Brier)监督,让模型学到的数值本身就贴近真实频率,再在留出集上做温度校正,把校准误差压到 0.022。模型导出为 GGUF 格式并提供两种量化:775 MB 的 Q8_0 作为参考默认版本,505 MB 的 Q4_K_M 快约 25%~30%,评测面板分数持平,只在 JevBench 上低几个点。推理侧不依赖 GPU,而是用 llama.cpp 系(llama-cpp-python ≥ 0.3.35)在普通 CPU 上服务,因此断网环境、内网服务器、开发机都能跑。为控制延迟,运行时会把状态文本先编码成 KV 缓存并复用,后续同状态问题只消耗各自 token;当选项数量很多时,则在本地先做候选缩减再作答,兼顾规模与准确率。确定性来自固定权重、固定构建与无采样的打分路径——相同请求在同一机器上总是返回相同概率。配套的 gutsy-inference 包负责注册模型文件(Q8_0 与 Q4_K_M 两条记录可并存)、校验缓存、启动 HTTP 服务与健康检查,模型权重与校准文件托管在 Hugging Face 的 kouhxp/gutsy 仓库,整套代码以 Apache 2.0 协议开源。
快速上手
- 克隆仓库并安装推理包:
git clone https://github.com/kouhxp/gutsy,随后pip install -e gutsy/gutsy-inference(需要 llama-cpp-python ≥ 0.3.35),并pip install -U huggingface_hub。 - 下载模型权重:执行
hf download kouhxp/gutsy --include "gutsy-0.8b-v04*" --local-dir gutsy/gutsy-inference/models,把 Q8_0(或更小的 Q4_K_M)与对应校准文件拉到本地。 - 配置并自检:进入 gutsy-inference 目录,把 models.example.json 复制为 models.json,运行
gutsy-inference check,确认两个模型都提示缓存正常。 - 启动服务:
gutsy-inference serve,默认监听 http://127.0.0.1:8765。 - 发起第一次决策请求:向
/v1/systemone提交状态与类型化问题(例如一段客服工单 + 退款/换货/升级三个选项),即可拿到每个选项的概率、置信度与拒绝概率;要上生产就用自己标注的数据设定阈值,再决定是否放行高风险动作。
适用人群
需要在本地或内网做风险评分、工单分流、审批预判的产品与运营团队;关注模型校准与可复现性的算法工程师;要求数据不出机的金融、医疗、政企场景开发者;以及想给 AI 智能体配一个"便宜、快速、可解释的决策打分器",又不想为每次判断支付大模型调用费用的开发者。
评论与建议
登录 后参与评论或提建议