🐳 第二章 从零开始运行DSH
📄 一句话概括

四套预设的界面名字和内部 id 不是一回事(PTC 实际叫 ptc),插件数从 2 到 20——它们不是四档强度,是四份不同的装配清单。

📝 本节和前面几节的关系

模型配好了,接下来该挑【用哪一套】。这一节把四套摆在一起认脸,2.4.2 再拆开看它们差在哪几行。

一、四套的真身

从本机 dump 出来的配置树里,四套预设的实际定义是这样:

这四行是实跑出来的,不是从文档抄的。把配置 dump 出来自己看一遍,比看任何二手资料都可靠。

二、名字与 id 不是一回事

表里第一件怪事:界面上的名字和配置里的 id 对不上。

PTC 这一项还有更有意思的地方:网上流传的一些资料里,它的内部 id 写作 code——那是另一个版本的写法。 同一个东西,标识在版本之间改过。

这就是第 1.5 节那句【学结构别背接口】的实证。 界面名字是给人看的(还会本地化),配置和会话记录里用的是稳定 id—— 记东西的时候,记 id 不要记名字。

三、四套各是干什么的

一句话说清四套的分工:

注意 Minimal 不是【标准版的简约版】。 它的插件数只有 Standard 的十分之一,而且换的是另一条技术路线——下一节的差分数据会把这个结论钉死。

四、怎么选

选择其实很简单,按场景对号:

还有一条硬规矩要记住:会话一旦发出第一条消息,预设就锁定了。 中途切换到不了——要换得开一个新会话。

为什么这么设计?因为预设决定了工具集合和提示词段落,中途换会把已经建立的上下文弄得前后不一致。锁死是保护,不是限制。

五、动手 Demo:四套 Preset 的真身

把四套的内部 id、排序和插件数拉出来(数据来自本机实跑配置树):

presets = [("Standard", "standard", 1, 19),
           ("PTC", "ptc", 2, 20),
           ("Minimal", "minimal", 3, 2),
           ("Creative", "cordis", 4, 20)]
for name, pid, order, n in presets:
    print("  %-10s 内部 id = %-9s order = %d  插件数 = %2d"
          % (name, pid, order, n))
print()
print("注意:界面名字与内部 id 不是一回事")
print("      插件数从 2 到 20,相差十倍")

实跑输出:

--------------------------------------------------------------------
四套 Preset 的真身
--------------------------------------------------------------------
  从本机 dump 出来的配置树里,四套预设的实际定义是这样:

  界面上的名字     内部 id      order     顶层插件数
  ---------------------------------------------------
  Standard         standard     1         19
  PTC              ptc          2         20
  Minimal          minimal      3         2
  Creative         cordis       4         20
  ---------------------------------------------------

  这张表里有三件事值得单独说:

  1. 界面上的名字和内部 id 不是一回事。PTC 的内部 id 是 ptc;
     而网上流传的一些资料把它写成 code——那是另一个版本的写法。
     这正印证了第 1.5 节的提醒:看名字别当真,看 id。
  2. order 决定它们在界面上排第几,跟能力多少没关系。
  3. 插件数从 2 到 20,差了十倍。四套预设不是【同一套东西的四档强度】,
     而是四份不同的装配清单。

  四套各是干什么的,一句话说清:

  预设         一句话                                   插件数
  -------------------------------------------------------------
  Standard     全量工具,日常就选它                     19
  PTC          标准能力,但换成【用程序编排】的呈现     20
  Minimal      裸机环境,只为做对照实验                 2
  Creative     标准能力,外加【改造自身】的权限         20
  -------------------------------------------------------------

  注意 Minimal 不是【标准版的简约版】——它是另起炉灶。
  下一节的差分数据会把这个结论钉死。

这四行不是四档强度,是四份清单。 把它们当成【同一套东西的简配和顶配】,是理解第 3 章最大的障碍。 正确的读法是:每一套都是从插件池里挑出一组、装配起来的一个会话。 下一节做差集,会把这个判断变成看得见的数字。

30 秒实验

  1. 在界面上找到切换预设的入口,看四套的名字。
  2. 跑一次 dsh --profile web --dump-default-config,在输出里搜 preset-。
  3. 找到 agent-preset-registry 那一段,看 default 配的是哪一套。

常见误区

  1. 错误:四套预设是同一个 Agent 的四档强度。——纠正:是四份不同的装配清单,最小那套的插件数只有最大的十分之一,而且还换了实现。
  2. 错误:界面上写的名字就是它的 id。——纠正:界面名字是本地化的显示名,配置和会话记录用稳定 id(PTC 实际是 ptc)。
  3. 错误:预设可以随时切。——纠正:会话发出第一条消息后就锁定了;要换得开新会话。
自测三问(点开对答案) 1. 四套预设的插件数分别是多少? —— 19(standard)/20(ptc)/2(minimal)/20(cordis)——**最小的是最大的十分之一**。 2. 为什么说【名字和 id 不是一回事】? —— 界面显示的是本地化名字,配置与会话记录用稳定 id;**PTC 的内部 id 是 `ptc`**,网上有些资料写 `code`,那是另一个版本。 3. 会话中途能换预设吗? —— 不能。**第一条消息发出后就锁定**;要换得开一个新会话。

相关笔记