LLM: 第一阶段
人工智能辅助和加速 NLU 开发
LLM 实施的第一阶段侧重于机器人开发过程,特别是加速 NLU 开发。
LLM 第 1 阶段的真正优势在于,LLM 功能是在设计阶段而非运行阶段引入的。
这意味着推理延迟、大量使用、成本和 LLM 响应失常等因素只能在开发过程中出现,而不会在生产环境中暴露给客户。
在上面的例子中,一个复杂的句子被提交给 LLM,LLM 能够从句子中提取所有相关实体,并计算出旅行的总人数。
引入 LLM 是为了协助开发 NLU,其形式是将现有客户语句按语义相似的分组进行聚类,以便进行意图检测。一旦定义了意图标签和描述,就可以定义意图训练语篇。
LLM 还可用于实体检测等。
如下图所示,对话式人工智能实际上只需要以下五个要素。传统的 NLU 引擎可以与 SLM 结合使用。
自聊天机器人出现以来,人们的梦想就是拥有可靠、简洁、连贯且经济实惠的 NLG 功能。加上基本的内置逻辑和常识推理能力。
再加上管理对话上下文和状态的灵活途径,以及比 NLU 更为知识密集型的解决方案,SLM 似乎是完美的选择。
小语言模型(SLM)是自然语言理解(NLU)的良好辅助技术。小语言模型可在本地运行,开源模型可用于执行自然语言生成(NLG)、对话和上下文管理、常识推理、小型对话等任务。
将 NLU 与 SLM 结合使用,为聊天机器人开发框架奠定基础是非常可行的。
在本地运行 SLM 并使用具有上下文学习功能的增强生成方法,可以解决推理延迟、令牌成本、模型漂移、数据隐私、数据管理等问题。
人工智能辅助和加速聊天机器人开发
撰写文案和人物角色
LLM 颠覆的下一阶段是将 LLM/ 生成式人工智能用于聊天机器人和语音机器人的文案写作,并改进机器人的响应信息。
这种方法也是在设计阶段而非运行阶段引入的,它充当了机器人开发人员的助手,帮助他们撰写和改进机器人回复文案。
设计师还可以向 LLM 描述机器人的角色、语气和其他个性特征,以便设计出一致而简洁的用户界面。
这是一个转折点,LLM 的协助从设计时间扩展到了运行时间。
LLM 用于即时生成响应,并将其呈现给用户。第一批实施方案使用 LLM 回答域外问题,或根据文档搜索和 QnA 制作简洁的回复。
LLM 首次用于以下:
第一阶段的重点是在设计阶段利用 LLM 和 Gen-AI,这在减少不良用户体验、成本、延迟和推理过程中的任何畸变方面具有许多优势。
在设计阶段引入 LLM 是一个安全的途径,可以避免客户面临畸变或用户体验失败的风险。这也是一种降低成本的方法,而且不会面临将客户和 PII 数据发送到云中的挑战。
流程生成
随后,开发人员向机器人描述如何开发用户界面,以及对特定功能的要求,这是 LLM 和生成式人工智能(Gen-AI)更先进的实现方式。
随后,开发 UI 开始利用 LLM 和生成式人工智能生成流程,包括 API 占位符、所需变量和 NLU 组件。
LLM: 第二阶段
文本编辑
在第二阶段,LLM 被用于在向用户发送机器人响应之前编辑文本。例如,在不同的聊天机器人媒介上,适当的信息大小是不同的。因此,可以通过要求 LLM 总结、提取要点并根据用户情绪改变回复语气来轻松控制机器人回复。
这意味着对消息抽象层的硬性要求在某种程度上已被弃用。在任何聊天机器人/对话式人工智能开发框架中,消息抽象层的工作都是保存一整套机器人响应消息。
这些机器人响应信息有占位符,需要用特定的上下文数据来填充,以便响应用户。
必须为每种模式和媒介定义不同的响应集。LLM 让即时回复的制作变得更加容易。这就是我们期待已久的 NLG(自然语言生成)工具。
文档搜索和文档聊天
聊天机器人可以在推理时获得一份文档或一条信息,这样 LLM 就能为对话提供一个参考框架。
扩展这种方法有两个障碍,首先是 LLM 上下文窗口有限,其次是扩展这种方法。
RAG
RAG 可以解决上述问题。
提示链
对话式AI开发用户界面中加入了 "提示链 "功能,可以创建由一个或多个提示组成的流程节点,并将其传递给 LLM。
较长的对话回合可以用一系列提示串联起来,其中一个提示的输出可以作为另一个提示的输入。
LLM: 第三阶段
定制游戏场
技术供应商开始创建具有额外功能的自定义游戏场,并将其作为IDE和协作空间。
这使用户不再仅仅使用基于 LLM 的游戏场。定制游戏场提供了对多种模型的访问,可用于实验、协作和各种启动代码生成选项。
提示中心
Haystack 和 LangChain 都推出了基于社区的开放式提示中心。
提示中心有助于编码和汇总提示工程不同方法的最佳实践。让 Gen-Apps 成为与 LLM 无关的应用,在应用的不同阶段使用不同的模型。
无代码微调
虽然微调改变了 LLM 的行为,而 RAG 则为推理提供了上下文参考,但微调在近期并未受到应有的重视。
LLM: 第四阶段
提示管道
在机器学习中,管道可以被描述为一种端到端的结构,它协调了事件和数据流。
管道由触发器启动或启动,并根据特定事件和参数,按照流程进行处理,从而产生输出结果。
就提示流水线而言,在大多数情况下,流程是由用户请求启动的。该请求被定向到特定的提示模板。
自主代理
代理以自主的方式使用预先分配的工具来执行一项或多项操作。代理遵循思维链推理方法。
协调
从这一点出发,市场还没有真正跟上......协调是指为一个应用程序协调多个 LLM。
LLM 托管
困扰 LLM 实施的大多数问题都与 LLM 没有自我托管或托管在私有数据中心/云中有关。
推理响应延迟、模型漂移、数据管理等等,如果 LLM 是自我托管和管理的,这些问题都会迎刃而解。
LLM: 第五阶段
数据发现
数据发现是指识别企业内部可用于 LLM 微调的任何数据的过程。最好从联络中心现有的客户对话开始,这些对话可以是语音对话,也可以是文本对话。客户电子邮件、以前的聊天记录等也是很好的数据来源。
来自 Kore XO 平台的这个示例展示了如何根据语义相似性导入和聚类不同来源的信息。
这些数据应通过人工智能加速数据生产工具(潜在空间)来发现,在该工具中,客户的话语会根据语义相似性进行分组,这些聚类可以直观地表示如下所示,它们实际上是意图或分类;而分类对于 LLM 仍然很重要。
数据设计
下一步是数据设计,将发现的数据转换成 LLM 微调所需的格式。数据需要以特定的方式进行结构化和格式化,以作为可选的训练数据。设计阶段是对发现阶段的补充,在这一阶段,我们知道哪些数据是重要的,将对用户和客户产生最重要的影响。
因此,数据设计有两个方面,即数据的实际技术格式和培训数据的实际内容和语义。
数据开发
这一步需要对客户行为和数据性能进行持续监控和观察。可以通过观察模型中的漏洞来增强训练数据,从而开发数据。
数据交付
数据交付可以最好地描述为在推理中为一个或多个模型注入与使用案例、行业和特定用户环境相关的数据的过程。
LLM 会参考注入提示的上下文数据块,在每个实例中提供准确的响应。
各种数据交付方法往往被认为是相互排斥的,只有一种方法被认为是最终的解决方案。
造成这种观点的原因往往是无知、缺乏了解、组织机构在寻找权宜之计,或者供应商将其特定产品作为灵丹妙药。
事实上,对于企业实施来说,灵活性和可管理性必然需要复杂性。
这适用于任何法学硕士实施以及向法学硕士交付数据所遵循的方法。答案不是一种特定的方法,例如RAG或Prompt Chaining;而是一种方法。而是一种平衡的多管齐下的方法。