当前位置: 首页 > news >正文

Azure OpenAI 官方指南 01|GPT-3 的原理揭秘与微调技巧

Azure OpenAI 服务在微软全球 Azure 平台正式发布后,迅速成为众多用户最关心的服务之一。

Azure OpenAI 服务允许用户通过 REST API 访问 OpenAI 的强大语言模型,包括 GPT-3、Codex 和 Embeddings 模型系列。本期,我们将为您揭秘 Azure OpenAI 的“屠榜”神器——GPT-3 的原理与使用技巧

GPT-3的底层算法 ╱ 01
GPT-3的四种模型 ╱ 02
在Azure OpenAI中使用GPT-3 ╱ 03
OpenAI API组件选择 ╱ 04
自定义模型 ╱ 05
Fine-Tuning(微调) ╱ 06
GPT-3的企业级使用场景 ╱ 07

 

GPT-3 的底层算法

 

GPT-3 全称“Generative Pre-trained Transformer - 3”, 参数高达 1750“亿”个,是微软和 OpenAI 联合推出的超级人工智能。

简单地说,GPT-3 作为一个自监督模型,几乎可以完成自然语言处理的绝大部分任务。GPT-3 本质上是一个预训练自然语言处理模型,能够同时完成自然语言理解、文本生成、文本总结、自动问答、机器翻译、算术运算和代码生成等多种任务。GPT-3 的面世有望帮助开发者更加快速地构架和部署自然语言处理应用程序,也拓宽了更多不同领域不同知识背景的用户使用 AI 模型的可能性。

GPT 系列作为 OpenAI 开发的一系列大型预训练语言模型,是基于 Transformer 算法的复杂堆叠、超大量的训练语料与数以亿计的模型参数训练出的一系列生成式预训练语言模型

与传统的自然语言处理(NLP)有监督模型不同,GPT 先通过充满多样性的大量数据进行无监督预训练,然后再将带有标签的数据集给入预训练模型中进行有监督微调。GPT 强化了模型从大量无标签原始文本中学习语言或语义本身的能力,并在模型有广泛语言学能力的基础上提供部分有标签数据对特定任务进行微调。这一方面解决了大多数 NLP 任务中高质量标签数据量少的问题,另一方面建立了一个真正从语言学角度理解自然语言的模型。

GPT-3 作为 GPT 系列的第三代模型,是 Transformer 算法在 800 万网页数据集的基础上训练而成的。GPT-3 与前两代模型相比,在模型参数量以及预训练数据量上进行了几百倍的扩充,从 GPT-2 的 15 亿参数与 40GB 数据量扩展到了如今的 1750 亿参数与 45 TB 的预训练数据。这在很大程度上增强了 GPT 系列在语言理解能力上的提升,形成了现如今爆红的 GPT-3 服务,并为后续的 ChatGPT 等生成式自然语言模型提供基础。

 

GPT-3 的四种模型

 

OpenAI 提供四种主要的 GPT-3 模型。其中 Davinci 是功能最强大的模型,Ada 是速度最快的模型。以下详细介绍了每种模型的特点以及适用场景:

虽然通常情况下 Davinci 是功能最强大的 GPT-3 模型,但其它模型也能够非常出色地执行某些任务,并且有着明显的速度或者成本优势。比如,Curie 模型也可以执行许多与 Davinci 相同的任务,但速度更快,并且成本仅为 Davinci 的十分之一

模型选择建议

当我们在选择模型时,最好是在实验阶段先使用 Davinci, 确保我们能使用 GPT-3 先得到一个最好的结果,明确正确的使用方向。一切正常之后,我们就可以继续尝试其它模型,看看是否能以更低的延迟和更优的成本选择获得相同的结果。

有大量优质(指人工审核/达标的)数据的情况下,建议选择低复杂度的模型,精度或许能媲美 Davinci,且 ROI 更高。

如果是分类/归纳这类相对简单的任务,建议选择 Ada 模型。

