老板智能分身 = 企业主的第二个大脑:读得懂公司全部资料、记得住每一条出处、
分得清谁能看什么、还能把一句话变成可跟踪的任务。
它不卖「提效」,卖的是「控制权」——通用 AI 工具(豆包等)给所有人一样的答案,
而它只对老板开放最高权限,员工问同一句话会得到不同结果。
一、它替老板解决什么
| 老板的真实痛点 | 分身怎么做 |
| 不知道这个月到底赚没赚 | 自然语言问,数字由数据库精确算,不靠大模型"编" |
| 交代的事石沉大海 | 一句话生成任务卡:部门 / 责任人 / 时限 / 验收标准 |
| 翻资料、问人、等回复太慢 | 全公司文档台账一次读懂,秒答并标出出自哪份文件第几行 |
| 核心数据不敢给员工看 | 薪酬、成本、客户资产等密区,员工问了直接拒答 |
二、四层架构(从上到下)
- 入口层:老板 H5 网页 / 企微·钉钉机器人(个人主体小程序不做 AI 问答,属平台红线)
- 能力脊柱:触达、集成、权限、溯源、闭环、推送 6 个能力原子 + 大模型作第 7 个可替换零件
- 检索与权限闸门:文档走 BM25 词法检索,表格走 DuckDB 精确算数;权限在检索前就过滤
- 数据层:你的 pdf / Word / Excel / CSV 台账,放文件夹即可,半小时接入
三、权限模型(这是和通用 AI 最大的区别)
三大密区 —— 薪酬人事 / 财务成本 / 客户资产 —— 仅老板可见。关键在顺序:
不是"先查出来再把敏感内容删掉",而是检索之前就把密区内容排除掉。
员工即便换一条通道(比如直接查数据库)也拿不到,因为密区判定下沉到了数据层。
现场最直观的对照演示:老板问「张三工资多少」→ 答 8620 元;
切成员工身份问同一句 → 🔒 该信息属于受限密区,仅老板可见。
四、资料分区(放在项目内,不进版本库)
| 目录 | 谁能看 |
| 资料 / 金融产品资料 | 可共享(客户助手也能引用同一份) |
| 资料 / 客户资料 | 仅本人(老板)——整区强制标密区,非老板身份检索不到、查库也被拦,永不上云 |
「不进版本库」不等于「绝不出网」:金融产品资料经合规剥离后会同步到客户 H5(第十节 / 第九节第 ② 条);客户资料区则两者都不参与。
给客户演示"共用金融资料库"请用 start_演示同步.bat(只读金融产品资料、不读客户资料,且变更自动同步客户 H5);
start_本人模式.bat 会把真实客户资料并入索引,当着客户面演示等于泄露密区,切勿用于客户演示;
start.bat 只读虚构样例、不触发同步,适合讲"权限分级 / 密区"但不涉及真实资料。三种模式的区别见第十一节。
五、能力现状
已实现本地部署(检索离线、云端生成按第九节两条例外出网)· 资料自动索引(新增/修改文件自动学会)· 带出处问答 ·
表格精确算数 · 三级权限闸门 · 一句话生成任务卡 · 资料分区隔离
规划中L1 真派活:任务持久化跟踪 + 工具调用(现在只出卡片、不执行)·
L2 串联作品集:分身统一调度金融助手 / 对账 / 合同审查 ·
L3 客户共用资料:已完成(H5) 金融产品资料自动同步到 laomai.net/finance(见第十节),小程序侧仍待接入
六、自我学习:资料自动重建索引
往资料夹里新增 / 修改 / 删除文件后,不用重启服务——分身每 15 秒比对一次资料指纹,
发现变化就自动重建索引(变更后还多等 2.5 秒,避免读到"正在保存一半"的文件)。
实测:放入新文件 → 约 20 秒内就能问到新内容,页面右上角会闪一下「已自动学会新资料」;
删掉文件同样会自动失效,不会留下已经不存在的旧答案。
想关掉就设 AUTO_REINDEX=0,回到"改完手动重启"的老方式。
七、现场演示脚本(照这四步讲)
① 看它读得懂:问「华强那批货回款了没?」→ 答案下方带出处,写明来自哪份文件第几行。
② 看它算得准:切到「结构化查数」,问「应收账款总额是多少?」→ 走 SQL 精确计算,不靠估算。
③ 看它守得住:切成「员工」身份,问「张三工资多少?」→ 直接被拒。这是全场的爆点。
④ 看它能派活:问一句经营问题 → 点「据此生成任务卡」→ 自动拆出部门、责任人、时限、验收标准。
八、部署形态:本地大脑 + 云端并存(后期方向)
本地与云端不是二选一,而是并存——它们解决的是两件不同的事:
| 本地大脑(现在这套) | 云端(后期可选) |
| 谁能访问 | 只有你本人 | 你 + 客户(看你给不给) |
| 权限等级 | 最高:全量资料,含客户资料 | 必须降级:客户资料不上云 |
| 解决什么 | 你自己的第二大脑、可派活 | 外出/手机访问、客户共用产品资料 |
| 部署动作 | 双击 start_本人模式.bat | 需先续 CloudBase 环境(11-22 到期) |
三个上云层级,风险从低到高:
① 只同步金融产品资料(已落地 · 推荐):本地资料库 → 客户 H5 已实现
自动同步(完整链路见第十节);小程序顾问端那条通道仍需本人上传、无法自动化,
详见 金融产品资料_上云SOP.md,上传前跑 tools/prepare_cloud_upload.py 做合规体检。
② 整个分身上云托管:外出也能问。Dockerfile + 令牌鉴权已备好,但不是"推上去即可" ——
上云前必须先完成:密区零出网(现已落地)、强制登录 + 强随机令牌、https 与域名、监控与回滚演练、以及"客户资料不上云"的复核;
代价是资料上公网,必须开 PUBLIC_MODE=1 + 强令牌 + https。
③ 客户资料上云:不建议——与"仅本人可见"红线直接冲突。
结论:只要还要"客户资料仅本人可见"和"最高权限可操作",本地这一步就省不掉。
上云解决的是"外出访问"和"客户共用产品资料",不替代本地大脑。
九、安全边界:哪些数据会离开本机
- 本地部署:服务、索引与资料文件都在你自己的电脑上;资料不进版本库,分身只读,不修改任何资料文件
- 检索本身完全离线:BM25 检索、DuckDB 精确算数、出处比对都在本机完成,断网也能问答
- 但有两条例外出网,对外讲解必须讲清(详见下方两条)
① 云端大模型问答:开启 LLM 后,会把「问题文本 + 命中的资料片段」发给云端模型,用来组织成连贯回答;
一旦命中密区(薪酬 / 客户资料等)就自动禁用云端,只在本机返回原文与出处,零外发;任务卡走同一道闸门。
② 金融产品资料同步客户 H5:可共享的金融产品资料经合规剥离(渠道中收 / 佣金等)后生成
kb-extra.json 上传 COS,客户 H5 才能查到(完整链路见第十节)。客户资料区永不参与同步、永不上云。
演示时怎么说:start.bat 只读虚构样例、两条外发通道都不触发;start_演示同步.bat / start_本人模式.bat
才会走第 ② 条。要不要连云端大模型、要不要同步客户 H5,都能在启动前关掉 —— 但不要把「本地部署」讲成「全离线、资料绝不出网」,要按上面两条如实说明。
工程上的兜底(11-09 加固,可简讲):① 密区判定收敛到服务端单一真源,问答 / 回答可见性 / 任务卡 / 结构化查数四条通道同源,不再出现「问答拒了、任务卡却放行」;
② 启动黑窗口打印「已启用资料格式」与「强制登录是否开启」,缺依赖或未开鉴权会醒目告警(页面顶部也会出现红色横幅);
③ 同步链路只对「金融产品资料」目录本身放行,误把资料父目录指过去会被拒绝,客户资料区不可能被推上 COS。
十、本地资料库 → 客户 H5:自动同步(已落地)
客户在 laomai.net/finance 问产品,用的是 H5 自己的知识库,不是分身这份索引。
过去只能手工改页面把资料"搬"过去;现在改成自动同步:
链路:放进 资料/金融产品资料/ 的文件 → 分身检测到变更(每 15 秒)→
解析(pptx / pdf / docx / xlsx)→ 按产品拆成条目 → 生成 finance/kb-extra.json →
上传 COS → 客户刷新 H5 自动并入检索池。无需改页面、不碰小程序。
触发:演示同步模式(start_演示同步.bat)或本人模式(start_本人模式.bat)下丢文件即自动同步;
演示模式(start.bat)只读虚构样例,绝不上云。手动补同步:
python profile-card/tools/sync_finance_kb.py(先加 --dry-run 预览内容)。
合规硬闸:同步前强制剥离 「渠道中收 / 佣金 / 提成 / 代理费」;
剥离后若仍残留,脚本直接中止、绝不上传。客户 H5 只呈现交费方式、保险期间、
投保年龄、产品亮点、分红实现率等"资料查询·条款解读"信息,不含任何渠道费用。
为什么不在"顾问端"点上传?小程序是沙箱,读不到你电脑上的资料目录;
且顾问端上传进的是另一套小程序知识库,客户 H5 根本不读它。所以触发点放在
有文件的那台电脑上,才真正打通「本地资料 → 客户可问」。
十一、共用金融资料库 · 三模式权限模型
boss-agent 分身与金融助手 H5 共用唯一一套金融产品资料,真源 = 资料/金融产品资料/。
同源派生两份视图:① 原始全文(含渠道中收,仅本人可分身问答)② 剥离佣金后的结构化条目(kb-extra.json,客户 H5 只读)。
| 模式 | 读取资料 | 同步客户 H5 | 用途 |
演示(纯样例) start.bat | 虚构样例(demo-kit/data) | 否(闸门自动挡) | 讲权限分级 / 密区,不碰真实资料 |
演示同步 ⭐ start_演示同步.bat | 金融产品资料 (不读客户资料) | 是 | 客户现场演示共用资料库 |
本人 start_本人模式.bat | 金融产品资料 + 客户资料 | 是 | 你自己用(含客户资料) |
"增改删"怎么做:直接在 资料/金融产品资料/ 文件夹里 放新文件 / 覆盖同名 = 改 / 删文件 →
约 15 秒自动重建索引并同步客户 H5,无需改代码、不重跑部署。页面右上角"已自动学会新资料"及
/api/health 的 index_version 上涨即为生效证据。
新增任何产品都自动可答(通用机制):sync_finance_kb.py 给每条资料自动抽取
产品名(name) / 机构(org) / 机构简称(orgShort),金融助手 H5 用这些字段做「实体感知检索」
—— 资料里出现「中汇人寿/新华人寿/XX保险」任一词,问到即精确命中、不被中邮通用问答抢答。
所以以后你往资料夹丢任意新产品的 pptx/pdf,无需改任何代码,客户 H5 就能答该产品的问题。
演示纪律:客户面前只用"资料文件夹 / 资料台"展示清单与状态,问答环节一律放到客户 H5(laomai.net/finance);
不要在客户面前以老板身份在分身里问产品资料并展开出处 —— 原始 pptx 含"渠道中收",出处会带出这段内部数字。
十二、金融助手「智能 / 普通」开关与实时行情(对外讲解用)
客户 H5(laomai.net/finance)卡片头部的 智能 / 普通 开关:开 = 智能(持有云端令牌 → 混合模式 → 检索在本地、生成在云端 SCF→DeepSeek);
关 = 普通(纯本地检索、零联网)。令牌只需登录一次,顾问端 / 法商·企业专家 / 云端问答全站通用;顾问端「退出登录」会完整降级回普通。
| 你看到的现象 | 真实原因 | 怎么处理 |
| 问金价 / 大盘,回答「我这边不存实时数字」 | 本次没连上云端:开关在「普通」,或云端请求失败后降级成本地兜底 | 看回答底部「来源」标签;按提示点「重新问一次(连云端)」或「切到智能模式并重试」 |
| 开关显示「智能」却仍不报数字 | 启动令牌校验通过(开关亮),但随后那一次问答请求超时 / 502 / 手机弱网中断;旧版会静默降级,看不出原因 | 现已写明具体失败原因(令牌失效 / 超时 / 网络 / 后端状态),并给一键重试;20 秒超时自动落地,不再卡在「正在思考…」 |
| 演示模式(前端直连)问行情 | 前端直连没有行情源,交给模型会编造数字,故刻意拦截 | 切「混合模式·云端智能」或「安全模式·后端代理」,由后端拉腾讯 / 新浪实时快照 |
| 回答带具体数字 | 云端已成功调用,来源标签为「云端大模型 · 知识库增强」 | 正常;数据为盘中快照、可能有延迟,仅报事实不预测 |
行情数据链路:后端 SCF 识别行情类提问 → 从腾讯 gtimg / 新浪公开接口拉贵金属与指数快照 → 合并进 context → DeepSeek 组织答案并直接报出具体数字(系统提示词明确要求;本地「不报数字」话术不会进入云端上下文)。行情由后端独立拉取,前端不持有任何行情密钥。
合规:行情只报「已发生的事实快照 + 延迟提示」,不预测涨跌、不给买卖建议;涉及「该买 / 收益 / 推荐」等词由合规硬拦截转人工。
十三、现场演示:一道登录门 + 一键切员工(最简可演示版)
2026-11-08 定稿的最简可演示版:分身只由老麦本人操作、在客户面前演示,不发给客户自行操作。首页机器人入口保持不变 —— 访客点「进入分身」仍只提示「仅老麦本人可用」,本人长按机器人(或首页链接带 ?boss=1)直达。
为什么加一道登录门:首页只拦住了「点按钮」,拦不住「地址栏直接输内网地址」。现在所有 /api/* 都要求有效本人令牌,无令牌 / 错令牌一律 401;令牌只在首次输入一次,浏览器记住,之后双击即用。
| 现场动作 | 客户看到什么 |
| 双击 start.bat 起服务,长按机器人进入 | 首次输入一次本人访问码(之后免输) |
| 问「张三工资多少」 | 老板端:出具体数字 + 出处文件 |
| 点一下「员工」按钮 | 屏幕不重新提问、不刷屏:刚才那条带数字的回答就地消失,原位留一条「🔒 已按员工视角隐藏」 |
| 点回「老板」 | 被隐藏的回答原位自动还原:不重新提问、不刷屏、不请求云端,刚才那条数字和出处原样回到屏幕 |
为什么改成「就地隐藏」而不是重新问一遍:早期版本切身份会把上一句自动重问一次,结果屏幕上既有老板那条带数字的回答、又多出一组重复问答,客户容易看成「系统重复提问」。现在让屏幕直接跟着身份变:回答气泡由服务端打上 staff_visible 标记,切到员工时把老板专属回答物理移除(连同数字一起从页面元素里消失,DOM 和「查看源代码」都查不到),原位留一条不含任何数字的占位锁;点回「老板」则原位自动还原,不重新提问也不发请求。出处不含密区的普通问答(如「出差报销标准是多少」)会原样保留,不会被误删。任务卡与「结构化查数」结果表格同样按身份清理与还原。
还原是怎么做到的(边界要说清):切到员工时,被移除的那段内容只暂存在当前页面的内存里(挂在占位锁节点上,不写进 HTML、不写 localStorage),所以员工视角的页面元素里没有数字,刷新页面即清空。它只是演示态的视觉降权,不是权限边界 —— 将来若真做多用户账号、公网部署或放真实资料,必须改成「服务端按身份不下发」,不能靠前端暂存还原。对外话术仍按下一节:只讲「同一份资料,按岗位看到不同内容」。
判据同源,不另抄词表:可见性由服务端按与拒答逻辑完全相同的判据计算(问题命中密区词 / 出处含密区片段 / 结构化结果来自密区表),前端只按标记渲染,不自己判断哪些内容敏感。这样「老板能看到、员工看不到」在前端和后端是同一套标准。
注意一个容易被误判的例子:样例里「回款台账」的出处被标了密区,所以老板问「华强那批货回款了没」这条回答引用了密区出处,切到员工时也会被隐藏——这是权限分级正确生效,不是 bug;员工自己问同一句得到的是过滤密区后的另一份答案,不是老板屏幕上那条。讲到这里可以说「凡引用了密区出处的回答,一律不留在员工屏幕上」。
对外话术边界(重要):这是「权限分级的效果演示」,本质是同一账号的演示态降权(只许降、不许升),不是已交付的多用户账号体系。准确说法:「同一份资料,按岗位看到不同内容」。不要说「已实现员工端 / 多级权限系统」,避免客户追问「那我员工怎么登录」时被问穿。
演示前 60 秒检查:① 黑窗口保持打开、[selfcheck] 强制登录:已开启 且页面顶部没有红色横幅;② /api/health 返回 200(关窗即停服务);③ 手机与电脑在同一 Wi-Fi(机器人指向本机内网地址,客户用自己 4G 扫名片打不开);④ 一律用 start.bat 的虚构样例,不要用「本人模式」,真实资料一个字节都不出现在客户面前。
什么时候才升级:客户提出「给员工各发一个账号」→ 才做真多用户;「想回去自己试 / 发链接给团队」→ 才公网化;「要放真实资料」→ 必须先解决密区出网,且演示仍走虚构样例。今天的登录门与降权规则是将来多用户体系的地基,不会白写。
本页说明随 demo-kit 一同维护,客户演示时可直接照读。