使用 OpenAI API 和 Python 玩 GPT-3

介紹

在本文中昨凡,我們將使用 GPT-3检激。我將向您展示如何訪問它,并提供一些示例說明您可以使用它做什么允蜈,以及您可以使用它構(gòu)建什么樣的應(yīng)用程序磷箕!

入門

在您可以使用 GPT-3 之前选酗,您必須首先使用OpenAI創(chuàng)建一個帳戶。設(shè)置帳戶后岳枷,要訪問 API芒填,您需要添加計費憑據(jù)。OpenAI 將根據(jù)每個請求向您收費空繁。您可以在此處查看 API 費用殿衰。

添加賬單詳細信息后,您將能夠檢索您的 API 密鑰盛泡。您將需要它來訪問 API播玖。保密很重要,因為任何有權(quán)訪問此密鑰的人都可以代表您提出請求饭于,向您收取費用蜀踏。

重要的

由于使用 API 需要花錢,因此最好確保在發(fā)布應(yīng)用程序之前考慮到這一點掰吕。如果您的應(yīng)用程序在每次有人加載它時都發(fā)出 OpenAPI 請求果覆,然后您為此付費,您可能很快就會產(chǎn)生大量費用殖熟。

我建議您只允許經(jīng)過身份驗證的用戶使用您的應(yīng)用程序局待,并且我肯定會建議添加某種 API 限制。如果您正在構(gòu)建某種 SaaS 應(yīng)用程序菱属,也許您可以讓客戶為他們提出的每個請求付費钳榨,確保他們承擔相關(guān)的成本,而不是您纽门。這可以通過 Stripe 使用記錄實現(xiàn)自動化薛耻,您可以在此處了解更多信息。

使用 API

設(shè)置我們的環(huán)境

現(xiàn)在您已經(jīng)獲得了 API 密鑰赏陵,讓我們玩得開心饼齿!為了讓我們的生活更輕松饲漾,讓我們使用 OpenAI SDK for Python。OpenAI 也有適用于 Node.js 的 SDK缕溉,但是考传,對于這個演示,我們將使用 Python证鸥。您可以使用命令安裝 Python OpenAI SDK pip3 install openai僚楞。

接下來,創(chuàng)建一個新.env文件枉层。這就是我們要在本地存儲我們的 API 密鑰的內(nèi)容镜硕,您可以通過將以下行添加到文件中來做到這一點

OPENAI_API_KEY=YOUR_API_KEY

(其中 YOUR_API_KEY 替換為您的 OpenAI API 密鑰)。

將此文件保留在任何公共 GitHub 存儲庫之外很重要返干,您可以使用.gitignore文件并將其添加.env到其中兴枯。

現(xiàn)在為了加載.env文件,我們需要 dotenv 依賴項矩欠,您可以使用pip3 install python-dotenv.

現(xiàn)在創(chuàng)建一個新的 Python 文件并添加以下代碼行

import os
import openai
from dotenv import load_dotenv

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

def main():
    pass

if __name__ == "__main__":
    main()

這對您來說是一個很好的啟動器财剖,它將自動將您的 API 密鑰從.env文件加載到 OpenAI SDK 中,以便可以使用它癌淮。一般來說躺坟,使用

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

生成文本

要使用 GPT-3 生成文本,請將以下代碼添加到main函數(shù)中

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

print(response)

  • model參數(shù)指定將生成文本的模型類型乳蓄。默認情況下咪橙,OpenAI 提供了幾個模型供您選擇,您可以在此處查看虚倒。此外美侦,您甚至可以創(chuàng)建自己的模型,但這超出了本教程的范圍魂奥。
  • prompt參數(shù)指定您從模型提供的輸入提示菠剩,然后模型將自動完成對它的響應(yīng)。這可以是任何你想要的耻煤。
  • temperature參數(shù)指定響應(yīng)的不確定性具壮。這意味著該模型更有可能產(chǎn)生創(chuàng)造性的東西,并且可以被認為是模型承擔風險并偏離正常反應(yīng)哈蝇。將此參數(shù)設(shè)置為 1 意味著模型將返回它不確定的結(jié)果棺妓,相比之下,將此參數(shù)設(shè)置為 0 意味著模型將返回它幾乎可以肯定的結(jié)果炮赦。
  • max_tokens參數(shù)指定模型允許生成的最大令牌數(shù)量作為其輸出的一部分怜跑。您需要為生成的更多令牌付費,因此請務(wù)必小心使用此參數(shù)眼五。

如果您運行代碼妆艘,您應(yīng)該獲得一個 API 響應(yīng),其中包含 AI 模型根據(jù)您的提示自動生成的響應(yīng)看幼,例如

