私有开源LLM实例的三个考虑因素

news2024/11/25 7:20:59

原文地址:three-considerations-for-private-open-source-llm-instances

2024 年 4 月 29 日

在生产应用中使用商业 LLM APIs 会带来明确且经过充分研究的风险。因此,企业越来越多地转向利用开源的私有托管LLM实例,并通过RAG技术进行增强。

介绍

最近发表了三篇论文,所有论文都讨论了有关大型语言模型(LLM)的非常相似的观察结果。

这一观察围绕着模型不仅经历模型漂移而且随着时间的推移性能下降的问题。

因此,依赖于商业 LLM APIs 的生成式应用程序 (Gen-Apps) 和基于 LLM 的会话式 UI 发现自己很容易受到模型行为波动的影响。

虽然人们很容易将这些变化归因于LLMs的不确定性,但最近的研究提供了相反的证据。

这些研究表明,模型确实会随着时间的推移而发生变化,并且这些变化并不表示改进;相反,它们会导致性能下降。

LLMs的背景下,非确定性是指模型针对相同输入生成不同输出的现象。

灾难性遗忘

最近的一项研究中引入了“灾难性遗忘”一词,描述了LLMs在接受新数据训练或针对特定任务进行微调时丢失或忽略先前获得的信息的倾向。

这种现象源于训练过程的固有局限性,训练过程通常会优先考虑最近的数据或任务而不是早期的数据或任务。

因此,模型对某些概念或知识的表示可能会恶化或被新信息覆盖,从而导致整体性能或准确性下降,特别是在需要广泛理解不同主题的任务中。

在需要持续学习或适应的场景中,此类挑战会被放大,因为随着时间的推移,模​​型可能很难维持平衡和全面的理解。

对LLM在持续微调过程中的灾难性遗忘(CF)的研究发现,CF普遍存在于不同LLM的持续微调中。

并且随着尺度的增加,模型在领域知识推理阅读理解方面的遗忘程度会更强。

该研究还指出,指令调整可能有助于缓解CF问题。

LLM 漂移

GPT-3.5 和 GPT-4 是两种广泛使用的大型语言模型 (LLM) 服务,随着时间的推移,这些模型的更新并不透明。

这项评估于2023 年 3 月2023 年 6 月进行,涵盖了两种模型在不同任务中的版本。

GPT-3.5 和 GPT-4 的性能和行为随时间变化显着。

  • GPT-4(2023 年 3 月)在识别质数与合数方面表现良好(准确率 84%),但 GPT-4(2023 年 6 月)表现不佳(准确率 51%),部分原因是跟随思路下降提示。
  • 与 3 月份相比,GPT-3.5 6 月份在某些任务上有所改进。
  • 与 3 月份相比,GPT-4 6 月份不太愿意回答敏感问题和民意调查问题。
  • 6 月份,GPT-4 在多跳问题上表现更好,而 GPT-3.5 的表现有所下降。
  • 与 3 月份相比,这两种模型在 6 月份的代码生成中都出现了更多的格式错误。
  • 该研究强调了对法学硕士进行持续监控的必要性,因为他们的行为随着时间的推移而变化。

有证据表明,GPT-4 遵循用户指令的能力随着时间的推移而下降,从而导致行为漂移。

下表显示了主要测试的思想链 (CoT) 有效性随时间的变化。

来源

如果没有 CoT 提示,GPT-4 和 GPT-3.5 的准确率都相对较低。

在 CoT 的推动下,GPT-4 在 3 月份实现了24.4% 的准确率提升,6 月份则下降了-0.1%。 GPT-4 似乎确实失去了优化 CoT 提示技术的能力。

考虑到 GPT-3.5,CoT 提升从 3 月份的 6.3% 增加到 6 月份的 15.8%。

下图显示了四个月内模型准确性的波动。在某些情况下,弃用非常明显,准确率损失超过 60%。

来源

Prompt 漂移

Chaining,或也称为Prompt Chaining,是利用编程工具(在某些情况下是可视化的)来促进将大型语言模型提示链接或排序到应用程序中的过程;它主要创建一个会话式用户界面。

提示链的核心功能是将任务从一个链级联到另一个链。这种任务级联很可能会持续整个用户对话期间。

