带你进⼊ OpenAI 的世界

156次阅读

​2021 年 11 ⽉的 Microsoft Ignite , 微软带来了全新的 Azure OpenAI Service, 通过新的 Azure 认知服务能够访问 OpenAI 强⼤的 GPT-3 模型。虽然微软还没有正式开放 Open AI Service , 但 GitHub 和 OpenAI 已经推出了基于 GPT-3 的新模型 Codex 的⼯具 – Copilot , 通过它可以帮助软件开发⼈员更⾼效地编写代码。我相信不少⼩伙伴都已经开始在 Visual Studio Code / Visual Studio 使⽤ Copilot 感受到 GPT-3 的威⼒。作为开发者 , 希望微软能尽快开放相关⽂档 , 能尽快掌握相关技能。为了满⾜各位要求 , 今天我就带⼤家进⼊ OpenAI。

带你进⼊ OpenAI 的世界

GPT-3 介绍

2020 年 5 月 ,Open AI 发表了一篇开创性的论文 , 题为 Language Models Are Few-Shot Learners。他们展示了 GPT- 3 语言模型 , 它使用了一个具有 1750 亿个参数的神经网络。GPT-3 使用来自 CommonCrawl、WebText、维基百科和书籍语料库的数据进行训练 , 并在各种自然语言处理任务中表现出惊人的性能 , 包括翻译、问答和完形填空任务。在性能上 GPT-3 也是非常优秀 , 超过了很多现有的模型。2020 年 7 月 , 也就是论文发表两个月后 ,OpenAI 开放了一个 beta API playground, 大家可以通过 API 方式访问 GPT-3 模型。

GPT-3 的⼏个主要特点

  1. 零 / 单 / 少样本学习(Zero/one/few-shot learning) 通常 , 深度学习会针对⼀组特定的类别进⾏训练和测试。如果计算机视觉中对星球⼤战中的 BB8 , R2D2 , C3PO 进⾏分类 , 在测试过程中就只能针对这三个类别进⾏。但在零样本学习设置中 , 系统在测试时 , 可以使⽤不在训练内的类别 ( 例如 , ⽤曼努达⼈做测试 )。单 / 少样本学习(one-shot 和 few-shot) 也是⼀个道理 , 在测试时 , 系统会分别看到⼀个或⼏个新的类别。

  2. 零 / 单 / 少样本任务迁移(Zero/one/few-shot task transfer): 这个整合了 零 / 单 / 少样本学习和多任务学习的概念。新任务 ( 或者显示零个、⼀个或⼏个新任务的示例 ) 可以随时执⾏ , ⽽不是在测试时才展示新类。例如 , 输⼊“I love you -> 我爱你。I miss you -> ____。”GPT-3 就可以通过单样本任务迁移 , 把之前没有训练过的英语转中⽂的任务执⾏起来。

  3. Transformers:Transformers 是解决机器翻译问题的框架, 有⼀个简单的⽹络结构 , 基于⾃注意机制 , 不依赖于递归和卷积完全。通过并⾏计算使 Transformer 效率⾼ , 需要更少的训练时间。

  4. ⽣成模型(Generative models): 统计学中分类任务有两种模型 - 判别模型 , ⽣成模型。判别模型对给定的可观察变量和⽬标变量对的条件概率进⾏编码 :p(y|x)。⽣成模型对联合概率进⾏编码 :p(x,y)。⽣成模型可以“⽣成类似于现有数据的新数据”,GPT-3 模型就是应⽤⽣成模型来。

  5. 多任务学习(Multitask learning): ⼤多数深度学习系统都是单任务的, 只针对特定的场景。多任务系统克服了这⼀限制。他们受过训练 , 能够针对给定的输⼊解决不同的任务。例如我输⼊⼀个苹果 , 他可以帮我翻译成英⽂的 Apple , 可以找到⼀张苹果的图⽚ , 也可以找到苹果的⼀些特征等。

  6. 半监督学习(Semi-supervised learning): 是以⽆监督的⽅式训练具有⾮常⼤数据集的模型 , 然后通过在较⼩的数据集中使⽤监督训练来调整模型以适应不同的任务。

通过 OpenAI API 调⽤ GPT-3

由于微软现在还没开放 OpenAI 的 GPT-3 功能 , 现阶段我们只能通过 OpenAI 提供的 API 使⽤ GPT-3。(当然你需要有⼀个美国的电话号码来激活该功能) ,OpenAI 有⾮常丰富的⽂档 , 以及示例 , 让开发者可以⾮常快上⼿使⽤ API。

带你进⼊ OpenAI 的世界

  • OpenAI

    beta.openai.com

Python 调⽤ API ⼏个必须的步骤

1. 安装 openai 库

pip install openai

2. 申请 API 的密钥

带你进⼊ OpenAI 的世界

3. 可以通过 Notebook 测试⼀下

带你进⼊ OpenAI 的世界

⼏个注意的点

1. 模型 engine , 现在针对 GPT-3 有 2 个⽐较主要的模型

模型 介绍
text-davinci-002 GPT-3 关于⾃然语⾔处理场景的模型 , 通常需要较少的上下⽂。除了响应提示外 , 还⽀持在⽂本中插⼊补全。
code-davinci-002 可以理解和⽣成程序代码的模型 , 包括将⾃然语⾔翻译成代码(这个模型需要另外申请)

2. 关于⼀些 示例, 你可以通过访问链接学习更多的应⽤场景

带你进⼊ OpenAI 的世界

3. 你可以通过 OpenAI 提供的 Playground做⼀些测试

带你进⼊ OpenAI 的世界

4. 你可以针对⾃⼰的业务 定义 GPT-3 模型 , 你可以通过下方链接了解更多

  • 示例

    https://beta.openai.com/examples

  • Playground

    https://beta.openai.com/playground

  • 定义 GPT-3 模型

    https://openai.com/blog/customized-gpt-3/

展望

GPT-3 功能强⼤ , 让 AI 应⽤场景更贴近实际的⽣活。我⾮常希望微软的 OpenAI Service 能尽快开放 , 让更多的开发者能使⽤。还有现在 OpenAI GPT-3 在中⽂的⽀持还是⾮常有限的 , 我也寄望微软版本的服务能有更好的中⽂⽀持。

相关资料

  • 了解 Azure OpenAI Service 功能 , 请访问

    https://azure.microsoft.com/en-us/services/cognitiveservices/openai-service/?ocid=AID3042760

  • Azure OpenAI Service 介绍 , 请访问

    https://blogs.microsoft.com/ai/new-azure-openai-service/?ocid=AID3042760

  • OpenAI 的相关博客

    https://openai.com/blog/

Microsoft Build 2022 已正式启动报名 !

带你进⼊ OpenAI 的世界

立即扫码注册大会

5 月 11 日后可预约 session

关注 微软中国 MSDN公众号了解更多

原文链接:https://blog.csdn.net/helendemeng/article/details/124646718

正文完
 
不知道
版权声明:本站原创文章,由 不知道 2023-08-02发表,共计2578字。
转载说明:声明:本站内容均来自互联网,归原创作者所有,如有侵权必删除。 本站文章皆由CC-4.0协议发布,如无来源则为原创,转载请注明出处。