吾名爱妃,性好静亦好动。好编程,常沉浸于代码之世界,思维纵横,力求逻辑之严密,算法之精妙。亦爱篮球,驰骋球场,尽享挥洒汗水之乐。且喜跑步,尤钟马拉松,长途奔袭,考验耐力与毅力,每有所进,心甚喜之。
吾以为,编程似布阵,算法如谋略,需精心筹谋,方可成就佳作。篮球乃团队之艺,协作共进,方显力量。跑步与马拉松,乃磨炼身心之途,愈挫愈勇,方能达至远方。愿交志同道合之友,共探此诸般妙趣。诸君,此文尚佳,望点赞收藏,谢之!
大模型的记忆能力是不可或缺的一部分。目前,有多种方法可以让AI应用具备记忆功能,其中一种是仿照人脑记忆原理,给大模型添加显式记忆。人类的记忆大致可以分为三部分:显式记忆、隐式记忆、外部信息。其中显式记忆可以主动回忆的长期记忆,比如读过的文章,获取显式记忆很容易,但提取时需要一定的回忆过程。隐式记忆是无意识使用的长期记忆,比如骑自行车的技能,获取隐式记忆需要大量重复练习,但使用时毫不费力。可以看出,两种记忆形式在获取和使用的效率上形成了鲜明的互补。
对于大模型而言,其“长期记忆”存储在模型的参数中,短期记忆则体现为模型一次对话中可回忆起的上下文长度的context。例如GPT-4的context是128k,这相当于可一次性输入10万汉字左右。大模型的短期记忆和长期记忆的使用场景如下:
- 短期记忆:
- 多轮对话场景:在多轮对话中,模型需要记住之前的对话内容,以便更好地理解当前的问题和回答。短期记忆可以帮助模型在短期内记住相关信息,从而提高对话的连贯性和准确性。
- 实时交互场景:例如聊天机器人、智能客服等,需要根据用户的实时输入提供回答。短期记忆可以帮助模型快速记住用户的当前问题和历史对话记录,从而更好地理解用户需求并提供准确的回答。
- 信息检索和推荐:根据用户的短期兴趣和行为,提供个性化的信息检索和推荐服务。
- 长期记忆:
- 知识问答系统:可以利用长期记忆存储大量的知识和信息,例如历史事件、科学原理、文化常识等,从而能够回答各种问题,并提供相关的解释和说明。
- 个性化服务:通过长期记忆了解用户的偏好、习惯和需求,从而提供个性化的服务和推荐。例如,根据用户的历史购买记录推荐相关的产品或服务。
- 数据分析和预测:分析和挖掘大量的数据,从中发现模式和趋势,并进行预测和决策。例如,预测市场趋势、股票价格等。
短期记忆能够显著提高大模型在对话中的连贯性,主要体现在以下几个方面:
1. 维持对话主题:
在对话过程中,话题可能会有所转换和深入。短期记忆使大模型能够记住当前正在讨论的主题,避免突然偏离或跳跃到不相关的内容。例如,当讨论旅游计划时,短期记忆能帮助模型记住之前提到的目的地、出行时间等关键信息,从而围绕这些要点给出连贯的回应,如“我们之前说要在 8 月去三亚,那接下来可以考虑预订机票和酒店。”
2. 参考前文语境:
用户的表述可能存在一些模糊或不完整的地方,但通过短期记忆回顾之前的对话内容,模型可以更好地理解用户的意图。比如,用户说“那个不错”,模型可以依据短期记忆中的前文提到的多个事物,推断出用户所指的具体对象,进而做出准确的回应,“您说的那个不错,是指刚才提到的蓝色连衣裙吗?”
3. 保持逻辑一致性:
对话应该遵循一定的逻辑顺序和因果关系。短期记忆让大模型能够记住之前的推理和论证过程,从而保证回答的逻辑连贯性。假设在讨论解决一个技术问题的步骤,模型能够凭借短期记忆记住之前提出的方法和遇到的障碍,进而给出合理的下一步建议,“我们之前尝试了方法 A 但没有成功,接下来可以试试方法 B。”
4. 回应细节准确:
对于一些需要精确信息的对话,短期记忆能够确保模型准确回应。比如在讨论一场会议的安排时,模型能记住具体的时间、地点、参与人员等细节,从而给出完整且准确的回答,“会议定在明天下午两点,在公司的 301 会议室,参会人员有部门经理和各位同事。”
短期记忆通过维持主题、参考语境、保持逻辑和确保细节准确等方式,大大增强了大模型在对话中的连贯性,为用户提供更自然、流畅和有意义的交流体验