提示漂移是错误逐渐累积的过程,其原因可能是:

  • 模型引发的偏离
  • 问题提取不正确
  • LLMs的随机性和创造性的惊喜

Chaining 可以作为模型引发偏离的保障,因为链接的每一步都定义了一个明确的目标。 ~来源

下图展示了作为更大链中一部分的单个节点或提示是如何受到影响而产生提示漂移的。

  1. 用户输入可能是意外的或无计划的,从而从节点产生不可预见的输出。
  2. 前一个节点的输出可能不准确或产生漂移,这种漂移在当前节点中会加剧。
  3. 由于 LLM 具有不确定性,因此 LLM 响应也可能是意外的。

应对提示漂移(错误级联)的方法之一是确保所使用的提示模板是全面的,并提供足够的上下文信息来消除 LLM 幻觉。

结束语

托管您自己的大型语言模型 (LLM) 实例可以让您对数字命运拥有无与伦比的控制权……组织可以实现高度的自主性、安全性和灵活性。

当您托管自己的 LLM 实例时,自主权占主导地位。

通过管理您的基础设施,您可以制定规则,确保您的模型根据您的特定需求和目标运行。这种自主权扩展到数据隐私和安全性,使您能够保护敏感信息并减轻与第三方依赖项相关的风险。

此外,托管您的LLMs使您能够对模型更新和优化进行精细控制。您可以定制训练数据集、微调参数并实施适合您领域的自定义算法,从而最大限度地提高性能和与应用程序的相关性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1639892.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RCE学习

从最近的xyctf中,最大的感受就是自己的rce基础并不牢固,所以马上来恶补一下 漏洞成因 php和其他语言有很多能够执行系统命令或执行其他php代码的函数,因为开发者的使用不当,使得用户能够控制传递给执行命令的函数的参数&#xf…

【C++题解】1300. 小明暑假的零花钱

问题:1300. 小明暑假的零花钱 类型:多分支结构 题目描述: 小明同学的妈妈在期末考试之后决定根据小明的考试成绩奖励小明不同的暑假零花钱,如果考试成绩在90 分以上(包括 90 分),零花钱是成绩…

clang:在 Win10 上编译 MIDI 音乐程序

先从 Microsoft C Build Tools - Visual Studio 下载 1.73GB 安装 "Microsoft C Build Tools“ 访问 Swift.org - Download Swift 找到 Windows 10:x86_64 下载 swift-5.10-RELEASE-windows10.exe 大约490MB 建议安装在 D:\Swift\ ,安装后大约占…

【Linux系统编程】32.线程同步、锁的使用、互斥锁管理

目录 线程同步 锁的使用 注意事项 pthread_mutex_init 注意 参数mutex 参数attr 返回值 动态初始化 静态初始化 pthread_mutex_destroy 参数mutex 返回值 pthread_mutex_lock 参数mutex 返回值 pthread_mutex_unlock 参数mutex 返回值 pthread_mutex_trylo…

JAVA面试之MQ

如何保证消息的可靠传输?如果消息丢了怎么办 数据的丢失问题,可能出现在生产者、MQ、消费者中。 (1)生产者发送消息时丢失: ①生产者发送消息时连接MQ失败 ②生产者发送消息到达MQ后未找到Exchange(交换机) ③生产者发…

Python | Leetcode Python题解之第64题最小路径和