{
  "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"

響應(yīng)

{
  "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
  }
}

這有多棒棚唆?現(xiàn)在暇赤,您可以從模型中獲取該字符串響應(yīng)并根據(jù)您的應(yīng)用程序的其余部分對其進行處理。

當然宵凌,GPT-3 的功能遠不止日期格式鞋囊,這只是一個例子。我鼓勵你玩弄這個模型瞎惫,看看你能用它做什么溜腐!GPT-3 能夠執(zhí)行的其他任務(wù)的一些示例包括:

  • 翻譯
  • 總結(jié)
  • 代碼完成
  • 配方創(chuàng)建

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

結(jié)論

因此挺益,現(xiàn)在您知道如何利用迄今為止最先進的語言模型之一來滿足您的所有個人或業(yè)務(wù)需求。

關(guān)于成本乘寒,您需要注意幾件事望众,但是,考慮到您可以獲得的功能伞辛,這絕對值得烂翰,更不用說節(jié)省您構(gòu)建、培訓蚤氏、測試和部署您的時間和金錢的時間和金錢了刽酱。自己的機器學習模型,即使是接近 GPT-3 的結(jié)果也不太可能實現(xiàn)瞧捌。

如果您需要使用 GPT-3 構(gòu)建項目的靈感棵里,請在此處查看他們?yōu)槟峁┑氖纠斜怼4送饨隳牛绻肓私庥嘘P(guān)在您的應(yīng)用程序中使用 GPT-3 的更多信息殿怜,請查看文檔!最后曙砂,確保您了解并遵循 OpenAI使用指南头谜。

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

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市鸠澈,隨后出現(xiàn)的幾起案子柱告,更是在濱河造成了極大的恐慌截驮,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,013評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件际度,死亡現(xiàn)場離奇詭異葵袭,居然都是意外死亡,警方通過查閱死者的電腦和手機乖菱,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,205評論 2 382
  • 文/潘曉璐 我一進店門坡锡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人窒所,你說我怎么就攤上這事鹉勒。” “怎么了吵取?”我有些...
    開封第一講書人閱讀 152,370評論 0 342
  • 文/不壞的土叔 我叫張陵禽额,是天一觀的道長。 經(jīng)常有香客問我皮官,道長绵疲,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,168評論 1 278
  • 正文 為了忘掉前任臣疑,我火速辦了婚禮盔憨,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘讯沈。我一直安慰自己郁岩,他們只是感情好,可當我...
    茶點故事閱讀 64,153評論 5 371
  • 文/花漫 我一把揭開白布缺狠。 她就那樣靜靜地躺著问慎,像睡著了一般。 火紅的嫁衣襯著肌膚如雪挤茄。 梳的紋絲不亂的頭發(fā)上如叼,一...
    開封第一講書人閱讀 48,954評論 1 283
  • 那天,我揣著相機與錄音穷劈,去河邊找鬼笼恰。 笑死,一個胖子當著我的面吹牛歇终,可吹牛的內(nèi)容都是我干的社证。 我是一名探鬼主播,決...
    沈念sama閱讀 38,271評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼评凝,長吁一口氣:“原來是場噩夢啊……” “哼追葡!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,916評論 0 259
  • 序言:老撾萬榮一對情侶失蹤宜肉,失蹤者是張志新(化名)和其女友劉穎匀钧,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體谬返,經(jīng)...
    沈念sama閱讀 43,382評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡之斯,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,877評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了朱浴。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片吊圾。...
    茶點故事閱讀 37,989評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡达椰,死狀恐怖翰蠢,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情啰劲,我是刑警寧澤梁沧,帶...
    沈念sama閱讀 33,624評論 4 322
  • 正文 年R本政府宣布,位于F島的核電站蝇裤,受9級特大地震影響廷支,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜栓辜,卻給世界環(huán)境...
    茶點故事閱讀 39,209評論 3 307
  • 文/蒙蒙 一恋拍、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧藕甩,春花似錦施敢、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,199評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至腋妙,卻和暖如春默怨,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背骤素。 一陣腳步聲響...
    開封第一講書人閱讀 31,418評論 1 260
  • 我被黑心中介騙來泰國打工匙睹, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人济竹。 一個月前我還...
    沈念sama閱讀 45,401評論 2 352
  • 正文 我出身青樓垃僚,卻偏偏與公主長得像,于是被迫代替她去往敵國和親规辱。 傳聞我的和親對象是個殘疾皇子谆棺,可洞房花燭夜當晚...
    茶點故事閱讀 42,700評論 2 345

推薦閱讀更多精彩內(nèi)容