如果数据量不大(几百)或质量不保证(如未经校准的数据)的情况下,建议选择 Davinci 模型。

 

在 Azure OpenAI 服务中使用 GPT-3

 

Azure GPT-3 Playground 的使用界面非常简洁,我们只需要在文本框中输入提示语或需要 GPT-3 分析的内容,等待 GPT-3 根据提示返回相应结果即可。

如图所示,我希望 GPT-3 能根据我的产品介绍构思一些合适的产品名称,GPT-3 返回的绿色高亮部分即为分析结果。

 

OpenAI API 组件选择

 

以下介绍了 OpenAI API 中一些重要的组件:

 

自定义模型

 

Zero-Shot(零样本)

直接将提示和文本给到 GPT-3,让 GPT-3 自行理解提示并给出回答: 

One-Shot(单样本)

通过给 GPT-3 一个简单示例,让模型了解我们想要的输出形式以及风格,从而给出回答:

Few-Shot(小样本)

通过给 GPT-3 一些简单的示例,让模型了解我们想要的输出形式以及风格,从而给出回答:

 

Fine-Tuning(微调)

 

 

GPT-3 的企业级使用场景

 

RPG 游戏

GPT 和 Open AI 可以帮助收集并分析玩家信息及游戏进程等数据,从而动态生成符合场景条件的 NPC,让玩家能够更自然且更真实地与游戏中的 NPC 进行互动。

AI 客服

GPT 强大的语义理解、文本生成和文本总结等能力,能更好地协助客服完成自动交易,并更自然地与客户聊天。

Azure OpenAI 官方指南 Vol.01 GPT-3 作者

罗贵欢 Sunny Luo 微软云解决方案工程师
周锐君 Milo Zhou 微软云解决方案工程师

相关文章:

Azure OpenAI 官方指南 01|GPT-3 的原理揭秘与微调技巧

Azure OpenAI 服务在微软全球 Azure 平台正式发布后,迅速成为众多用户最关心的服务之一。 Azure OpenAI 服务允许用户通过 REST API 访问 OpenAI 的强大语言模型,包括 GPT-3、Codex 和 Embeddings 模型系列。本期,我们将为您揭秘 Azure Open…...

神垕古镇景区三方背后的博弈,争夺许昌第一家5A景区主导权

钧 瓷 内 参 第37期(总第368期) 2023年3月2日 神垕古镇景区景域,建业,孔家三方背后的博弈,争夺许昌第一家5A景区主导权 在博弈论(Game Theory)经济学中,“智猪博弈”是一个著名的…...

【C++】vector的模拟实现(SGI版本)

吃不了自律的苦,又接受不了平庸的罪。想让自己变好,但又想舒服些。 你啊你……要么就不要去想,想了又不去做,犹犹豫豫,徘徊不前,患得患失… 文章目录一、四种构造函数1.vector的框架和无参构造2.构造函数调…...

【9】SCI易中期刊推荐——工程技术-计算机:软件工程(中科院4区)