题目: 题解: class Solution:def minPathSum(self, grid: List[List[int]]) -> int:if not grid or not grid[0]:return 0rows, columns len(grid), len(grid[0])dp [[0] * columns for _ in range(rows)]dp[0][0] grid[0][0]for i in range(1, r…

WPF基础应用

WPF参考原文 MVVM介绍 1.常用布局控件 1.1 布局控件 WPF(Windows Presentation Foundation)提供了多种布局容器来帮助开发者设计用户界面,以下是一些常用的布局: Grid: Grid是最常用的布局容器之一,它允许你通过定…

计算机网络-408考研

后续更新发布在B站账号:谭同学很nice http://【计算机408备考-什么是计算机网络,有什么特点?】 https://www.bilibili.com/video/BV1qZ421J7As/?share_sourcecopy_web&vd_source58c2a80f8de74ae56281305624c60b13http://【计算机408备考…

【论文阅读笔记】TS2Vec: Towards Universal Representation of Time Series

【论文阅读笔记】TS2Vec: Towards Universal Representation of Time Series 摘要 这段文字介绍了一个名为TS2Vec的通用框架,用于学习时间序列数据的表示,可以在任意语义层次上进行。与现有方法不同,TS2Vec通过对增强的上下文视图进行层次化…

C语言指针进阶_字符指针、指针数组、数组指针、函数指针等的介绍

文章目录 前言一、字符指针二、指针数组三、 数组指针1. 数组名和 & 数组名2. 数组指针3. 数组指针解引用 四、数组指针的使用二维数组的传参说明数组指针使用小测验 五、数组传参和指针传参1. 一维数组传参总结2. 二维数组传参总结3. 一级指针传参4. 二级指针传参 六、函数…

React Context

Context https://juejin.cn/post/7244838033454727227?searchId202404012120436CD549D66BBD6C542177 context 提供了一个无需为每层组件手动添加 props, 就能在组件树间进行数据传递的方法 React 中数据通过 props 属性自上而下(由父及子)进行传递,但此种用法对…

Git使用指北

目录 创建一个Git仓库本地仓库添加文件文件提交到本地仓库缓冲区添加远程仓库地址本地仓库推送到远程仓库创建新的分支拉取代码同步删除缓冲区的文件,远程仓库的文件.gitignore文件 创建一个Git仓库 Git仓库分为远程和本地两种,远程仓库如Githu上创建的…

每天五分钟深度学习框架pytorch:如何创建多维Tensor张量元素?

本文重点 上节课程我们学习了如何创建Tensor标量,我们使用torch.tensor。本节课程我们学习如何创建Tensor向量,我们即可以使用torch.Tensor又可以使用torch.tensor,下面我们看一下二者的共同点和不同点。 Tensor张量 tensor张量是一个多维数组,零维就是一个点(就是上一…

Java零基础入门到精通_Day 9

1.ArrayList 编程的时候如果要存储多个数据,使用长度固定的数组存储格式,不一定满足我们的需求,更适应不了变化的需求,那么,此时该如何选择呢? 集 合 集合类的特点:提供一种存储空间可变的存储模型,存储的…

EMP.DLL是什么东西?游戏提示EMP.DLL文件缺失怎么解决

emp.dll文件是Windows操作系统中的一种动态链接库文件,它被设计为可以被多个程序共享使用的模块化文件。这种设计旨在提高系统效率,减少内存消耗,并简化软件的维护和更新。DLL文件通常包含了一系列相关的函数和变量,这些函数和变量…

C++入门系列-内联函数

🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” 以inline修饰的函数叫做内联函数,编译时C编译器会在调用内敛函数的地方展开,这就意味着使用内联函数可以提升程序的运行的效率,减小了调用所需…

微软开源 MS-DOS「GitHub 热点速览」

上周又是被「大模型」霸榜的一周,各种 AI、LLM、ChatGPT、Sora、RAG 的开源项目在 GitHub 上“争相斗艳”。这不 Meta 刚开源 Llama 3 没几天,苹果紧跟着就开源了手机端大模型:CoreNet。 GitHub 地址:github.com/apple/corenet 开…

如何判断自己是不是表演型人格障碍?

表演型人格障碍,也叫寻求注意,寻求关注型人格,癔症型人格,是比较常见的人格障碍类型之一。其核心特征包括有:过分的情绪化,夸张的表现形式,渴望成为别人的关注点,其行为往往是幼稚的…

HDR和WDR有什么区别

HDR指高动态范围成像,与之相对的还有一个概念WDR(wide dynamic range)宽动态范围成像,从概念上来说二者并无本质区别,为了提高图像的动态范围,解决光照条件不一致时图像过暗或过亮的问题。但它们的原理和应…

QT5带UI的常用控件

目录 新建工程,Qmainwindow带UI UI设计器 常用控件区 Buttons 按钮 containers 容器 控件属性区域 对象监视区 布局工具区 信号与槽区 简单例子1 放置一个按钮控件,改文本为发送,该按键为Button1; 按钮关联信号和…