這個小系列會教學如何使用 Python SDK 操作 Azure OpenAI 內的各項功能,算是一個入門的系列。
有鑑於工作上不斷地有同事會加入使用 Azure OpenAI 的行列,外加不知如何形成的優質企業文化,每次丟微軟官方文檔或套件教學文檔都沒有人要看😩,於是造就了這個系列的誕生。
因應時代的變遷,部分舊的模型(text-davinci-003、text-similarity-davinci-001等)與 Completion API 都不會出現在文章中,取而代之的會盡量是一些比較新的用法。
Python 套件安裝
整個系列都會使用到 openai 這個 Python 函式庫,請先透過以下指令安裝:
pip install openai
Azure OpenAI 模型部署
請先建立 Azure OpenAI 資源,申請或建立的流程可以參考前篇申請流程紀錄。
相關連結:【Azure OpenAI】Azure OpenAI 申請流程全紀錄
建立完成後直接進入 Azure OpenAI Studio 的「模型」頁籤
「模型」頁籤顯示所有可被部署的模型 |
在模型 gpt-35-turbo 上打勾,並點擊 Deploy
這邊先簡單將部署名稱與模型類別設定為一樣,實際使用時可任意設定為喜歡的名稱。另外如果訂閱下可以使用 gpt-4 模型,也可以部署 gpt-4 模型,後續使用方式幾乎是一樣的。
API Key & Endpoint
API 金鑰與端點要到 Azure Portal 中查看,可以先複製下來備用
API Key & Endpoint |
ChatGPT Hello World
完成上述步驟後終於可以開始使用 ChatGPT,其中最常用的聊天功能,以下提供一個基本的呼叫範例
import openai
openai.api_type = "azure"
openai.api_version = "2023-08-01-preview"
openai.api_base = "https://xxxxx.openai.azure.com/" # 你的 Azure OpenAI 端點
openai.api_key = "OPENAI_API_KEY" # 你的 Azure OpenAI 金鑰
response = openai.ChatCompletion.create(
deployment_id="gpt-35-turbo", # 模型部署名稱
messages=[
{"role": "system", "content": "助手是一個預訓練的大型語言模型"},
{"role": "user", "content": "天空是什麼顏色的?"}
]
)
print(response['choices'][0]['message']['content'])
要注意的是 openai.api_base 與 openai.api_key 需要填上之前在 Portal 中複製好的 API 金鑰與端點,而 deployment_id 則是填入模型的部署名稱,如果前面的設定都跟著文章走的話這邊可以不用更改。
直接執行程式碼,會得到以下回應
天空通常被描述為藍色。這是由於地球上的大氣層對可見光的散射效應所致。然而,天空的顏色可能會因各種因素,如太陽的位置、大氣中的灰塵和污染物的含量,以及氣象條件而有所變化。在日出和日落時,天空的顏色可能會呈現橘紅色或粉紅色。此外,在特殊的天氣條件下,如日食或特殊的大氣現象,天空的顏色可能會呈現不尋常的色彩。
GPT 的回覆是具有隨機性的,這邊只要有正常回答問題即可,不用與上述範例相同。
總結
到此即完成使用 Python 操作 Azure OpenAI 的一些基本設定,在最後的呼叫範例中如果有正常回復就表示所有設定是正確的。而目前我們可能還看不懂這個範例,只知道好像詢問了一個問題,而 GPT 也回答了某些事情,但不用擔心,後續還會再針對輸入與輸出的格式做更詳細的說明,請繼續收看下一篇!
系列文章
- 【Azure OpenAI】Azure OpenAI 申請流程全紀錄
- 【Azure OpenAI】Azure OpenAI Python SDK 使用方式:基本設定
- 【Azure OpenAI】Azure OpenAI Python SDK 使用方式:聊天模型
- 【Azure OpenAI】Azure OpenAI Python SDK 使用方式:Embedding
- 【Azure OpenAI】Azure OpenAI Python SDK 使用方式:Function Calling
- 【Azure OpenAI】Azure OpenAI 申請流程全紀錄
- 【Azure OpenAI】Azure OpenAI Python SDK 使用方式:基本設定
- 【Azure OpenAI】Azure OpenAI Python SDK 使用方式:聊天模型
- 【Azure OpenAI】Azure OpenAI Python SDK 使用方式:Embedding
- 【Azure OpenAI】Azure OpenAI Python SDK 使用方式:Function Calling
留言
張貼留言