以最经济方式运行GPT-3开源模拟:GPT-J


生成式预训练转化器(Generative Pre-trained Transformer简称GPT)是一种NLP语言生成模型,能根据一些初始文本(对话的一部分或某些任务)生成类人文本。
最“炒作”的型号之一是 GPT-3。当您看到 GPT-3 生成的内容时,您会感觉“未来就在这里”。
GPT-3模型由 OpenAI 公司(Elon Mask 是联合创始人)训练,目前只能作为付费 REST API 使用( 2021 年 11 月 18 日 开放给任何人)。 
另一个名为 EleutherAI 的团队在 Pile Dataset(他们收集的 825 GiB 文本数据)上 发布了一个具有 60 亿个参数的开源 GPT-J 模型。
EleutherAI 成立于 2020 年 7 月,定位为一个分散的志愿者研究人员、工程师和开发人员集体,专注于 AI 对齐、扩展和开源 AI 研究。   
基本上,官方GitHub GPT-J 存储库 建议在称为张量处理单元 (TPU) 的特殊硬件上运行他们的模型,该硬件可在谷歌云平台上使用。
最便宜的 TPU 是 v2-8(它有 版本 2 的 8 个核心),这样的实例成本:

  1. 4.50 美元/小时(3,285 美元/月)- 普通按需实例
  2. 1.35 美元/小时(986 美元/月)- 更便宜的抢占式实例(每 24 小时自动重启,由于维护可能随时停止,可能并不总是可用,不在 SLA 范围内)

因此,对于许多处于启动/实验阶段的项目来说,价格可能看起来不太舒服。
为了降低硬件的最终成本,我们可以 在具有 16  GB 显存的 GPU 上运行模型。 为此,有来自 Devforth 的开源 GPT-J 容器 发布到 Dockerhub GPT-J Image 
顺便说一句,用例名称中有一些俚语:
  1. 推理使用Inference usage ——意味着我们获取模型(它的权重)并将它们加载到 GPU RAM 中,然后仅用于生成输出(生成文本或分类事物)
  2. 微调模型Fine-tuning the model ——一个完全不同的过程,我们将模型加载到内存中,然后输入大量新输入数据来调整和重新训练模型。然后可以使用返回的模型进行推理。此用例需要更多资源

 
哪些硬件可以运行该模型
  1. 要在每月 200 美元到 300 美元的最低范围内获得每小时价格,您可以使用:Vast.ai – 一个分布式计算市场,个人出租他们的 GPU 并设置自己的价格。通过几次点击,我以 0.33 美元/小时的价格获得了一个具有 24 GB VideoRAM 的实例。但是有一个限制:不是直接访问服务器,而是通过 SSH 进入将在服务器上生成的 Docker 容器。幸运的是,您可以指定要运行的映像和代理 SSH 端口,因此实际上它允许您将多个此类实例顺利集成到任何复杂的实时应用程序中。
  2. 您也可以找到一些便宜的每月选项,例如在 vps-mart.com / gpu-mart.com 上试用GPU-K80,如果您支付一个月的费用,每平方米的价格为 199.00 美元,甚至每年支付便宜 20 美元。24 GB VideoRAM,20 核 x64 CPU 128 GB RAM,具有 root 访问权限的 SSH。付款后花了 24 小时才拿到服务器。缺点:没有按小时租用的选项。
  3. 如果您想使用按小时付费的大型云服务以及一些服务器可用性和运行时 (SLA) 保证,您可以使用 Scaleway Render S - 非常容易获得,实例稳定(单击几下,您就获得了SSH 和 root),有 16 GB VideoRAM,10 个 x64 CPU,45 GB RAM,花费 1.13 美元/小时(约 810 美元/月)
  4. 甚至有人可能会说AWS EC2,例如p3.2xlarge。最低现货奖成本为 1.14 美元/小时(840 美元/月),但是,它是不稳定的(可以终止)现货实例,稳定的按需成本高出3倍。我们试图从我们旧的受信任 AWS 账户中获取此实例,但它需要增加 AWS G 实例限制(您必须指定 vCPU 内核的 UI 混乱)。花了一个星期,然后需要解释为什么我们需要这个实例等等(如果你还没准备好浪费很多时间,不推荐)

 有趣的选择是 Vast.ai 平台,它还允许您以最少的费用玩模型。因此,让我们向您展示如何使用它。然后我们还将考虑使用普通 SSH 实例运行模型。
 
在 Vast.ai 上设置 GPT-J 点击标题