一种让人工智能聊天机器人全天交谈而不会崩溃的新方法

Newswise——当人类与人工智能对话涉及多轮连续对话时,驱动 ChatGPT 等聊天机器人的强大大型语言机器学习模型有时会开始崩溃,导致机器人的性能迅速恶化。

来自麻省理工学院和其他地方的一组研究人员查明了这个问题的一个令人惊讶的原因,并开发了一种简单的解决方案,使聊天机器人能够保持不间断的对话,而不会崩溃或减慢速度。

他们的 方法 涉及对许多大型语言模型核心的键值缓存(类似于对话内存)的调整。 在某些方法中,当该高速缓存需要保存比其容量更多的信息时,第一批数据就会被删除。 这可能会导致模型失败。

通过确保这些前几个数据点保留在内存中,研究人员的方法允许聊天机器人无论对话持续多长时间都可以继续聊天。

该方法称为 StreamingLLM,即使对话长度超过 400 万个单词,模型也能保持高效。 与另一种通过不断重新计算过去对话的一部分来避免崩溃的方法相比,StreamingLLM 的执行速度快了 22 倍以上。

这可以让聊天机器人在整个工作日进行长时间对话,而无需不断重新启动,从而使高效的人工智能助手能够执行文案、编辑或生成代码等任务。

“现在,通过这种方法,我们可以持久部署这些大型语言模型。 通过制作一个我们可以随时与之聊天的聊天机器人,并且它可以随时根据我们最近的对话做出回应,我们可以在一些新应用中使用这些聊天机器人。”以及 StreamingLLM 论文的主要作者。

肖的共同作者包括他的导师韩松,EECS 副教授、MIT-IBM Watson AI 实验室成员、NVIDIA 杰出科学家; 以及 Meta AI 的研究科学家 Yuandong Tian; 陈蓓迪,卡内基梅隆大学助理教授; 以及资深作者 Mike Lewis,Meta AI 的研究科学家。 这项工作将在国际学习表征会议上展示。

令人费解的现象

大型语言模型将数据(例如用户查询中的单词)编码为称为标记的表示形式。 许多模型采用所谓的注意力机制,使用这些标记来生成新文本。

通常,人工智能聊天机器人会根据刚刚看到的文本编写新文本,因此它将最近的令牌存储在内存中(称为 KV 缓存)以供以后使用。 注意力机制构建了一个包含缓存中所有令牌的网格,这是一个“注意力图”,它映射了每个令牌或单词彼此之间的关联程度。

理解这些关系是使大型语言模型能够生成类似人类文本的功能之一。

但是当缓存变得非常大时,注意力图可能会变得更大,从而减慢计算速度。

此外,如果编码内容需要的令牌数量超出了缓存所能容纳的数量,则模型的性能会下降。 例如,一个流行的模型可以存储 4,096 个令牌,但一篇学术论文中约有 10,000 个令牌。

为了解决这些问题,研究人员采用了“滑动缓存”,可以淘汰最旧的令牌以添加新令牌。 然而,一旦第一个令牌被驱逐,模型的性能通常就会直线下降,从而迅速降低新生成的单词的质量。

在这篇新论文中,研究人员意识到,如果他们将第一个令牌保留在滑动缓存中,即使超出缓存大小,模型也将保持其性能。

但这没有任何意义。 小说中的第一个单词可能与最后一个单词无关,那么为什么第一个单词对于模型生成最新单词如此重要呢?

在他们的新论文中,研究人员还揭示了这种现象的原因。

注意力集中

一些模型在其注意力机制中使用 Softmax 操作,为每个标记分配一个分数,表示它与其他标记的相关程度。 Softmax 操作要求所有注意力分数之和为 1。由于大多数 token 的相关性不强,因此它们的注意力分数非常低。 该模型将所有剩余的注意力分数转储到第一个标记中。

研究人员将这第一个标记称为“注意力池”。

“我们需要一个注意力接收器,模型决定使用第一个令牌作为注意力接收器,因为它是全局可见的——所有其他令牌都可以看到它。 我们发现我们必须始终将注意力集中器保留在缓存中以维持模型的动态性,”Han 说。

在构建 StreamingLLM 时,研究人员发现在滑动缓存的开头有四个注意力接收器标记可以带来最佳性能。

他们还发现,每个令牌的位置编码必须保持不变,即使添加了新令牌并且删除了其他令牌。 如果令牌 5 被剔除,则令牌 6 必须保持编码为 6,即使它现在是缓存中的第五个令牌。

通过结合这两个想法,他们使 StreamingLLM 能够保持连续对话,同时优于使用重新计算的流行方法。

例如,当缓存有 256 个令牌时,重新计算方法需要 63 毫秒来解码新令牌,而 StreamingLLM 需要 31 毫秒。 但是,如果缓存大小增长到 4,096 个令牌,则重新计算新令牌需要 1,411 毫秒,而 StreamingLLM 只需要 65 毫秒。

研究人员还通过在所有训练样本中预先添加几个占位符标记,探索了模型训练期间注意池的使用。

他们发现,使用注意力池进行训练可以使模型在其缓存中仅使用一个注意力池的情况下保持性能,而不是稳定预训练模型性能通常需要的四个注意力池。

但是,虽然 StreamingLLM 使模型能够进行连续对话,但该模型无法记住未存储在缓存中的单词。 未来,研究人员计划通过研究检索已被驱逐的令牌或使模型能够记住以前的对话的方法来解决这一限制。

StreamingLLM已纳入NVIDIA大型语言模型优化库, TensorRT-法学硕士

这项工作的部分资金由 MIT-IBM Watson AI 实验室、MIT 科学中心和美国国家科学基金会资助。

1707884475
2024-02-14 01:05:00
#一种让人工智能聊天机器人全天交谈而不会崩溃的新方法

Leave a Reply

Your email address will not be published. Required fields are marked *

近期新闻​

编辑精选​