📄 一句话概括
模型配置里只有两个词要分清——Provider(连哪家)和 Model(用哪个);密钥单独存,不进配置文件。
📝 本节和前面几节的关系
2.2 圈定了活动范围,这一节给它接上脑子。配好模型,才算真正能开始干活——这也是【换模型只改一行】那句话第一次落地。
一、两个词:Provider 与 Model
真实配置树里,默认模型这三行是这么写的:
- id: agent-default-model
name: '@deepseek-ai/dsh-agent-default-model'
config:
provider: deepseek-official
model: deepseek-flash
两个词分清楚,配模型这件事就没有难度了:
- Provider 回答【连哪家服务】——官方、兼容接口、还是本地模型。
- Model 回答【具体用哪一个】——同一家里的不同档位。
换家就改 provider,换档就改 model。两件事不要混着做, 一次只动一个,出问题才知道是哪儿的问题。
二、密钥为什么不写在配置里
注意上面那段配置里没有密钥。密钥单独存在 DSH_HOME 下的一个凭证文件里。
为什么非要分开?因为配置文件的使用方式和密钥完全相反:
- 配置会被分享、会被贴进聊天、会被提交到代码仓库。
- 密钥一旦泄露,别人花的是你的钱。
分开存,才能让【配置可以公开、密钥不能公开】这件事成立。 这也是所有正经工具的通行做法——看到哪个工具让你把密钥写进配置文件,都要多问一句。
三、两种配法
配模型有两条路,日常用哪条看场景:
- 界面里改:设置 → 模型,填进密钥保存。适合日常,最省事。
- 配置里改:直接改 profile 的配置层。适合要固定、要批量、要进版本库的场景。
两条路改的是同一份东西,不存在【界面改的不算数】这种事。 区别只在改动的场合:一次性的调整走界面,要长期固化的走配置。
四、换模型到底要动几处
第 1 章说过【换模型只改一行配置】。现在可以把它拆开算了:
model那一行——1 处。- 如果换的是另一家,再加
provider1 处。 - 界面、工具、会话、工作区——0 处。
这就是第 1 章那句【产品与 Runtime 分开】最直接的兑现。 密钥第一次用还是得填一次,但那是凭证的事,不是结构的事—— 结构上,它真的就只是一行。
五、动手 Demo:模型是怎么配上的
把【配置里有什么】和【两种配法的区别】摆在一张表上:
items = [("Provider", "连哪家服务(官方 / 兼容接口 / 本地)", "provider 那一行"),
("Model", "具体用哪一个模型", "model 那一行"),
("凭证", "API 密钥", "存在 DSH_HOME 下的凭证文件")]
for a, b, c in items:
print(" %-9s %-32s 改 %s" % (a, b, c))
print()
print("换模型要动几处:")
print(" 改 model 一行 + 换家再加 provider 一行")
print(" 界面 / 工具 / 会话 / 工作区 都 0 处")
实跑输出:
--------------------------------------------------------------------
模型是怎么配上的
--------------------------------------------------------------------
真实配置树里,默认模型是这么写的:
- id: agent-default-model
name: '@deepseek-ai/dsh-agent-default-model'
config:
provider: deepseek-official
model: deepseek-flash
三行里,两个词要分清:
概念 含义 改哪里
---------------------------------------------------------------------------------
Provider 连哪家服务(官方 / 兼容接口 / 本地) provider 那一行
Model 具体用哪一个模型 model 那一行
凭证 API 密钥 存在 DSH_HOME 下的凭证文件
---------------------------------------------------------------------------------
密钥为什么不写在配置里?因为配置文件会被分享、会被提交到仓库。
分开存是为了让【配置可以公开、密钥不能公开】这件事成立。
两种配法,用途不同:
方式 怎么做 什么时候用
--------------------------------------------------------------------
界面里改 设置 → 模型,填密钥保存 日常,最省事
配置里改 改 profile 的配置层 要固定、要批量、要进版本库
--------------------------------------------------------------------
算一笔账:想换个模型,要动几处?
model 那一行 1 处
如果换的是另一家 再加 provider 1 处
界面、工具、会话 0 处
这就是第 1 章说过的【换模型只改一行】的实物。
密钥第一次用还是得填一次,但那是凭证的事,不是结构的事。
注意表里第三行:凭证也在配置体系里,但它不是一个【配置项】,是一个独立文件。
这个区别,就是【配得对不对】和【会不会泄露】的分界线。
本机 dump 出来的默认组合是 deepseek-official + deepseek-flash 这一对——
官方把【便宜快】的那档设成了默认,不是最强的那档。
30 秒实验
- 在界面里把模型配上,密钥存好。
- 看一眼凭证文件的位置,理解【配置能公开、密钥不能】这条分界线。
- 在配置层里找到默认模型那一段,试着改成另一个模型,看界面和工具有没有变化。
常见误区
- 错误:密钥写进配置文件最方便。——纠正:配置文件会被分享、被提交,分开存是为了让【配置可以公开】成立。
- 错误:Provider 和 Model 是一回事。——纠正:Provider 是【哪家服务】,Model 是【哪一个模型】;换家换 provider,换档换 model。
- 错误:换模型要重装或者重配工具。——纠正:改一行配置,界面和工具都不动。
自测三问(点开对答案)
1. Provider 和 Model 分别管什么? —— Provider 管【连哪家服务】(官方/兼容接口/本地),Model 管【具体用哪一个】。 2. 密钥存在哪? —— 存在 DSH_HOME 下的凭证文件里,**不写进配置文件**——这样配置可以随便分享,密钥不会跟着走。 3. 换模型要动几处? —— `model` 一行;换家的话再加 `provider` 一行;界面、工具、会话、工作区都不动。- ☐ 下一节(2.4.1 对照 4 套 Preset)
相关笔记
- Workspace 是 Agent 的【现实世界】 —— 上一篇圈地盘,这一篇接脑子
- 对照 4 套 Preset —— 下一篇从模型转到【用哪一套预设】
- 扣子平台基础介绍 —— 另一处讲【平台侧的模型与能力怎么配】
- 🐳 DeepSeek Harness · 索引