使用 OpenAI API 和 Python 使用 GPT-3的操作方法

目录
  • 使用 OpenAI API 和相应的 Python SDK 试用 GPT-3 语言模型。
  • 介绍
  • 开始
  • 使用接口
    • 设置我们的环境
    • 生成文本
  • 结论

使用 OpenAI API 和相应的 Python SDK 试用 GPT-3 语言模型。

介绍

在本文中,我们将使用 GPT-3。我将向您展示如何访问它,并提供一些示例来说明您可以使用它做什么,以及您可以使用它构建什么样的应用程序!

开始

在使用 GPT-3 之前,您必须先使用 OpenAI 创建一个帐户。设置帐户后,为了访问 API,您需要添加计费凭据。OpenAI将按请求向您收费。您可以在此处查看 API 成本。

添加帐单详细信息后,您将能够检索您的 API 密钥。您将需要它来访问 API。对此保密很重要,因为任何有权访问此密钥的人都可以代表您提出请求,向您收费。

重要

由于 API 的使用成本很高,因此最好确保在发布应用之前考虑到这一点。如果您的应用程序每次有人加载时都会发出 OpenAPI 请求,然后为此向您收费,您可能会很快产生大量成本。

我建议您只允许经过身份验证的用户使用您的应用程序,并且我绝对建议您添加某种 API 限制。如果您正在构建某种 SaaS 应用程序,也许您可以这样做,以便向客户收取他们提出的每个请求的费用,确保他们承担相关的成本而不是您。这可以通过 Stripe 使用记录自动实现,您可以在此处找到更多信息。

使用接口

设置我们的环境

现在您已经有了 API 密钥,让我们玩得开心吧!为了让我们的生活更轻松,让我们使用适用于Python的OpenAI SDK。OpenAI也有可用于Node.js的SDK,但是,对于这个演示,我们将使用Python。您可以使用命令安装 Python OpenAI SDK。pip3 install openai

接下来,创建一个新文件。这就是我们将在本地存储 API 密钥的内容,您可以通过将以下行添加到文件中来执行此操作.env

OPENAI_API_KEY=YOUR_API_KEY

(其中YOUR_API_KEY替换为您的 OpenAI API 密钥)。

请务必将此文件排除在任何公共 GitHub 存储库之外,您可以使用文件并添加到其中。.gitignore.env

现在为了加载文件,我们将需要dotenv依赖项,您可以使用..envpip3 install python-dotenv

现在创建一个新的 Python 文件并添加以下代码行

import os
import openai
from dotenv import load_dotenv

load_dotenv()
openai.api_key = os.getenv("OPENAI_API_KEY")

 ():defmain
    pass

if __name__ == "__main__":
    main()

这对您来说是一个很好的入门,它会自动将您的 API 密钥从文件加载到 OpenAI SDK 中,以便随时可以使用。一般来说,使用.env

if __name__ == "__main__":
    # Your code here

生成文本

要使用 GPT-3 生成文本,请将以下代码添加到函数中main

response = openai.Completion.create(
    model="text-davinci-002",
    prompt="Today I went to the movies and...",
    temperature=1,
    max_tokens=60,
)

print(response)
  • 该参数指定将生成文本的模型的类型。默认情况下,OpenAI 提供了一些模型,您可以选择这些模型,您可以在此处查看这些模型。此外,您甚至可以创建自己的模型,但这超出了本教程的范围。model
  • 该参数指定从模型馈送的输入提示,然后模型将自动完成响应。这可以是您想要的任何内容。prompt
  • 该参数指定响应的不确定性。这意味着模型更有可能产生一些创造性的东西,并且可以被认为是冒险并偏离正常响应的模型。将此参数设置为 1 意味着模型将返回它不确定的结果,相比之下,给此参数的值为 0,这意味着模型将返回它几乎可以确定的结果。temperature
  • 该参数指定允许模型作为其输出的一部分生成的最大令牌量。您需要为生成的更多令牌付费,因此请务必小心使用此参数。max_tokens

如果运行代码,则应获得一个 API 响应,其中包含 AI 模型从提示自动生成的响应,例如

{
  "choices": [
    {
      "finish_reason": "stop",
      "index": 0,
      "logprobs": null,
      "text": "\n\nI saw a great film!"
    }
  ],
  "created": 1658030956,
  "id": "cmpl-5UpsiIqm3IyQmFy1op27TOZ6Brvc6",
  "model": "text-davinci-002",
  "object": "text_completion",
  "usage": {
    "completion_tokens": 16,
    "prompt_tokens": 8,
    "total_tokens": 24
  }
}

很酷!此外,您可以告诉模型您希望它做什么,并且它将符合它。例如,让我们看看我们是否让模型能够使用以下提示为我们格式化日期

"Format the following time in the form of DD/MM/YYYY

May 4th 1989"

响应

{
  "choices": [
    {
      "finish_reason": "stop",
      "index": 0,
      "logprobs": null,
      "text": "\n\n04/05/1989"
    }
  ],
  "created": 1658031618,
  "id": "cmpl-5Uq3OlXZA57KTkn2MabHh8l8FdbnS",
  "model": "text-davinci-002",
  "object": "text_completion",
  "usage": {
    "completion_tokens": 8,
    "prompt_tokens": 20,
    "total_tokens": 28
  }
}

