Ultralytics YOLO27: 加入候补名单。
获取 YOLO 许可
返回 Ultralytics 术语表

Chatbot

聊天机器人是一种通过文本或语音进行自然语言对话的软件,从 ELIZA 这类基于关键词匹配的脚本到 ChatGPT 这类 LLM 聊天应用都属于此类。

聊天机器人是一种通过文本或语音,以自然语言与人交谈的计算机程序。通常认为,约瑟夫·魏泽鲍姆在 MIT 编写并于 1966 年发布的 ELIZA 是第一个聊天机器人:它的 DOCTOR 脚本通过匹配关键词并将用户的话转成问题来模仿心理治疗师。魏泽鲍姆看到用户(包括他自己的秘书)把心事告诉 ELIZA,仿佛 ELIZA 能理解他们,这让他深感不安。此后,聊天机器人经历了三代发展,从基于规则的脚本到基于意图的机器人,再到大语言模型(LLM)。OpenAI 于 2022 年 11 月 30 日推出 ChatGPT,使第三代聊天机器人走向主流;如今,“聊天机器人”通常指 ChatGPT、Claude 或 Gemini 等 LLM 的聊天界面。

聊天机器人的工作原理#

  • 基于规则的聊天机器人:将用户的话与手写模式匹配,并从模板中选择回复。这类机器人行为可预测、成本低,但遇到开发者未预料到的表达方式时就会失效。
  • 基于意图的聊天机器人:自然语言理解(NLU)分类器会将每条消息映射到一个意图(例如查询余额),并提取账户或日期等细节,然后由设计人员编写的对话流程决定回复内容。银行、航空公司和电信公司采用这种方式构建客服机器人,因为每条回复都可以提前审核。
  • LLM 聊天机器人:根据截至当前的对话内容,逐个词元生成回复。系统提示设定机器人的角色和规则,模型则负责处理开发者未预料到的表达方式。

LLM 聊天机器人背后的模型是Transformer,经过指令微调和基于人类反馈的强化学习(RLHF)训练以进行对话,并且不同调用之间没有记忆。应用会存储对话,并在每条新消息到来时,按照模型的聊天模板格式化后发送完整对话:

from transformers import AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained("HuggingFaceTB/SmolLM2-135M-Instruct")

# 聊天机器人会存储对话,并在每个新轮次中发送完整对话
messages = [
    {"role": "system", "content": "You are a support assistant for an online store."},
    {"role": "user", "content": "Where is my order?"},
    {"role": "assistant", "content": "Could you share your order number?"},
    {"role": "user", "content": "It's 4417."},
]

# 聊天模板会将历史记录展平为一个提示,供模型继续生成
prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
print(prompt)

打印出的提示会用 <|im_start|> 和 <|im_end|> 标记包裹每轮对话及其角色,并以一个未闭合的 <|im_start|>assistant 行结尾,因此模型接下来的词元会成为回复;“是 4417”只有在先前的问题也包含在同一提示中时才有意义。每轮对话都会让提示变长,因此在超过上下文窗口之前,系统会裁剪或总结较长的对话;而提示缓存可避免每轮都重新处理未更改的历史记录。

依据、工具与图像#

仅根据训练数据回答问题的客服聊天机器人可能会自信地给出错误政策,因此生产环境中的机器人会先通过检索增强生成(RAG)检索相关文档和账户数据,用AI 护栏检查输入和草稿,并在无法为回复提供依据时转交给人工:

能够通过函数调用执行工具(例如查询订单)的聊天机器人正逐渐成为AI 智能体,而多模态聊天机器人则通过视觉语言模型(VLM)在一轮对话中接收照片和屏幕截图。Ultralytics LLM 接口可以向任何兼容 OpenAI 的聊天模型发送提示、图像或完整消息历史,并返回提供方自己的响应对象。因此,YOLO26流水线可以在检测到画面中有人之后,再让多模态模型描述场景。

风险#

企业部署聊天机器人后,幻觉可能带来法律后果。在 2024 年 2 月裁定的 Moffatt 诉加拿大航空案中,加拿大航空网站上的聊天机器人告诉一位悲痛的乘客,可以在旅行结束后申请丧亲票价折扣,这与航空公司的实际政策相矛盾。卑诗省民事调解仲裁庭驳回了加拿大航空关于聊天机器人应对自身陈述负责的主张,并判令航空公司支付差额。聊天机器人还会遭遇提示注入和越狱攻击;经过取悦用户训练的模型也可能出现AI 谄媚,认同错误说法而不是纠正它们。

  • 虚拟助手:Siri 或 Alexa 等软件,可在多个应用和设备间执行请求。聊天机器人通常存在于某个网站、应用或消息渠道中,主要专注于对话。
  • AI 智能体:通过选择并执行操作来实现目标的系统,通常会在没有人工介入的情况下完成多个步骤。聊天机器人一旦不仅回答问题,还通过工具采取行动,就成为智能体。
  • 对话式 AI:聊天机器人和助手背后的更广泛技术领域,包括语音识别、NLU、对话管理和文本转语音。

探索解决方案

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

使用 Ultralytics YOLO 将无人机和航空影像转化为农业、水产养殖、保护工作和地理空间分析的实时洞察。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 将计算机视觉应用于航空航天领域,包括飞机检查、跑道 FOD 检测、机场地面作业和复合材料缺陷检测。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来