← 返回目录
p7.1动手⏱ 约 15 分钟

模型选型:把"选哪个模型"变成一道能算的题

同一批任务,旗舰档月成本 762 元、轻量档 24 元——差一个数量级,而任务未必需要旗舰档

🔎 最后验证 2026-07📚 来源:成本与上下文预算计算器,2026-07-31 于 ECS 实测,输出见 code/outputs/stdout.txt🧰 Python 3.12.13(纯离线计算,不调用任何 API)
为什么学这个

先说这一节不做什么:

  • 不做模型能力横评。榜单三个月就过期,而且未必和你的任务相关
  • 不给"某某模型最好"的结论

它做的是:把选型拆成四个可以自己算、自己核对的维度,并给一个离线可跑的预算计算器——换了模型、换了价格,重跑一遍就行。

先看最容易被低估的那一维(月成本,量级示意):

任务                 每日份数  输入tok  输出tok    旗舰档   主力档  轻量档  国产主力档
公告结构化抽取            200    8000     500     762   152   24    48
研报要点提炼               50   40000    1200     835   167   27    54
财报全文问答(长上下文)        20  150000    2000   1,162元   232   38    76

旗舰档与轻量档差一个数量级——而任务未必需要旗舰档。

⚠️ 内置价格档位只是量级示意,必须以你调用当天的官方文档为准。这一节教的是算法,不是价目表。

💡 打个比方

选货车不是比谁马力大,是先量货物:每天拉多少趟、单件多大、路多宽。

马力最大的那台,可能连你家小区门口都进不去。

模型选型同理:先量任务,再看模型。

一、维度一:月成本

计算口径:月成本 = 份数 × 22 天 × (1 + 重试率) × (输入 tok × 单价 + 输出 tok × 单价)

重试率不能省。按 p7.2 的校验管线,10% 左右的输出会因为不合 Schema 而重试——这部分成本是真实发生的

任务旗舰档主力档轻量档国产主力档
公告结构化抽取(200/天)762 元152 元24 元48 元
研报要点提炼(50/天)835 元167 元27 元54 元
每日新闻情绪打标(800/天)436 元87 元14 元28 元
财报全文问答(20/天)1,162 元232 元38 元76 元

先算钱,再谈能力。 一个每月 24 元能做的事,用 762 元的档位做,需要一个能说清楚的理由

二、维度二:上下文预算(它决定架构,不只是决定钱)

可用上下文按标称值的 70% 估——要留给系统提示词、少样本示例、输出与安全余量。

任务单份输入 tok旗舰/主力档可塞轻量/国产档可塞
公告结构化抽取8,00017 份11 份
研报要点提炼40,0003 份2 份
每日新闻情绪打标1,200116 份74 份
财报全文问答150,0000 份0 份
⚠️ 避坑

最后一行是关键:单份就塞不下。

150,000 token 的财报,连 200k 标称上下文的 70%(140k)都塞不进——这不是"换个更贵的模型"能解决的

塞不下 → 你需要的是检索/分块架构,而不是更贵的模型。

塞得下但很挤 → 长上下文会显著变慢变贵,分块往往更划算。

上下文长度是最容易被当成"越大越好"的一维。实际上它决定的是架构: 一次塞完 / 分块摘要 / 检索增强,是三种完全不同的系统。

🔧 动手做:把"用哪个模型"算成一道题(5 分钟)

python model_budget.py。同一批任务(公告结构化抽取 200 份/天),它按旗舰/主力/轻量各档算月成本。

你会看到(实测):同一批任务,旗舰档月成本 762 元、轻量档 24 元——差一个数量级,而这个任务未必需要旗舰档。

想明白:"用哪个模型"不是凭感觉选最强的,是一道能算的题:任务需要多强的能力 × 调用量 × 单价。大多数结构化、抽取类任务,轻量档就够,却有人默认全用最贵的,月成本平白高 30 倍。而且模型半年一换——所以这门课不教"选哪个模型",教怎么把选型变成可计算、可复算的题

三、维度三与四:工具调用与结构化输出

维度要问的问题不满足的后果
结构化输出能否强制返回符合 JSON Schema 的结果你要写解析器 + 重试,失败率与成本都上升(p7.2)
工具调用能否按你的函数签名发起调用并接收结果取数/计算只能靠提示词描述,不可靠且难审计
确定性同样输入能否复现同样输出(温度=0 也未必)结果不可复现,与 p1.5/p5.9 的落盘纪律冲突
速率与并发限频、并发上限、超时重试策略上线当天被限流,批处理任务全部堆积

"确定性"这一条值得单独强调:p5.9 那次 yfinance 的复现性事故说明,数据源不稳定就足以让结论漂移。

