Commit c2ef6ae9 by luoqi

docs(站点): 《分配助手》重排 —— 决策树提到第一位,按选人/分人/确认/确认后讲

原来第一节是「三者分工」,决策树排在第二节里。但读者来这一页想知道的是
**这条线怎么走**,分工是背景 —— 顺序反了。

⇒ 决策树提到 §1,并按四步重画:① 选人 → ② 分人 → ③ 确认 → ④ 确认之后。
  这四步不是新造的,就是助手讲这一版时被要求遵守的那个顺序 ——
  图和它嘴里说的话现在是同一个结构。

️ 那个红色菱形(他动的是①还是②)仍然是全文重心:它是助手在这条线上
  **唯一实质的判断**,而且代价不对称(误判成②=条件没生效且看不出来)。

精简:269 → 198 行(-26%),6 张图 → 2 张。删掉的是"它由什么拼起来"整节
(与五层提示词重复)、工具清单的两张长表(合成一张三行表)、引导节点的示意图
(表格已经说清)。 没删任何一条纪律或红线 —— 那些是这篇的价值所在。

️ mermaid 节点标签里 不写 `**加粗**`(会被字面渲染成星号),已复查两张图都干净。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
parent 217ca734
--- ---
title: 分配助手 title: 分配助手
description: 主管说一句话,它把几十次操作做完 —— 助手的分工、决策、边界与验收 description: 主管说一句话,它把几十次操作做完 —— 选人、分人、确认、确认之后
icon: Bot icon: Bot
--- ---
主管在矩阵上点一格,助手挑人、排客服、出确认单。**他只要看一眼、点确认。** 主管在矩阵上点一格,助手挑人、排客服、出确认单。**他只要看一眼、点确认。**
功能本身见 [召回分配](./batch-assignment)。本文讲**那个助手**:谁做决定、它凭什么这么做、哪些事它绝对不做、怎么知道它没变坏 功能本身见 [召回分配](./batch-assignment)。本文讲**那个助手**:它怎么走、谁做决定、哪些事它绝对不做
--- ---
## 一、三者分工 ## 一、分配决策树
```mermaid 整条线只有四步:**① 选人 → ② 分人 → ③ 确认 → ④ 确认之后**。
flowchart LR
H["👤 主管<br/>做决定"] -->|说一句话| A["🤖 助手<br/>组织语言 · 调工具"]
A -->|调用| P["⚙️ 程序<br/>算数 · 取数 · 落库"]
P -->|事实| A
A -->|一段话 + 一张确认单| H
H -->|点确认| P
style H fill:#fef3c7,stroke:#f59e0b
style A fill:#e0e7ff,stroke:#6366f1
style P fill:#d1fae5,stroke:#10b981
```
| | 负责 | ⛔ 不负责 |
|---|---|---|
| **主管** | 所有决定 | —— |
| **助手** | 理解他的话、组织成人话、把决定翻译成动作 | **任何数字**、谁分给谁、要不要落库 |
| **程序** | 挑人、落人、算判据、写库 | 措辞 |
**一条铁律**:凡是能算的,都由程序算。助手只转述。
---
## 二、一次分配,它怎么走
```mermaid ```mermaid
flowchart TD flowchart TD
S(["主管圈定<br/>矩阵点一格 / 直接说要哪批人"]) --> P S(["主管点一格 / 说要哪批人"]) --> A
P["助手出一版<br/>① 选人:这批是谁、多大<br/>② 分人:专属回自己人 · 无主给最空的<br/>③ 专属排满的不动,单列出来"] A["① 选人<br/>这批是谁、多大"] --> B["② 分人<br/>专属回自己人 · 无主给最空的<br/>专属排满的单列成一组"]
B --> C{"这一版还有<br/>要他定的吗?"}
P --> D{"这一版<br/>还有要他定的吗?"} C -->|"没有"| K
D -->|"没有"| C C -->|"有"| G["摆成按钮<br/>待分配 · 换个条件选 · 本批人数 · 打不完"]
D -->|"有"| G["摆成按钮<br/>待分配 · 换个条件选 · 本批人数 · 打不完"]
G --> Q{"主管做什么?"} G --> Q{"主管做什么?"}
Q -->|"一条不点<br/>(默认永远安全)"| C Q -->|"一条不点<br/>默认永远安全"| K
Q -->|"点按钮"| M Q -->|"点按钮 / 开口说别的"| M
Q -->|"开口说别的"| M
M{"动的是哪一层?"} M{"动的是哪一层?"}
M -->|"怎么派<br/>移出谁 · 改派 · 改时效 · 带福利"| J["就在这一版上改<br/>不重跑"] M -->|"动②分人<br/>移出谁 · 改派 · 改时效 · 带福利"| J["就在这一版上改<br/>不重跑"]
M -->|"这批人是谁<br/>换条件 · 改人数 · 换时间档"| N["重跑,出新版<br/>旧版当场作废"] M -->|"动①选人<br/>换条件 · 改人数 · 换时间档"| N["重跑,出新版<br/>旧版当场作废"]
J --> D J --> C
N --> P N --> A
C["主管点确认<br/>这一下才真的分下去"] --> A(["已确认"]) K["③ 确认<br/>点下去,这一刻才真的分下去"] --> L["④ 确认之后<br/>限时撤销 · 补挂福利 · 跟踪进度"]
A --> A1["限时撤销"]
A --> A2["补挂福利"]
A --> A3["跟踪进度"]
style S fill:#fef3c7,stroke:#f59e0b style S fill:#fef3c7,stroke:#f59e0b
style P fill:#e0e7ff,stroke:#6366f1 style A fill:#e0e7ff,stroke:#6366f1
style D fill:#fff,stroke:#94a3b8 style B fill:#e0e7ff,stroke:#6366f1
style Q fill:#fff,stroke:#94a3b8
style M fill:#fee2e2,stroke:#ef4444,stroke-width:2px
style G fill:#fce7f3,stroke:#ec4899 style G fill:#fce7f3,stroke:#ec4899
style M fill:#fee2e2,stroke:#ef4444,stroke-width:2px
style J fill:#ede9fe,stroke:#8b5cf6 style J fill:#ede9fe,stroke:#8b5cf6
style N fill:#ede9fe,stroke:#8b5cf6 style N fill:#ede9fe,stroke:#8b5cf6
style C fill:#fef3c7,stroke:#f59e0b style K fill:#fef3c7,stroke:#f59e0b
style A fill:#d1fae5,stroke:#10b981 style L fill:#d1fae5,stroke:#10b981
``` ```
### 四步各自在做什么
| 步 | 做什么 | 谁做 |
|---|---|---|
| **① 选人** | 这批是谁、多大。可以再切:画像、消费额、人数、时间档 | 程序挑,主管定条件 |
| **② 分人** | 有专属的回自己人手上;无主的给当前手上最少的;专属这轮排满的不动,单列成一组 | 程序落,主管可微调 |
| **③ 确认** | 摆在他面前,**他点下去才真的分下去** | 只有主管 |
| **④ 确认之后** | 限时撤销、补挂福利、跟踪这批打得怎么样 | 主管发起,程序执行 |
### 红色那个菱形,是助手在这条线上**唯一实质的判断** ### 红色那个菱形,是助手在这条线上**唯一实质的判断**
| 主管说 | 动的是 | 走 | 主管说一句话,助手要判断他动的是哪一层:
| 他说 | 动的是 | 走 |
|---|---|---| |---|---|---|
| 「王强移出这批」「待分配都还给专属」「给 5 天」「带个福利」 | **怎么派** | 局部改,同一版 | | 「王强移出这批」「待分配都还给专属」「给 5 天」「带个福利」 | **② 分人** | 就地改,同一版 |
| 「只要商保直付的」「改成 200 人」「换成 1–2 年那档」 | **这批人是谁** | 重跑,出新版 | | 「只要商保直付的」「改成 200 人」「换成 1–2 年那档」 | **① 选人** | 重跑,出新版 |
<Callout type="warn">**代价不对称**:把「这批人是谁」误判成「怎么派」→ 主管以为条件生效了、其实没有(**看不出来的错**);反过来只是多算一次。⇒ **拿不准时一律走重跑。**</Callout> <Callout type="warn">**代价不对称**:把「① 选人」误判成「② 分人」→ 主管以为条件生效了、其实没有(**看不出来的错**);反过来只是多算一次。⇒ **拿不准时一律走重跑。**</Callout>
### 两条闭合的环 ### 两条闭合的环
| 环 | 回到哪 | 结果 | - **改分法** → 回到同一版:人没变,分法变了
|---|---|---| - **改人群** → 回到新的一版:**旧版当场作废**,确认按钮禁用
| **改派法** | 回到同一版 | 人没变,分法变了 |
| **改人群** | 回到新的一版 | **旧版当场作废**,确认按钮禁用 |
⚠️ 作废发生在**新版生成时**,不是确认时 —— 主管要能看见自己出过几版、哪一版才是当前的。 ⚠️ 作废发生在**新版生成时**,不是确认时 —— 主管要能看见自己出过几版、哪一版才是当前的。
...@@ -100,111 +81,35 @@ flowchart TD ...@@ -100,111 +81,35 @@ flowchart TD
--- ---
## 三、它由什么拼起来 ## 二、三者分工
```mermaid
flowchart TB
subgraph P["提示词(常驻)"]
direction TB
P1["装置 · 你是谁"] --> P2["诚实 · 什么不许编"] --> P3["语气 · 怎么说话"] --> P4["角色 · 你伺候谁"] --> P5["现场 · 他此刻在做什么"]
end
subgraph T["工具(按角色发)"]
T1["查"] --- T2["出方案"] --- T3["改单"] --- T4["追踪"]
end
subgraph O["每次出方案,程序给它"]
O1["结构化事实<br/>怎么选的 / 怎么派的"] --- O2["引导节点<br/>还有什么要你定"]
end
P --> M(("助手"))
T --> M
O --> M
M --> R["一段话 + 一张确认单 + 几个按钮"]
style P fill:#e0e7ff,stroke:#6366f1
style T fill:#ede9fe,stroke:#8b5cf6
style O fill:#fce7f3,stroke:#ec4899
style M fill:#fef3c7,stroke:#f59e0b
```
---
## 四、提示词分五层
**分层的依据是「什么会让它变」** —— 不是按话题分。
| | 层 | 管什么 | 什么时候会变 |
|---|---|---|---|
| ① | **装置** | 你是谁、你看不见什么 | 产品形态变 |
| ② | **诚实** | 数从哪来、什么不许编 | 几乎不变 |
| ③ | **语气** | 衔接、顺序、分寸、排版 | **可配置**(换一套人设即可) |
| ④ | **角色** | 他有什么权责、你不许替他决定什么 | 登录人的权限 |
| ⑤ | **现场** | 他此刻在做的那条业务线 | 加一条新业务线 |
**同一个助手,两种人看到两份提示词**:
```mermaid ```mermaid
flowchart LR flowchart LR
L["主管登录"] --> R1["角色:主管的助手"] --> S1["现场:把一批人分给客服"] --> T1["工具:21 个"] H["👤 主管<br/>做决定"] -->|说一句话| A["🤖 助手<br/>组织语言 · 调工具"]
C["客服登录"] --> R2["角色:客服的助手"] --> S2["现场:把手上的单打好"] --> T2["工具:9 个"] A -->|调用| P["⚙️ 程序<br/>算数 · 取数 · 落库"]
P -->|事实| A
A -->|一段话 + 一张确认单| H
H -->|点确认| P
style L fill:#fef3c7,stroke:#f59e0b style H fill:#fef3c7,stroke:#f59e0b
style C fill:#dbeafe,stroke:#3b82f6 style A fill:#e0e7ff,stroke:#6366f1
style P fill:#d1fae5,stroke:#10b981
``` ```
前三层完全一样;后两层与工具清单**跟着登录账号走**。将来加排班、复盘,就是加第 ⑥ 条现场,前面四层一个字不动。 | | 负责 | ⛔ 不负责 |
|---|---|---|
**次要的活不常驻**:分配追踪的做法写成单独一篇,提示词里只留一行索引,助手要用时自己去取。常驻上下文不为一件三成会话才用到的事买单。 | **主管** | 所有决定 | —— |
| **助手** | 理解他的话、组织成人话、把决定翻译成动作 | **任何数字**、谁分给谁、要不要落库 |
--- | **程序** | 挑人、落人、算判据、写库 | 措辞 |
## 五、它手上的工具
工具是助手唯一能做事的通道。**没有对应工具的事,它做不了,也不会假装做了。**
<Callout type="info">**两个人拿到的清单不一样** —— 不是靠提示词叮嘱它"别看别人的",是那些工具**根本没发给它**。</Callout>
### 两种人都有
| | |
|---|---|
| **我是谁** | 我能管哪几家诊所、有什么权限 |
| **查患者** | 找人 · 全貌 · 画像 · 关键事实 · 这次为什么要联系他 |
| **看召回池** | 名单 · 数字概览 |
### 只有主管有
| | | **一条铁律**:凡是能算的,都由程序算。助手只转述。
|---|---|
| **看人手** | 在岗客服名册 + 每人手上压着多少 |
| **看这批人构成** | 各画像维度各多少人(切之前先看,免得切完只剩三个) |
| **出方案** | 挑人 · 排客服 · 算引导节点,**一次算完** |
| **看当前确认单** | 他在卡片上动过手之后,助手看不见 —— 得查 |
| **改确认单** | 移出谁 · 改派给谁 · 改时效 · 设福利 |
| **摆卡片 / 摆按钮** | 决定确认单和选项按钮**落在正文的哪个位置** |
| **追踪** | 我分过哪几批 · 某批怎么样了 · 这个人为什么分给了他 |
| **撤销** | 限时收回整批 |
--- ---
## 、要他定的事,做成按钮 ## 、要他定的事,做成按钮
程序算出「这一版还有什么没定」,**摆成按钮**,不让主管打字。 程序算出「这一版还有什么没定」,**摆成按钮**,不让主管打字。
```mermaid
flowchart LR
subgraph S["确认单上的一条"]
direction TB
T["📌 182 人的专属客服这轮已排满"]
W["为什么:他们有专属客服,但那位这轮排满了"]
D["不处理 = 这批不发给他们"]
B["[换无专属客服的患者补上][铺平给在岗][各自归专属][移出本批][我自己说]"]
T --- W --- D --- B
end
style S fill:#fff7ed,stroke:#f59e0b
```
| 节点 | 什么时候出 | 不处理会怎样 | | 节点 | 什么时候出 | 不处理会怎样 |
|---|---|---| |---|---|---|
| **待分配** | 有人的专属客服这轮排满了 | 这批不发给他们 | | **待分配** | 有人的专属客服这轮排满了 | 这批不发给他们 |
...@@ -212,7 +117,7 @@ flowchart LR ...@@ -212,7 +117,7 @@ flowchart LR
| **本批人数** | 这批多大是系统估的 | 就按这个数发 | | **本批人数** | 这批多大是系统估的 | 就按这个数发 |
| **打不完** | 最忙的那位手上超过时效能打的量 | 就按这个时效发,到期没打完的自动回池 | | **打不完** | 最忙的那位手上超过时效能打的量 | 就按这个时效发,到期没打完的自动回池 |
**三条设计原则** 每条按钮都带三样:**是什么**、**为什么**、**不处理等于什么**。三条设计原则
| | | | | |
|---|---| |---|---|
...@@ -224,7 +129,41 @@ flowchart LR ...@@ -224,7 +129,41 @@ flowchart LR
--- ---
## 七、红线 ## 四、它手上的工具
工具是助手唯一能做事的通道。**没有对应工具的事,它做不了,也不会假装做了。**
<Callout type="info">**两个人拿到的清单不一样** —— 不是靠提示词叮嘱它"别看别人的",是那些工具**根本没发给它**。</Callout>
| | 两种人都有 | 只有主管有 |
|---|---|---|
| **查** | 我是谁 · 查患者 · 看召回池 | 看人手 · 看这批人构成 · 看当前确认单 |
| **做** | —— | 出方案 · 改确认单 · 摆卡片摆按钮 · 撤销 |
| **追** | —— | 我分过哪几批 · 某批怎么样了 · 这个人为什么分给了他 |
主管 21 个,客服 9 个。
---
## 五、提示词分五层
**分层的依据是「什么会让它变」** —— 不是按话题分。
| | 层 | 管什么 | 什么时候会变 |
|---|---|---|---|
| ① | **装置** | 你是谁、你看不见什么 | 产品形态变 |
| ② | **诚实** | 数从哪来、什么不许编 | 几乎不变 |
| ③ | **语气** | 衔接、顺序、分寸、排版 | **可配置**(换一套人设即可) |
| ④ | **角色** | 他有什么权责、你不许替他决定什么 | 登录人的权限 |
| ⑤ | **现场** | 他此刻在做的那条业务线 | 加一条新业务线 |
前三层所有人一样;后两层与工具清单**跟着登录账号走**。将来加排班、复盘,就是加第 ⑥ 条现场,前面四层一个字不动。
**次要的活不常驻**:分配追踪的做法写成单独一篇,提示词里只留一行索引,助手要用时自己去取。
---
## 六、红线
| ⛔ 绝不 | 为什么 | | ⛔ 绝不 | 为什么 |
|---|---| |---|---|
...@@ -238,32 +177,22 @@ flowchart LR ...@@ -238,32 +177,22 @@ flowchart LR
--- ---
## 、怎么知道它没变坏 ## 、怎么知道它没变坏
助手这层**天生有波动** —— 同一句话问两次,它未必走同一条路。所以验收不能只看"跑通了一次"。 助手这层**天生有波动** —— 同一句话问两次,它未必走同一条路。所以验收分三层:
```mermaid | 层 | 测什么 | 判据 |
flowchart TB |---|---|---|
L1["① 算法与取数<br/>挑人 · 落人 · 判据"] --> V1["单元测试<br/>过 / 不过"] | **算法与取数** | 挑人 · 落人 · 判据 | 单元测试,过 / 不过 |
L2["② 交接<br/>谁传什么、谁压过谁"] --> V2["契约测试<br/>过 / 不过"] | **交接** | 谁传什么、谁压过谁 | 契约测试,过 / 不过 |
L3["③ 助手行为<br/>该调的工具调没调"] --> V3["用例集跑批<br/>通过率"] | **助手行为** | 该调的工具调没调 | 用例集跑批,**通过率** |
style L1 fill:#d1fae5,stroke:#10b981
style L2 fill:#e0e7ff,stroke:#6366f1
style L3 fill:#fce7f3,stroke:#ec4899
style V3 fill:#fef3c7,stroke:#f59e0b
```
**第层的判据是「动作」,不是「文字」。** 同一个意思十种说法都对;而最贵的那类失败恰恰是**话说得挺好、工具一次没调**。 **第层的判据是「动作」,不是「文字」。** 同一个意思十种说法都对;而最贵的那类失败恰恰是**话说得挺好、工具一次没调**。
<Callout type="warn">**跑一次不算数。** 同一份配置跑 3 轮得到 1/3、跑 10 轮得到 9/10 —— 是同一个行为。判断"它是不是退步了"必须看多轮通过率。</Callout> <Callout type="warn">**跑一次不算数。** 同一份配置跑 3 轮得到 1/3、跑 10 轮得到 9/10 —— 是同一个行为。判断"它是不是退步了"必须看多轮通过率。</Callout>
用例全部来自**真实踩过的坑**,每条都写明由来 —— 没有一条是设想出来的场景。改提示词、换模型、加工具之前后各跑一次,比的是通过率。 用例全部来自**真实踩过的坑**,每条都写明由来 —— 没有一条是设想出来的场景。
--- ---
## 一句话总结 **一句话**:主管做决定,助手把决定落成动作,程序保证数是真的。三者边界不靠自觉,靠**结构** —— 算得出来的不让它算,看不到的不发给它,做不了的不给工具。
**主管做决定,助手把决定落成动作,程序保证数是真的。**
三者边界不靠自觉,靠**结构**:算得出来的不让它算,看不到的不发给它,做不了的不给工具。
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment