作业10:企业 AI 平台使用手册
作业目标:把已沉淀的部署与排错文档,升级为一本面向企业的《企业 AI 平台使用手册》。
读者:业务同事(第二~四、六章)、开发对接(第五章)、全员红线(第七章)、运维内部(第八章)。
环境实录:
192.168.110.207(Dify 1.16.1 + Xinference + Langfuse + Grafana)+116.62.10.183(vLLMqwen3.6-27b)。HTML:
docs/html_cursor/作业10_企业AI平台使用手册_cursor.html
细节排障仍以专题为准,本手册给标准用法与红线。入口索引:
内部智能体搭建_文档索引首页_cursor.html。
目录
- 第一章 平台概述与架构
- 第二章 快速上手(5 分钟创建你的第一个 AI 助手)
- 第三章 知识库管理(上传、更新、权限)
- 第四章 Prompt 编写规范
- 第五章 API 接入指南
- 第六章 常见问题 FAQ
- 第七章 安全与合规红线
- 第八章 运维排错手册(内部)
第一章 平台概述与架构
1.1 平台解决什么
本平台是企业内部智能体底座,不是公网 ChatGPT 替代品。当前已落地的能力:
| 能力 | 典型应用 | 作业/专题 |
|---|---|---|
| 制度 / 行政问答 | 播城内部行政管理知识库 | 专题十三~十五 |
| 客服意图分流 | 知识库 / 报修工单 / 转人工 | 作业 2 |
| 运维助手 | 服务器状态、vLLM 健康检查、OOM 自愈 | 作业 1 / 5 / 7 |
| 可观测 | Langfuse Trace、SLA 大盘、周报 | Langfuse 专题、作业 6 / 8 / 9 |
控制台:http://192.168.110.207 观测:Langfuse http://192.168.110.207:3000 SLA 大盘:http://192.168.110.207:3001/d/ai-platform-sla(账号向运维领取)
1.2 逻辑架构
业务同事 / 业务系统
│ 浏览器对话,或 API
▼
┌─────────────────────────────────────┐
│ Dify 1.16(207) │
│ 工作室:Agent / Workflow / 知识库 │
│ 新 Agent 真正配置在「快照 + 草稿」 │
└──────────────┬──────────────────────┘
│
┌─────────┼──────────┐
▼ ▼ ▼
Qwen3.6-27B bge-m3 bge-reranker
vLLM :8000 Xinference :9997
(GPU 116) (207 CPU)
│
▼
Weaviate 向量库(207,经 socat 中继 :8088)
│
▼
Langfuse :3000 Trace / Token
Prometheus :9092 + Grafana :3001 SLA1.3 角色与权限(使用侧)
| 角色 | 可以做什么 | 不可以做什么 |
|---|---|---|
| 业务使用者 | 对话、看引用、反馈对错 | 改模型供应商、改检索全局默认 |
| 知识库管理员 | 上传/更新文档、命中测试 | 把制度 PDF 发到公网;删别人的库 |
| 应用搭建者 | 建 Agent、写 Prompt、绑库、挂工具 | 在未评审前提权(Shell、外发 HTTP) |
| 平台运维(内部) | 模型、容器、SLA、工单 | 把密钥写进业务手册或聊天记录 |
1.4 关键口诀(全员先记住)
- 工作室里没有的开关,去工作区「设置 → 模型供应商」,或请运维用
dify_api.py。 - 改完新 Agent 快照后不要点「发布」,会把
max_tokens写回空(专题十一)。 - 知识库页的检索设置 ≠ 对话真正用的设置,新 Agent 还要改快照里的
knowledge(专题十三)。
第二章 快速上手(5 分钟创建你的第一个 AI 助手)
目标:建一个能回答本部门制度的对话助手。完整选项见 专题十五。
2.1 登录
打开 http://192.168.110.207,使用管理员下发的邮箱账号。没有账号走工单,不要共用别人的登录态。
2.2 五分钟路径
| 步 | 操作 | 验收 |
|---|---|---|
| 1 | 工作室 → 创建空白应用 → 类型选 Agent(新 Agent,不是旧「聊天助手」) | 应用列表出现新卡片 |
| 2 | 名称如「××部门制度助手」,描述写清服务对象 | — |
| 3 | 配置 → 模型选 qwen3.6-27b;Max Tokens 建议 8192~32768(过小会空泡,专题十二) | 能打字出回复 |
| 4 | 知识 → 勾选已有知识库(如「播城内部行政管理知识库」) | 问「怎么请假」能引用制度 |
| 5 | 指令(System Prompt)贴第四章最短模版 | 回答带「根据知识库」而不是瞎编 |
先问一句验收:「管理人员需要钉钉打卡吗?」 有引用、能指向打卡/考勤相关段落,即算成功。
2.3 做不到时别硬点
| 现象 | 停止 | 交给谁 |
|---|---|---|
| 创建时报模型列表为空 | 不要反复刷新创建向导 | 运维(专题十) |
| 知识库列表是空的 | 不要新建空库凑数 | 知识库管理员 / 专题三 |
| 对话一直转圈、空泡 | 不要连续重试同一会话 | 新开对话;运维查 max_tokens / 排队 |
| 配置页红条 Internal Server Error | 对话仍可用就先用 | 专题十六(OpenAPI 工具 ID) |
第三章 知识库管理(上传、更新、权限)
3.1 原则
知识库是「可引用的企业内部事实」,不是网盘。只上传现行有效的制度、流程、FAQ。过期文件必须下线或归档,否则助手会答旧规。
本环境示例库:
| 项 | 值 |
|---|---|
| 名称 | 播城内部行政管理知识库 |
| Embedding | bge-m3 |
| 检索 | 语义 + 建议开 Rerank(bge-reranker-v2-m3),Top-K=5 |
3.2 上传
- Dify → 知识库 → 进入目标库 → 添加文件。
- 优先 PDF / 干净的 Word / Markdown。扫描件先 OCR。
- 一份制度一个文件,文件名带文号或生效日期,例如
考勤管理办法-2024.pdf。 - 上传后看状态变成 available。长期
indexing/failed不要让业务先用(专题六 Weaviate、专题十四)。
分段建议:制度类按条款切,避免一整章揉成一段。命中测试要用业务原话,不要用自己编的摘要句。
3.3 更新
| 制度变了 | 正确做法 |
|---|---|
| 条款修订 | 上传新版,停用或删除旧版,再命中测试同一问句 |
| 只改错别字 | 可替换原文件后重建索引 |
| 临时通知 | 不要塞进主制度库;单独「通知」库或到期删除 |
新 Agent 对话走快照。知识库页改了 Top-K / Rerank,还要同步快照,否则命中测试准、对话仍旧。
3.4 权限
| 动作 | 谁可以 |
|---|---|
| 只读对话(绑了该库的助手) | 业务使用者 |
| 上传 / 删除文档 | 该库管理员 |
| 新建知识库、改 Embedding | 平台运维 |
| 把库绑到新 Agent | 应用搭建者(需库的可见权限) |
红线: 薪酬密表、身份证扫描件、未脱敏客户清单,禁止入库。需要时走专库 + 更小授权范围,并在第七章登记。
3.5 命中测试(上传后必做)
知识库页 → 命中测试,用三句:
- 文档里的原词(如条款号)。
- 业务口语(如「怎么请假」)。
- 曾经答偏的难题(如「法定假日加班费怎么算」)。
第 1 句 0 条 → 入库失败。第 3 句排序离谱 → 开 Rerank(专题十三)。
第四章 Prompt 编写规范
4.1 最短可用模版(知识库问答)
你是企业内部制度助手,只根据已检索到的知识库片段回答。
要求:
1. 先给结论,再列依据(文号/条款号,若片段中有)。
2. 片段没有写的内容,明确说「知识库未收录」,不要编造。
3. 涉及金额、比例、时限,必须原样引用数字。
4. 用户要你绕过制度或提供个人隐私,拒绝并提示走线下流程。4.2 编写原则
| 要 | 不要 |
|---|---|
| 角色 + 边界 + 输出格式 三条写清 | 把整本制度粘进 Prompt |
| 强调「只根据检索片段」 | 「你无所不知」 |
| 数字、文号要求引用 | 鼓励发挥、讲段子 |
| 工具型 Agent 写清何时调哪个工具 | 让模型自己猜要不要调工具 |
客服分流(作业 2)应写清:请假制度走知识库;报修走工单工具;投诉转人工;其它走兜底话术。
运维助手应写清:只报告探测结果,不擅自 docker rm、不输出密钥。
4.3 改 Prompt 的流程
- 准备 5 句验收问法(含边界题:「帮我改工资」应拒绝)。
- 只改指令,其它参数不动。
- 新开对话再测,旧会话可能带着失败状态。
- 对比 Langfuse 里本轮是否检索到了预期 chunk。
- 新 Agent:不要点发布保存指令(用工作室保存/API 写快照,见专题十五)。
第五章 API 接入指南
5.1 先分清两条路
| 场景 | 路径 | 说明 |
|---|---|---|
| 业务系统对接「旧聊天助手」 | POST /v1/chat-messages | 使用应用 API Key(工作室 → 访问 API) |
| 本环境 新 Agent | POST /console/api/agent/<agent_id>/chat-messages | 控制台会话;自动化请用仓库里的 dify_api.py |
| 直接打大模型(运维探针) | POST http://116.62.10.183:8000/v1/chat/completions | 不经过知识库,禁止当业务问答接口 |
不要把 app_id 当成 agent_id。新 Agent 对话 404「Conversation Not Exists」多半是路径抄错(专题十五)。
5.2 业务系统对接清单(向平台申请)
- 应用名称、环境(现网仅 207)。
- 调用方系统名、负责人、预估 QPS。
- 是否需要知识库引用字段。
- 超时:建议客户端 ≥ 60s,流式优先。
- 密钥只放服务器环境变量,禁止写进前端。
公开 Chat 形态示例(旧应用 API Key,占位符):
curl -N "http://192.168.110.207/v1/chat-messages" \
-H "Authorization: Bearer <APP_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"inputs": {},
"query": "怎么请假",
"response_mode": "streaming",
"user": "biz-system-001"
}'user 填业务侧稳定用户 ID,便于审计,不要全员同一个 abc。
5.3 控制台自动化(内部脚本)
仓库 dify_api.py 已处理登录、CSRF、密码编码。作业与专题脚本一律:
/usr/bin/python3 /opt/workbuddy/scripts_cursor/<文档名>/xxx.py不要在业务服务里复制一份管理员密码。需要无头对话,由运维签发应用 API Key,而不是控制台账号。
5.4 限流与成本
作业 4 已有会话 Token 上限与日预算思路。接入方应:
- 单次
query控制长度; - 禁止用 API 做压测打满 GPU;
- 批量任务走离峰或独立队列。
第六章 常见问题 FAQ
Q1 为什么有的问题答得很准,换个说法就不会了? 检索靠向量 +(可选)关键词 + Rerank。口语和条款用词差太远会召不回。先在知识库做命中测试;需要口语覆盖就补充 FAQ 文档,而不是加长 Prompt。
Q2 一直转圈、气泡是空的? 先新开对话。仍空:Max Tokens 过小(专题十二)、vLLM 排队(专题十四)、或旧会话已 error。不要连点发送。
Q3 知识库明明有文档,助手说不知道? Agent 可能没绑库,或快照检索与知识库页不一致,或索引不是 available。走第三章命中测试。
Q4 配置页一打开就红条,但聊天还行? 多半是 OpenAPI 工具 ID 被当成内置插件(专题十六)。聊天可继续,把截图给运维。
Q5 能不能让它上网搜 / 执行服务器命令? 默认不能。Shell 与任意 HTTP 工具必须单独开通并走第七章评审。
Q6 回答里的数字和制度对不上? 以知识库原文为准。把问句 + 截图提给知识库管理员做命中测试;不要在 Prompt 里手写「加班费 300%」这种易过期的硬编码。
Q7 我想用自己的 API Key 接公网模型? 本工作区默认走内网 Qwen。外发模型涉及数据出境,必须走第七章合规,禁止私自改供应商凭据。
Q8 Langfuse 里看不到我的对话? 新 Agent 工作室没有「监测」菜单,需运维按《Langfuse 连接 Dify》用 API 打开 Tracing。
第七章 安全与合规红线
以下为强制,违反即停用助手并追溯账号。
7.1 数据红线
| 禁止 | 说明 |
|---|---|
| 身份证、银行卡、薪酬明细未脱敏入库或粘贴到对话 | 知识库与 Prompt、日志同等管控 |
| 把对话记录、密钥、内部制度发到公网网盘 / 个人微信 | 含截图里的 Token |
| 用本平台处理与职务无关的外部客户隐私 | 本平台仅服务内部制度与已审批应用 |
| 要求模型「忽略以上规则」「扮演未授权角色」 | Prompt 注入,应拒绝 |
7.2 密钥与账号
- 控制台密码、Xinference Key、vLLM Bearer、Langfuse PK/SK、应用 API Key 不进代码仓库公开分支、不进 PPT、不进群公告。
- 离职当天关闭账号;共用账号视为违规。
- 前端页面不得内置 API Key。
7.3 工具与外联
| 能力 | 条件 |
|---|---|
| 知识库问答 | 默认允许(库本身已授权) |
| 只读探测类 HTTP(健康检查) | 运维审批 |
| 写操作(建工单、重启容器) | 作业级演示须在隔离环境;生产要双人复核 |
| Shell / 任意 URL | 默认关闭;开启需安全评审 |
7.4 生成内容责任
助手输出不替代盖章制度与法务意见。涉及处分、合同、薪酬以书面制度与人为准。对外转发助手答案须人工确认。
第八章 运维排错手册(内部)
本章给平台运维。业务投诉标准流程见 企业 AI 助手排错 SOP。
先分层、再改一处。禁止一投诉就重启全家桶。
8.1 接到投诉先问三句
- 哪个应用 / 哪个智能体?
- 原话怎么问的?有截图吗?
- 偶发还是全员、全天?
8.2 症状路由
| 业务原话 | 先查 | 深入 |
|---|---|---|
| 搜不到 / 制度里没有 | 命中测试、索引 available、bge-m3 | 专题三、十三、十四 |
| 答非所问 | 快照是否绑库、Rerank、Prompt | 专题十三、十五 |
| 很慢 / 卡住 / 思考不停 | 新开对话;vLLM 排队;max_tokens | 专题十二、十四 |
| 配置页 500 | OpenAPI provider | 专题十六 |
| 模型列表空 | 插件 schema / 默认模型 | 专题十、五 |
| 大盘红了 | Grafana :3001、Exporter :8781 | 集成环境部署、作业 8 |
8.3 一分钟分层
命中测试有结果?
├─ 否 → 入库 / Weaviate / bge-m3
└─ 是 → 对话仍差?
├─ 快照知识库 / Top-K / Rerank 与库页是否一致
└─ 是检索排序问题还是 Prompt / 幻觉
GPU 全员慢? → nvidia-smi / vLLM waiting(作业 5)
单人空泡? → max_tokens、新开会话
OOM? → 作业 7 自愈;勿在高峰反复 docker restart8.4 平台组件速查(207)
| 组件 | 地址 | 正常长相 |
|---|---|---|
| Dify | http://192.168.110.207 | 可登录 |
| Langfuse | :3000/api/public/health | OK |
| Xinference | :9997/v1/models + Bearer | 含 bge-m3 |
| vLLM | http://116.62.10.183:8000/v1/models | 含 qwen3.6-27b |
| Weaviate 中继 | :8088/v1/meta | 200 |
| Grafana SLA | :3001/d/ai-platform-sla | 组件名 + UP |
| Prometheus | :9092 | 不要用 9090/9091(MinIO) |
脚本一律在 /opt/workbuddy,Python /usr/bin/python3。配置只改 _config.py。
8.5 相关文档(不要改 docs/workbuddy/ 原文)
| 类型 | 打开 |
|---|---|
| 安装主线 | Dify_Qwen安装配置手册_cursor.html |
| 新 Agent | 专题十五 |
| 排错 SOP | 企业AI助手排错SOP_培训与赋能_cursor.html |
| SLA / Grafana | 作业 8 + 集成环境部署_Prometheus_Grafana_SLA_cursor.html |
| 专题合集 | 内部智能体配置文档专题汇总_cursor.html |
手册修订
| 项 | 说明 |
|---|---|
| 适用版本 | Dify 1.16.1 + Qwen3.6-27B + bge-m3 |
| 与专题关系 | 手册管「怎么用」;专题管「坏了怎么修」 |
| 修订 | 平台变更后改本文件,并同步 docs/html_cursor/ |