LLM 的输出天然比数据源更不稳定。所以凡是进入研究流程的 LLM 输出,必须落盘存证——记录模型名、版本、温度、提示词哈希与原始返回。

四、量化场景里 LLM 的正确位置

✅ 适合例子说明
非结构化 → 结构化公告/研报/纪要抽成字段适合,且可校验(p7.2)
文本归类与打标事件类型、情绪极性适合,但要人工抽检
代码与流程辅助写脚本、审代码、查口径适合(p7.5)
解释与复盘把回测结果讲清楚适合,但结论仍需自己核
❌ 不适合例子说明
直接预测涨跌让模型给出买卖信号无法验证、无法归因、无法复现
替代回测让模型"估算"策略表现它不会算,只会写得像
生成"历史数据"补缺失值、编造样本直接污染数据源(p1.6)

一句话:LLM 在量化里的位置是"把文字变成表格",不是"把文字变成信号"。

五、选型清单(照着填,不用背型号)

  1. 任务是什么?每天多少份、单份多少 token?
  2. 用计算器算出月成本——先算钱,再谈能力
  3. 单份输入能否塞进标称上下文的 70%?塞不下就上检索/分块
  4. 是否需要强制结构化输出?不支持就要多写校验与重试(p7.2)
  5. 是否需要工具调用?
  6. 限频与并发上限是多少?批处理会不会被限流?
  7. 同一输入能否复现?不能复现的结果如何落盘存证(p1.5)?
  8. 数据出境与合规:公告是公开的,而你的持仓与策略不是。
⚠️ 避坑

第 ⑧ 条最容易被忽略。

把自己的持仓、参数、净值曲线发给第三方模型,等于把最不该外传的东西外传了

公开文本可以送出去,私有状态不行。

一条可操作的分界:送出去的东西,必须是本来就公开的(公告原文、研报原文、新闻)。凡是"只有你知道"的东西——持仓、规格书、参数、实盘记录——不进提示词

❓ 测验
你要做一个「每天处理 20 份财报全文(每份约 15 万 token)」的问答系统。按本节的方法,第一步该做什么?
✏️ 填空
可用上下文按标称值的 ___% 估算,要留给系统提示词、少样本示例、输出与安全余量。

📌 免责:本课为技术教学,内置价格与上下文档位仅为量级示意(以官方文档为准),不推荐任何模型或服务商;不构成投资建议。

✅ 小结

四件事:

  1. 本节不做模型横评——榜单三个月过期,且未必与你的任务相关。它给的是四维选型框架 + 离线可跑的预算计算器
  2. 先算钱:同一批任务旗舰档 762 元 / 轻量档 24 元,差一个数量级;计算里必须含重试率(约 10%,见 p7.2)
  3. 上下文决定架构,不只是决定钱:150k token 的财报在所有档位上可塞份数都是 0——塞不下要上检索/分块,不是换更贵的模型
  4. LLM 在量化里的位置是"把文字变成表格",不是"把文字变成信号"。直接预测涨跌、替代回测、生成"历史数据"三件事一律不做

外加一条最容易被忽略的合规线:送进提示词的东西必须本来就公开。公告、研报、新闻可以;持仓、规格书、参数、实盘记录不行

下一节把"可校验"落到实处:JSON Schema 约束、强制原文引用、失败重试与成本控制——一套即使换了模型也不用重写的校验管线。

下一节 → LLM 结构化抽取:让输出可校验
🔎 来源与核验· 2 条,点开核对
本节每个关键论断都对应一个可追溯的来源 —— 这是本课程"靠谱、不过时"的底线。
「月成本测算(每月 22 个工作日、含 10% 重试):公告结构化抽取 200 份/天 旗舰档 762 元、主力档 152 元、轻量档 24 元、国产主力档 48 元;研报要点提炼 835/167/27/54 元;每日新闻情绪打标 436/87/14/28 元;财报全文问答 1,162/232/38/76 元」
📚 本节 code/model_budget.py,2026-07-31 于 ECS 实测(纯离线计算),输出见 code/outputs/stdout.txt✓ 已核验 2026-07
「上下文预算(按标称值 70% 可用):公告 8k token 可塞 17/11 份、研报 40k 可塞 3/2 份、新闻 1.2k 可塞 116/74 份、财报全文 150k 在所有档位均为 0 份」
📚 同上实测✓ 已核验 2026-07
价格档位(元/百万 token)与上下文长度均为**量级示意**,非任何厂商真实报价,必须以调用当天的官方文档为准;本节不调用任何外部 API,计算完全离线可复现。
智图软件的赞赏码
都看到这了,打个赏呗!
接下来 · p7.2
LLM 结构化抽取:让输出可校验,而不是让模型更聪明
继续读下一节 →