这有多棒?现在,您可以从模型中获取该字符串响应,并根据需要处理应用程序的其余部分。

当然,GPT-3 的功能远不止日期格式化,这只是一个例子。我鼓励你玩这个模型,看看你能用它做什么!GPT-3 能够执行的其他任务的一些示例包括:

  • 译本
  • 综述
  • 代码完成
  • 配方创建

如果你能想到,GPT-3 大概可以做到。

结论

因此,现在您知道如何利用迄今为止最先进的语言模型之一来满足您的所有个人或业务需求。

关于成本,您只需要警惕几件事,但是,考虑到您获得的功能,这绝对是值得的,更不用说节省您的时间和金钱,因为您必须构建、训练、测试和部署您自己的机器学习模型,这不太可能达到接近 GPT-3 的结果。

如果您需要使用 GPT-3 构建项目的灵感,请在此处查看他们为您提供的示例列表。此外,如果您想了解有关将 GPT-3 用于应用程序的更多信息,请查看文档!最后,确保您了解并遵循 OpenAI 使用指南。

文章来源:https://dev.blog.benosborn.tech/playing-with-gpt-3-using-the-openai-api-and-python

到此这篇关于使用 OpenAI API 和 Python 使用 GPT-3的文章就介绍到这了,更多相关OpenAI API 和 Python 使用 GPT-3内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 使用GPT-3训练垃圾短信分类器示例详解

    目录 引言 训练数据 注意事项 训练过程 开始训练 迭代训练 更多训练类型与商业应用 内容分类器 结构化信息提取 上下文会话 信息嵌入查询 引言 平时我们都会收到很多短信,由于微信等即时通讯工具的普及,短信已经成为了一个验证码接收器,但是偶尔也有不少垃圾短信,所以对短信进行分类和屏蔽是一个很简单又很重要的需求. 目前在AppStroe上有很多实现短信分类的App,比如<熊猫吃短信>,有需要可以自行下载体验一下.解决这样的一个简单的需求的App,就可以让App的开发者赚不少钱,我们可以学习一下这

  • 两天没解决的问题chatgpt用了5秒搞定隐藏bug

    目录 前言 隐藏的“间谍” code 验证第一位”间谍“ 借助GPT“侦探柯南” 找出"真凶" AI已来,未来已来 前言 一个说难不难,说简单竟看不出来是哪里问题的一个bug.是的 可能自己能力和经验尚浅无法识别,下面你们能否用火眼金睛一眼让bug原形毕露 (这个问题是忽然暴露出来的,无任何征兆,没人改动过,生产上运行了很长时间,故很奇怪,所以这个间谍看来很会隐藏) 隐藏的“间谍” 下面先来看代码(伪代码) code /** * 两个从数据库查询的耗时任务 * @param count

  • LangChain简化ChatGPT工程复杂度使用详解

    目录 什么是LangChain? LangChain中的模块,每个模块如何使用? 具体代码 什么是LangChain? 使用ChatGPT大家可能都是知道prompt, (1)想像一下,如果我需要快速读一本书,想通过本书作为prompt,使用ChatGPT根据书本中来回答问题,我们需要怎么做? (2)假设你需要一个问答任务用到prompt A,摘要任务要使用到prompt B,那如何管理这些prompt呢?因此需要用LangChain来管理这些prompt. LangChain的出现,简化了我们

  • 让chatGPT教你如何使用taro创建mbox

    目录 @tarojs/mobx如何使用useLocalstory创建实例 这样其他组件或页面能获取到数据变更吗? 那在函数式组件中如何使用inject @tarojs/mobx如何使用useLocalstory创建实例 @tarojs/mobx 是 Taro 框架的 MobX 实现,提供了 useLocalStore hook 用于在函数组件中创建 MobX store. 要使用 useLocalStore 创建实例,需要先定义一个 MobX store 类.例如,下面是一个简单的计数器示例:

  • Python 调用GPT-3 API实现过程详解

    目录 用 Python 调用 GPT-3 API 安装 GPT-3 特征工程 模型选择 生成合成数据 公共数据集的询问提示 机器学习问题整理 询问研究项目 用 Python 调用 GPT-3 API GPT-3 是去年由 Open AI 推出的语言机器学习模型.它因其能够写作.写歌.写诗,甚至写代码而获得了广泛的媒体关注!该工具免费使用,只需要注册一个电子邮件即可. GPT-3 是一种叫 transformer 的机器学习模型.具体来说,它就是 Generative Pre-training T

  • Python免费试用最新Openai API的步骤

    目录 一.背景介绍 二.API申请 三.Python使用API 一.背景介绍 3月2日凌晨,OpenAI放出了真正的ChatGPT API,不是背后的GPT-3.5大模型,是ChatGPT的本体模型!ChatGPT API价格为1k tokens/$0.002,等于每输出100万个单词,价格才2.7美金(约18元人民币),比已有的GPT-3.5模型便宜10倍. 这将大大降低开发人员将ChatGPT集成到自家应用和服务的门槛,构建属于自己的AI聊天机器人.而且OpenAI将ChatGPT从去年12

  • Python使用pyodbc访问数据库操作方法详解

    本文实例讲述了Python使用pyodbc访问数据库操作方法. 数据库连接 数据库连接网上大致有两种方法,一种是使用pyodbc,另一种是使用win32com.client,测试了很多遍,最终只有pyodbc成功,而且比较好用,所以这里只介绍这种方法 工具库安装 在此基础上安装pyodbc工具库,在cmd窗口执行如下语句安装 pip install pyodbc 如果安装了anaconda也可以使用conda install pyodbc 分享给大家供大家参考,具体如下: 检验是否可以正常连接数

  • python笔记:mysql、redis操作方法

    模块安装: 数据操作用到的模块pymysql,需要通过pip install pymysql进行安装. redis操作用的模块是redis,需要通过pip install redis进行安装. 检验是否安装成功:进入到Python命令行模式,输入import pymysql. import redis ,无报错代表成功: mysql操作方法如下: 查询数据:fetchone.fetchmany(n).fetchall() import pymysql #建立mysql连接,ip.端口.用户名.密

  • python开发之字符串string操作方法实例详解

    本文实例讲述了python开发之字符串string操作方法.分享给大家供大家参考,具体如下: 在python中,对于字符串string的操作,我们有必要了解一下,这样在我们的以后的开发中会给我们带来很多方便 下面是我学习的笔记: #python-string #python中的字符串用单引号''和双引号""标示 strA = 'this is a string' strB = "this is a message!" #打印两个字符串 print("打印两

  • python版本的读写锁操作方法

    本文实例讲述了python版本的读写锁操作方法.分享给大家供大家参考,具体如下: 最近要用到读写锁的机制,但是python2.7的自带库里居然木有. 网上讲读写锁的例子众多,但是原理简单,代码明晰的却不多见, 索性自己写个. 读写锁一般用于多个读者,1个或多个写者同时访问某种资源的时候.多个读者之间是可以共享资源的,但是写者与读者之间,写者与写者之间是资源互斥的. 这也就是说同时可以有多个读者或一个写者处于工作状态. 细分下来,读写锁可以分为三类,读者优先,写者优先和公开策略. 第一种,读者优先

  • Python模块结构与布局操作方法实例分析

    本文实例讲述了Python模块结构与布局操作方法.分享给大家供大家参考,具体如下: #coding=utf8 #起始行 #!/usr/bin/env python #模块文档 ''''' 合理的Module布局: (1) 起始行(Unix) (2) 模块文档 (3) 模块导入 (4) 变量定义 (5) 类定义 (6) 函数定义 (7) 主程序 ----------------------------- (1) 起始行(Unix) 通常只有在类Unix环境下才使用起始行,有起始行可以输入脚本名来执

  • python中字典dict常用操作方法实例总结

    本文实例总结了python中字典dict常用操作方法.分享给大家供大家参考.具体如下: 下面的python代码展示python中字典的常用操作,字典在python开发中有着举足轻重的地位,掌握字典操作相当重要 #创建一空字典 x = {} #创建包含三个项目的字典 x = {"one":1, "two":2, "three":3} #访问其中的一个元素 x['two'] #返回字典中的所有键列表 x.keys() #返回字典中的所有值列表 x.v

  • Python字典及字典基本操作方法详解

    本文实例讲述了Python字典及字典基本操作方法.分享给大家供大家参考,具体如下: 字典是一种通过名字或者关键字引用的得数据结构,其键可以是数字.字符串.元组,这种结构类型也称之为映射.字典类型是Python中唯一內建的映射类型,基本的操作包括如下: (1)len():返回字典中键-值对的数量: (2)d[k]:返回关键字对于的值: (3)d[k]=v:将值关联到键值k上: (4)del d[k]:删除键值为k的项: (5)key in d:键值key是否在d中,是返回True,否则返回Fals

  • Python中拆分字符串的操作方法

    使用字符串时,常见的操作之一是使用给定的分隔符将字符串拆分为子字符串数组.在本文中,我们将讨论如何在Python中拆分字符串. .split()方法 在Python中,字符串表示为不可变的str对象. str类带有许多字符串方法,允许您操作字符串. .split()方法返回由分隔符分隔的子字符串列表. 它采用以下语法: str.split(delim=None, maxsplit=-1) 分隔符可以是字符或字符序列,而不是正则表达式. 在下面的示例中,字符串s将使用逗号分隔,作为分隔符. s =

  • Python数据分析库pandas基本操作方法

    pandas是什么? 是它吗? ....很显然pandas没有这个家伙那么可爱.... 我们来看看pandas的官网是怎么来定义自己的: pandas is an open source, easy-to-use data structures and data analysis tools for the Python programming language. 很显然,pandas是python的一个非常强大的数据分析库! 让我们来学习一下它吧! 1.pandas序列 import nump

随机推荐