Python調(diào)用ChatGPT?API接口的用法詳解
Python 調(diào)用ChatGPT API 接口介紹
ChatGPT 介紹
- https://platform.openai.com/examples
- https://platform.openai.com/docs/api-reference
ChatGPT可以實現(xiàn)chat,生成圖片,識別關(guān)鍵,改錯等等功能,本文簡單介紹如何使用python調(diào)用ChatGPT API 接口。

1. 生成API Key
從openai官網(wǎng)網(wǎng)址:https://platform.openai.com/account/api-keys,生成我們的API key:

獲得key后我們就可以調(diào)用API接口了。
2. 安裝openai
使用pip安裝openai庫,命令: pip install openai。
安裝openai庫: pip install openai
3. python代碼調(diào)用API
3.1 主要步驟
# 調(diào)用openai api的步驟 # 1. 安裝openai庫 pip install openai # 2. 設(shè)置openai的api_key # 3. 調(diào)用openai的api # 4. 參考文檔 # https://platform.openai.com/docs/api-reference/completions/create # https://platform.openai.com/docs/api-reference/authentication # https://platform.openai.com/docs/api-reference/completions/create # https://platform.openai.com/docs/libraries/community-libraries
3.2 代碼示例
API可以實現(xiàn)chat,生成圖片,識別關(guān)鍵,改錯等等功能。 下面是主要示例代碼。 注意:openai.api_key = "sk-xxxFQ" #要更換成自已的API KEY
#!/usr/local/bin/python3.8
# -*- coding: utf8 -*-
# 調(diào)用openai api的步驟
# 1. 安裝openai庫 pip install openai
# 2. 設(shè)置openai的api_key
# 3. 調(diào)用openai的api
# 4. 參考文檔
# https://platform.openai.com/docs/api-reference/completions/create
# https://platform.openai.com/docs/api-reference/authentication
# https://platform.openai.com/docs/api-reference/completions/create
# https://platform.openai.com/docs/libraries/community-libraries
import os
import openai
import json
# 1. 準備好請求的url
#openai.organization = "YOUR_ORG_ID" #
#openai.api_key = os.getenv("OPENAI_API_KEY")
openai.api_key = "sk-xxxFQ" #要更換成自已的API KEY
# 查看可以使用的模型列表
def get_model_list():
models= openai.Model.list()
print(models)
# 生成文本示例
def generate_text(prompt):
completions = openai.Completion.create(
engine="text-davinci-002",
prompt=prompt,
max_tokens=1024,
n=1,
stop=None,
temperature=0.5,
)
message = completions.choices[0].text
return message.strip()
# 調(diào)用openai 畫圖示例
def generate_image(prompt):
response = openai.Image.create(
prompt = prompt,
n=1,
size="512x512"
)
image_url = response['data'][0]['url']
return image_url
# 調(diào)用openai 問答示例
def chat(prompt):
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{"role": "user", "content":prompt}
]
)
answer = response.choices[0].message.content
return answer
# 調(diào)用openai 改正錯詞輸出正確句子
def correct():
prompt="改正錯詞輸出正確句子:\n\n我在京東電商平臺買了蘋果耳幾和華為體脂稱" #建議prompt: 改正錯詞輸出正確句子:\n\n input_sentence
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{"role": "user", "content":prompt}
]
)
answer = response.choices[0].message.content
return answer
# 調(diào)用openai 識別關(guān)鍵詞
def keyword():
prompt="對下面內(nèi)容識別2個關(guān)鍵詞,每個詞字數(shù)不超過3個字:\n\n齊選汽車掛件車內(nèi)掛飾車載后視鏡吊墜高檔實心黃銅玉石出入平安保男女 紅流蘇-玉髓平安扣" #建議prompt: 對下面內(nèi)容識別n個關(guān)鍵詞,每個詞字數(shù)不超過m個字:\n\n input data
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{"role": "user", "content":prompt}
]
)
answer = response.choices[0].message.content
return answer
# 抽取文本向量 (Embedding)
def embedding():
content = '蘋果手機'
response = openai.Embedding.create(
model="text-embedding-ada-002",
input=content
)
answer = response.data[0].embedding
return answer
def api_test():
# 測試chat
# prompt = "人口最多的國家?"
# response = chat(prompt)
# print(response)
#
# 測試generate_text
# prompt = "Hello, how are you today?"
# response = generate_text(prompt)
# print(response)
# 測試generate_image
#prompt = "a delicious dessert"
#response = generate_image(prompt)
#print(response)
# 測試correct
# response = correct()
# print(response) #輸出結(jié)果: 我在京東電商平臺買了蘋果耳機和華為體脂秤。
# 測試keyword
#response = keyword()
#print(response) #輸出結(jié)果: 掛件、平安扣
# 測試embedding
result = embedding()
print(len(result))
print(result)
if __name__ == '__main__':
api_test()4. flask實現(xiàn)chat效果的示例
https://github.com/openai/openai-quickstart-python
下載git代碼:
git clone https://github.com/openai/openai-quickstart-python.git cd openai-quickstart-python cp .env.example .env python -m venv venv . venv/bin/activate pip install -r requirements.txt flask run
運行效果:

到此這篇關(guān)于Python調(diào)用ChatGPT API接口的用法詳解的文章就介紹到這了,更多相關(guān)Python調(diào)用ChatGPT API接口內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python3 自動識別usb連接狀態(tài),即對usb重連的判斷方法
今天小編就為大家分享一篇python3 自動識別usb連接狀態(tài),即對usb重連的判斷方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07
深度學(xué)習(xí)TextLSTM的tensorflow1.14實現(xiàn)示例
這篇文章主要為大家介紹了深度學(xué)習(xí)TextLSTM的tensorflow1.14實現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-01-01
Pytorch使用DataLoader實現(xiàn)批量加載數(shù)據(jù)
這篇文章主要介紹了Pytorch使用DataLoader實現(xiàn)批量加載數(shù)據(jù)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-02-02
Python函數(shù)式編程模塊functools的使用與實踐
本文主要介紹了Python函數(shù)式編程模塊functools的使用與實踐,教你如何使用?functools.partial、functools.wraps、functools.lru_cache?和?functools.reduce,感興趣的可以了解一下2024-03-03

