一人工程 · solus opus

← 全部作品

essay一人工程采样OpenAIMirostat

6 种采样 vs 1 种温度

simedw 新版本同时上架 6 种采样:top-k / top-p / min-p / XTC / top-h / Mirostat v2。OpenAI 一次只给 1 种温度。一人工程的细微工程——OpenAI 不敢给的,simedw 全给。

6 种采样 vs 1 种温度

simedw 新版本 Apple 审核中: 「top-k / top-p / min-p / XTC / top-h / Mirostat v2 采样切换」 一次 6 种采样策略全部开放给用户。

OpenAI 的 API 给什么:

  • temperature
  • top_p(可选)
  • 没了。

Anthropic 的 API 给什么:

  • temperature
  • top_k(可选)
  • top_p(可选)
  • 没了。

simedw 的 iPhone app 给什么:

  • top-k
  • top-p
  • min-p
  • XTC
  • top-h
  • Mirostat v2

一次 6 种。

6 种是什么

每种都是控制「下一个 note 选谁」的算法:

  • top-k:只保留概率最高的 k 个候选,从里面采样
  • top-p (nucleus):保留累计概率 ≥ p 的最小集合
  • min-p:保留概率 ≥ min-p × 最大概率的候选
  • XTC (eXclude Top Choices):剔除最可能的几个,强制模型别总选同一答案
  • top-h:按熵阈值硬截断
  • Mirostat v2:自适应调整采样温度,让 surprisal 保持目标值

每种都解决「不想让模型重复 + 想让模型有变化 + 想让模型不胡说」的问题。 但思路不同。

simedw 为什么 6 种全给

simedw 不是「做 6 个开关 UI」炫技。

是他实验过:

  • 14 次实验
  • 多次跑不同采样
  • 自己听了 30 分钟
  • 自己给 700 个偏好打分

最后发现:

  • 不同曲子适合不同采样
  • 慢曲子适合 top-h
  • 快曲子适合 top-p
  • 复调曲子适合 XTC
  • 重复曲子适合 Mirostat v2

如果只给 1 种采样,simedw 就只能 service 一种曲风。 6 种全给 = service 6 种曲风。

OpenAI 为什么只给 1 种

OpenAI 不给 6 种采样不是因为简单。

是因为「API 兼容性」:

  • 几百万开发者用 OpenAI API
  • 每个参数变更都是 breaking change
  • 1 个参数错 = 1 个产品错
  • 1 个产品错 = 1 个公司损失

OpenAI 给 1 种采样:

  • 易于文档化
  • 易于教学
  • 易于客户支持
  • 易于计费

simedw 给 6 种采样:

  • 不需要文档化
  • 不需要教学
  • 不需要客户支持
  • 不需要计费(一次性买断)

trade-off:

  • OpenAI:易用 + 通用
  • simedw:复杂 + 专精

一人工程 vs 大公司 API

大公司 API:

  • 参数少
  • 兼容性好
  • 易学易用
  • 不能实验

一人工程 app:

  • 参数多
  • 兼容性零
  • 难学难用
  • 可以实验

两个极端。

OpenAI 想「所有人都能用」。 simedw 想「想实验的人能用」。

一人工程的态度

simedw 给 6 种采样不是「我懂采样」。

是「我做了 14 次实验,每次想换一种」。

实验需要切换采样。 切换采样需要 6 种参数。 6 种参数全在 iPhone app 上。

这是「一人工程的实验性产品」:

  • 用户能在 app 里复现 simedw 的实验
  • 用户能玩 simedw 玩过的东西
  • 用户能自己找出「喜欢哪种采样」

OpenAI 不允许这种实验。 OpenAI 给固定温度 + 固定 top_p。 用户只能调两个滑块。

一人工程的「全给」哲学

simedw 不藏:

  • 训练数字全公开
  • 实验失败全公开
  • 6 种采样全公开
  • 模型架构全公开(GitHub README)

OpenAI 藏:

  • 训练数据不公开
  • 实验失败不公开
  • 采样 API 简化
  • 模型架构不公开(GPT-4 架构不知)

两种哲学。

simedw 的哲学是「都给你,你自己玩」。 OpenAI 的哲学是「我给你好的,你别管怎么做的」。

一人工程的产品哲学

6 种采样 UI 是 simedw 产品哲学的缩影:

  • 用户有得选
  • 用户能实验
  • 用户不被剥夺

OpenAI 的 UI:

  • 简单
  • 但用户只能选 1 种
  • 用户被剥夺实验

签名:solus opus。