胡慧华
菜单
首页人工智能机器学习深度学习项目实践关于我
跳至课程正文
← 人工智能课程

ARTIFICIAL INTELLIGENCE · COURSE 02

把一个需求变成 AI 可以解决的任务

从模糊需求中明确输入、输出、约束和成功标准。

第 02 / 18 课20–30 分钟(含实验)无需密钥 · 本地实验
透明棱镜连接规则网格、数据点与神经网络,呈现人工智能的不同方法
先建立一张 AI 地图
  • 任务拆解
  • 成功标准
01

START WITH A QUESTION

“做一个聪明客服”还不是可执行需求

团队希望客服更高效,于是提出“做一个能解决所有问题的 AI”。这句话没有说明用户是谁、输入是什么、什么算成功。即使模型能回答很多问题,也无法判断它是否真的减轻了工作。

把目标缩小到“为售后人员整理报修描述,并提出需要补问的信息”,就能开始设计。输入是一段报修文字;输出是设备、地点、故障和缺失项;涉及派单等行动仍需人员确认。任务越明确,越容易选择方法和验证收益。

02

BUILD YOUR VOCABULARY

先把三个概念讲清楚

CONCEPT 01

输入与输出

输入是系统实际能获得的信息,输出是用户要拿去继续工作的结果。不要把不存在或没有权限取得的数据当成输入。

放进场景看

输入报修描述,输出结构化报修草稿,而不是直接承诺已经维修。

CONCEPT 02

约束

规定系统在什么条件下工作,包括时长、预算、权限、错误容忍度和人工复核要求。

放进场景看

只使用当前用户有权查看的资料;信息不全时先补问。

CONCEPT 03

成功标准与基线

成功标准是验收时可观察的条件;基线是用来比较的现有做法。指标应连接业务目标,不能只统计生成了多少字。

放进场景看

对比人工整理耗时,并统计关键字段正确率与需要重写的比例。

03

FOLLOW THE PROCESS

把原理放进完整流程

  1. 01

    定位用户

    描述谁在什么时刻遇到什么阻力,先选一个高频任务。

  2. 02

    界定输出

    给出一份合格结果的样例,并列出不能做的行动。

  3. 03

    收集验收样例

    包含正常、信息缺失、含糊和越界输入,不只用演示里最顺利的问题。

  4. 04

    与原流程比较

    使用同一组样例比较时间与错误,再决定是否值得继续投入。

从一句愿望到任务说明
要素本课示例验证方法
用户售后工作人员访谈实际处理人员
输出可编辑的四字段草稿与人工参考答案比较
约束缺字段不自动派单专门测试信息不足的输入
收益减少整理时间比较同组任务的实际耗时
04

CHANGE ONE THING & OBSERVE

组装一份可以验收的任务说明

切换输出、指标和信息不足时的行为,观察它们是否共同支持“报修整理”这个目标。

INTERACTIVE LAB / 02
任务说明完整度:3 / 3
  • 输出与整理任务一致,用户可核对。
  • 同时检查关键字段与流程效率。
  • 缺字段可补问,不靠编造凑齐。
05

KNOW THE LIMITS

哪些结论不能直接推出?

指标很好,用户仍不好用

回答长度和调用次数反映使用情况,不能直接证明任务完成。需要检查正确性和流程收益。

让系统负责它无法验证的结果

整理报修信息不等于完成维修。输入中没有维修记录,就不能输出“已修好”。

06

READ, RUN & EXPLAIN

检查一份报修草稿是否缺字段

以下示例仅使用 Python 3 标准库,可复制到本地 Python 环境运行。先看每一行的作用,再修改一个输入观察结果;无需网络或密钥。

Python 3 · 完整示例下载 .py
required = ['地点', '设备', '故障']
draft = {'地点': '二楼', '设备': '空调'}
missing = []
for field in required:
    if not draft.get(field):
        missing.append(field)
print('需要补充:' + '、'.join(missing))

复制或下载只获取本课示例,不会自动执行。

逐行解释(7 行)
  1. 第 1 行required = ['地点', '设备', '故障']

    列表保存必须填写的三个字段,方括号表示按顺序存放的一组值。

  2. 第 2 行draft = {'地点': '二楼', '设备': '空调'}

    字典以字段名对应字段值;本例故意没有故障描述。

  3. 第 3 行missing = []

    先创建空列表,用来记录缺失字段。

  4. 第 4 行for field in required:

    依次取出每个必填字段,当前字段暂存在 field 中。

  5. 第 5 行 if not draft.get(field):

    get 读取字段;不存在或内容为空时,not 让条件成立。

  6. 第 6 行 missing.append(field)

    把缺失字段追加到列表中,缩进表示它属于条件分支。

  7. 第 7 行print('需要补充:' + '、'.join(missing))

    join 把字段名连接成一句话。本例应提示补充故障。

预期输出
需要补充:故障
07

CHECK YOUR UNDERSTANDING

换一个角度,检查自己是否理解

已回答 0 / 3 题 · 当前答对 0 题

1. 哪个需求更容易验收?
2. 缺少设备信息时,合理的输出是什么?
3. 为什么要设置基线?
08

TAKE IT WITH YOU

带走三个判断,再做一次迁移练习

  • 先写清用户、输入、输出与约束,再讨论模型。
  • 验收样例要覆盖失败情况,并与现有方法比较。
  • 系统输出的承诺不能超出它掌握的证据与权限。
参考与延伸阅读

本课例子、代码和模拟数据为教学设计。以下一手文档用于延伸核对,不代表对本示例的认证。