GPT 是 “Generative Pre-Training” 的简称,是一种能够处理图像和文本输入并产生文本输出大型多模态模型。
(资料图)
使用公开可用的数据(如互联网数据)和第三方提供商许可的数据,预先训练以预测文档中的下一个令牌(一个令牌可以简单理解为 4 个英文字符)。然后使用来自人类反馈的强化学习(RLHF)对该模型进行微调。
如何训练首先,他们接受训练,使用来自互联网的大量文本数据集来预测下一个单词。然后,使用一种称为来自人类反馈的强化学习的算法,用额外的数据对模型进行微调,以产生人类贴标机喜欢的输出。
具体步骤:
针对大量问题生产答案,建立一个 GPT 模型GPT 模型和多个模型一起参与对问题给出回答人工按特定标准对这些问题进行排序基于上一步的排序行为数据,训练一个奖励模型进行打分基于打分结果对 GPT 模型进行微调用强化学习继续训练微调后的 GPT 模型微调步骤:
图片
优势考试成绩图片
GPT-4 在大多数专业和学术考试中表现出人类水平的表现。
不足时效性这个问题目前看起来是最容易被解决的,不管后期是通过官方开放的 plugin(连接第三方的 api )还是自己微调都能在一定程度上被改善。
合法合规需要基于当地的文化、信仰、法律等来控制内容的输出,尊重个体差异。
数据量可用于训练 GPT 的数据较为有限,比如目前中文领域高质量的数据集通常可能从知乎、小红书、百度文库等获取,如果想在大模型上取得更大的突破需要更多海量优质的数据。
风险幻觉:即“产生与某些来源相关的无意义或不真实的内容”有害成分建议或鼓励自残行为
色情或暴力内容等图形材料
骚扰、贬低和仇恨内容
对策划攻击或暴力有用的内容
查找非法内容的说明
代表、分配和服务质量的危害 :语言模型会放大偏见,延续刻板印象假情报和影响行动常规武器和非常规武器的扩散隐私网络安全风险突发行为的潜在性经济影响 :GPT 协议 4 对经济和劳动力的影响应该是政策制定者和其他利益相关者的重要考虑因素加速 :导致安全标准下降、不良规范扩散和人工智能时间表加快的风险,所有这些都增加了与人工智能相关的社会风险过度依赖 :当用户过度信任和依赖模型时,就会出现过度依赖,这可能会导致未被注意到的错误和不充分的监督如何规避进行提前干预部署充分的对抗性测试建立模型辅助的安全管道如何在团队内落地在了解完 GPT 这类模型的优势和限制之后,那么如何将其为我所用?
首先如果想在日常工作中使用 GPT 这类技术,需要明确业务敏感度,使用过程中是否会包含大量内部业务数据;然后是评估收益,对该场景的提升是否足够的大?下面介绍 3 种情况:
内部业务数据敏感度高智能客服、知识管理、文档生成工具、业务开发等,这些应用场景不可避免地会接触到业务数据,因此无法直接使用,通常只能基于现有的大模型利用内部数据进行训练。
内部业务数据敏感度不明确比如作为日常工作的搜索化工具和助手,可能会包含业务数据时,大部分团队应该还是不允许直接接入和使用 ChatGPT,但是可以为团队内部提供部署前端界面和 api key,通过后端用代理方式访问 OpenAI 接口,这样做的优点是相对直接访问可以起到一定监控作用,及时发现数据泄露等安全问题,并给出推荐的脱敏信息和 prompt 格式,提升团队效率的同时并改进工作方式。
内部业务数据敏感度低这种情况比较适合可以使用外部成熟的大模型,比如处理构建产物和分析异常,因为这些数据都是基于代码经过打包和压缩后产生的数据,相当于做了大部分业务脱敏和关键字混淆,一定程度上规避了信息泄露的风险,接下来下面举两个例子:
一、检测产物问:
你现在是一个前端专家,判断下列脚本是否存在浏览器兼容问题,从可能的原因,可能的影响,问题严重等级评分( 10 分制),修复建议等方面进行分析评估,脚本为:
!function() { var e = /([http|https]:\/\/[a-zA-Z0-9_.]+.baidu.com)/gi , r = window.location.href , t = document.referrer; if (!e.test(r)) { const o = "[https://sp0.baidu.com/9_Q4simg2RQJ8t7jm9iCKT-xh_/s.gif";](https://sp0.baidu.com/9_Q4simg2RQJ8t7jm9iCKT-xh_/s.gif%22;) t ? (o += "?r=" + encodeURIComponent(document.referrer), r && (o += "&l=" + r)) : r && (o += "?l=" + r); var i = new Image; i.src = o }}(window);
GPT:
该脚本的主要功能是检查当前页面 URL 是否匹配百度域名,如果不匹配,则发送一个带有 referrer 和 location 信息的请求到百度服务器。以下是关于这个脚本的兼容性问题分析:
可能的原因:
使用了const关键字,它在 IE 浏览器(版本小于 11)中不被支持。
可能的影响:在不支持const关键字的浏览器(如 IE10 及以下版本)中,脚本会抛出错误,导致后续代码无法执行。
问题严重等级评分:4/10。这个问题主要影响较旧的浏览器,尤其是 IE10 及以下版本。随着现代浏览器的普及,这个问题的影响范围有限。
修复建议:
将const关键字替换为var关键字,以确保更好的浏览器兼容性。修复后的脚本如下:……
二、分析异常问:
你现在是一个前端专家,收到以下 sentry上报的异常,从可能的原因,可能的影响,错误严重等级评分(10 分制),修复建议等方面进行分析评估,异常为:
TypeError: Cannot set properties of null (setting "innerText") at t.(/de/prismplayer/2.9.23/aliplayer-min.js:2:363589) at ……
GPT:
异常信息:TypeError: Cannot set properties of null (setting "innerText")。这是一个类型错误,提示在尝试设置一个 null 对象的 "innerText" 属性。
可能的原因:
代码中某个 DOM 元素没有被正确获取,可能是通过 querySelector 或 getElementById 等方法获取的元素不存在或未被渲染。在事件处理函数中,可能未正确处理元素的引用,导致在某些情况下引用了一个null对象。
可能的影响:
由于无法正确设置 "innerText" 属性,可能导致客户端在某些功能上出现问题,影响用户体验。
如果这个问题普遍存在,可能会影响整个应用的功能和稳定性。
错误严重等级评分:6/10。这个错误可能导致某些功能无法正常使用,但不会导致整个应用崩溃。
修复建议:
首先定位问题发生的位置。从异常堆栈信息中可以找到相关代码位置,如 aliplayer-min.js 的第 2 行 363589 字符处。
根据代码位置,检查是否在设置 "innerText" 属性前正确获取了 DOM 元素。如果发现问题,需要修复代码以确保 DOM 元素在使用前被正确获取。
在事件处理函数中,确保对 DOM 元素的引用被正确处理,避免在某些情况下引用一个null对象。
在修复问题后,进行充分的测试,确保问题已经解决。可能需要测试不同的场景,以验证在各种条件下 DOM 元素都能被正确获取和处理。
备注:在实际修复过程中,还需要根据项目的具体情况和代码逻辑来进行分析和调整。由于问题发生在第三方库(aliplayer-min.js)中,如果无法直接修改库代码,可以尝试联系库的作者或者寻找替代方案。
在上面的例子中,先明确业务领域关键字“前端”,然后给出问题场景“兼容性分析”或“异常分析”,再设定期望的目标字段:“原因”、“影响”、“严重等级”、“建议”,最后把必要的信息内容加上,就得到了一个相对来说比较可靠的答案。
这个过程和我们平时调用业务接口很相似,可以有固定的出入参和功能逻辑,通过系统完成工作。例如 JS 异常分析,过去也有过尝试训练自研模型来提高异常上报的准确率,花了大量时间精力但是效果不尽人意,还需要申请 GPU 服务器资源,如今只需要调用大模型的接口即可达到非常不错的效果,较为准确的分析上报上来的异常。
总结在工作中现阶段主要受限于信息安全和技术瓶颈,直接使用 GPT 的场景会相对比较有限,自己用数据训练大模型成本又太高,所以在起步阶段以工具化的形式快速应用到现有场景为主,而且需要这些场景不包含业务数据,以尽可能的确保信息安全。
展望GPT 这类大模型所带来的生产方式会对当前社会的分工产生巨大影响,对于研发、设计等岗位尤其显著,给我们带来焦虑的是不知道何时就会被 AI 替代,有可能就是下一个版本发布的时候,因此作为开发者需要保持开放的心态去了解、学习这些新技术,前期可以在现有的系统中接入 GPT 来提升效率,在未来不久可能可以将他作为一个万能的系统来完成需求和工作,但是在使用中必须要做好数据安全方面的审核和把关。
相关话题ChatGPT 会带来失业潮吗?(https://www.zhihu.com/question/582933780)
ChatGPT 这个风口,普通人怎么抓住?(https://www.zhihu.com/question/582326598/answer/2882767690)
ChatGPT 有哪些神奇的使用方式?(https://www.zhihu.com/question/570729170/answer/2887200349)
参考《GPT-4 技术报告》