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. 準(zhǔn)備好請求的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-01Pytorch使用DataLoader實現(xiàn)批量加載數(shù)據(jù)
這篇文章主要介紹了Pytorch使用DataLoader實現(xiàn)批量加載數(shù)據(jù)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-02-02Python函數(shù)式編程模塊functools的使用與實踐
本文主要介紹了Python函數(shù)式編程模塊functools的使用與實踐,教你如何使用?functools.partial、functools.wraps、functools.lru_cache?和?functools.reduce,感興趣的可以了解一下2024-03-03