🚀🚀🚀NEW!!!SCI易中期刊推荐栏目来啦 ~ 📚🍀 SCI即《科学引文索引》(Science Citation Index, SCI),是1961年由美国科学信息研究所(Institute for Scientific Information, ISI)创办的文献检索工具,创始人是美国著名情报专家尤金加菲尔德(Eugene Garfield…...

SOTA!目标检测开源框架YOLOv6 3.0版本来啦

近日,美团视觉智能部发布了 YOLOv6 3.0 版本,再一次将目标检测的综合性能推向新高。YOLOv6-L6 检测精度和速度超越 YOLOv7-E6E,取得当前实时目标检测榜单 SOTA。本文主要介绍了 YOLOv6 3.0 版本中引入的技术创新和优化,希望能为从…...

svn使用

一、SVN概述 1.1为什么需要SVN版本控制软件 1.2解决之道 SCM:软件配置管理 所谓的软件配置管理实际就是对软件源代码进行控制与管理 CVS:元老级产品 VSS:入门级产品 ClearCase:IBM公司提供技术支持,中坚级产品 1.…...

LeetCode 1487. Making File Names Unique【字符串,哈希表】中等

本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章…...

Java——电话号码的字母组合

题目链接 leetcode在线oj题——电话号码的字母组合 题目描述 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 题目示例…...

LDR6028市面上最具有性价比的Type-C OTG音频协议方案

目前市面上的大部分手机都取消了3.5mm音频耳机接口,仅保留一个Type-C接口,但是追求音质和零延迟的用户仍然会选择3.5mm有线耳机,因为在玩手机游戏的时候,音画不同步真的很影响游戏体验,所以Type-C转3.5mm接口线应运而生…...

SpringMVC-0228

一、SpringMVC简介1、什么是MVCMVC是一种软件架构的思想,将软件按照模型、视图、控制器来划分M:Model,模型层,指工程中的JavaBean,作用是处理数据补充:框架其实就是配置文件jar包JavaBean分为两类&#xff…...

【测试岗】那个准点下班的人,比我先升职了...

前言 陈双喜最近心态很崩。和他同期一道进公司的陈琪又升了一级,可是明明大家在进公司时,陈琪不论是学历还是工作经验,样样都不如自己,眼下不过短短的两年时间便一跃在自己的职级之上,这着实让他有几分不甘心。 程双…...

【C++】适配器模式 -- stack/queue/dqueue

一、适配器模式 设计模式 设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结;Java 语言非常关注设计模式,而 C 并没有太关注,但是一些常见的设计模式我们还是要学习。 迭代器模式 其实我们在前面学习 strin…...

sql server 分页查询

sql server 分页查询[toc]前言SQL server 2012版本。下面都用pageIndex表示页数,pageSize表示一页包含的记录。并且下面涉及到具体例子的,设定查询第2页,每页含10条记录。首先说一下SQL server的分页与MySQL的分页的不同,mysql的分…...

RV1126新增驱动IMX415 SENSOR,实现v4l2抓图

RV1126新增驱动IMX415 SENSOR&#xff0c;实现v4l2抓图。1&#xff1a;内核dts修改&csi_dphy0 {status "okay";ports {#address-cells <1>;#size-cells <0>;port0 {reg <0>;#address-cells <1>;#size-cells <0>;mipi_in_uca…...

Hive 数据倾斜

数据倾斜&#xff0c;即单个节点任务所处理的数据量远大于同类型任务所处理的数据量&#xff0c;导致该节点成为整个作业的瓶颈&#xff0c;这是分布式系统不可能避免的问题。从本质来说&#xff0c;导致数据倾斜有两种原因&#xff0c;一是任务读取大文件&#xff0c;二是任务…...

2月刚上岸字节跳动测试岗面经

这时候发应该还不算太晚&#xff0c;金三银四找工作的小伙伴需要的可以看看。 一、测试工程师的工作是什么&#xff1f; 测试工程师简单点说就是找bug&#xff0c;然后反馈给开发人员&#xff0c;不要小看这个工作。 首先很明显的bug开发人员有时候自己就能找到&#xff0c;测…...

图解KMP算法

子串的定位操作通常称作串的模式匹配。你可以理解为在一篇英语文章中查找某个单词是否存在&#xff0c;或者说在一个主串中寻找某子串是否存在。朴素的模式匹配算法假设我们要从下面的主串S "goodgoogle" 中&#xff0c;找到T "google" 这个子串的位置。…...

Java Map和Set

目录1. 二叉排序树(二叉搜索树)1.1 二叉搜索树的查找1.2 二叉搜索树的插入1.3 二叉搜索树的删除&#xff08;7种情况&#xff09;1.4 二叉搜索树和TreeMap、TreeSet的关系2. Map和Set的区别与联系2.1 从接口框架的角度分析2.2 从存储的模型角度分析【2种模型】3. 关于Map3.1 Ma…...

【C/C++ 数据结构】-八大排序之 冒泡排序快速排序

作者&#xff1a;学Java的冬瓜 博客主页&#xff1a;☀冬瓜的主页&#x1f319; 专栏&#xff1a;【C/C数据结构与算法】 分享&#xff1a;那我便像你一样&#xff0c;永远躲在水面之下&#xff0c;面具之后&#xff01; ——《画江湖之不良人》 主要内容&#xff1a;八大排序选…...

苹果ipa软件下载网站和软件的汇总

随着时间的流逝&#xff0c;做苹果版软件安装包下载网站和软件的渐渐多了起来。 当然&#xff0c;已经关站、停运、下架、倒闭的苹果软件下载网站和软件我就不说了&#xff0c;也不必多说那些关站停运下架倒闭的网站和软件了。 下面我统计介绍的就是苹果软件安装包下载网站和软…...

SkyWalking 10.2.0 SWCK 配置过程

SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外&#xff0c;K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案&#xff0c;全安装在K8S群集中。 具体可参…...

Linux 文件类型,目录与路径,文件与目录管理

文件类型 后面的字符表示文件类型标志 普通文件&#xff1a;-&#xff08;纯文本文件&#xff0c;二进制文件&#xff0c;数据格式文件&#xff09; 如文本文件、图片、程序文件等。 目录文件&#xff1a;d&#xff08;directory&#xff09; 用来存放其他文件或子目录。 设备…...

K8S认证|CKS题库+答案| 11. AppArmor

目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作&#xff1a; 1&#xff09;、切换集群 2&#xff09;、切换节点 3&#xff09;、切换到 apparmor 的目录 4&#xff09;、执行 apparmor 策略模块 5&#xff09;、修改 pod 文件 6&#xff09;、…...

工业安全零事故的智能守护者:一体化AI智能安防平台

前言&#xff1a; 通过AI视觉技术&#xff0c;为船厂提供全面的安全监控解决方案&#xff0c;涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面&#xff0c;能够实现对应负责人反馈机制&#xff0c;并最终实现数据的统计报表。提升船厂…...

关于nvm与node.js

1 安装nvm 安装过程中手动修改 nvm的安装路径&#xff0c; 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解&#xff0c;但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后&#xff0c;通常在该文件中会出现以下配置&…...

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别 直接训练提示词嵌入向量的核心区别 您提到的代码: prompt_embedding = initial_embedding.clone().requires_grad_(True) optimizer = torch.optim.Adam([prompt_embedding...

大学生职业发展与就业创业指导教学评价

这里是引用 作为软工2203/2204班的学生&#xff0c;我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要&#xff0c;而您认真负责的教学态度&#xff0c;让课程的每一部分都充满了实用价值。 尤其让我…...

项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)

Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败&#xff0c;具体原因是客户端发送了密码认证请求&#xff0c;但Redis服务器未设置密码 1.为Redis设置密码&#xff08;匹配客户端配置&#xff09; 步骤&#xff1a; 1&#xff09;.修…...

Python ROS2【机器人中间件框架】 简介

销量过万TEEIS德国护膝夏天用薄款 优惠券冠生园 百花蜂蜜428g 挤压瓶纯蜂蜜巨奇严选 鞋子除臭剂360ml 多芬身体磨砂膏280g健70%-75%酒精消毒棉片湿巾1418cm 80片/袋3袋大包清洁食品用消毒 优惠券AIMORNY52朵红玫瑰永生香皂花同城配送非鲜花七夕情人节生日礼物送女友 热卖妙洁棉…...

【从零学习JVM|第三篇】类的生命周期(高频面试题)

前言&#xff1a; 在Java编程中&#xff0c;类的生命周期是指类从被加载到内存中开始&#xff0c;到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期&#xff0c;让读者对此有深刻印象。 目录 ​…...