使用Python串接Azure OpenAI服務
前言
由於工作需求,我開始使用Azure AI平台。在網路上尋找相關教學時,在打Azure openai的api前所需要填入的參數不知道該往哪裡找。為了方便其他使用者,在這裡記錄一份詳細的指南,說明如何在Azure平台上迅速找到與Azure OpenAI相關的資訊。隨後,我將展示如何將這些資訊正確填入Python程式碼中,並成功執行。
環境介紹
Python 3.11
openai 0.28.1 (自行在IDE上安裝)
須特別留意,Python一定要3.7.1版本以上,先前筆者一直使用3.7版本,即或資訊都填對,程式也都會發生錯誤
Azure AI平台登入取得資訊並Python程式碼參數填寫步驟說明
到這個網址進行登入 https://azure.microsoft.com/zh-tw/solutions/ai 後,連至主控台
並點選Azure OpenAI(如沒有出現在主控台,可直接用上方搜尋欄輸入Azure OpenAI送出即可)點選之前有創建過的GPT模型名稱
點選左側「模型部署」
再點選「管理部署」
就會連至Azure OpenAIO Studio介面,點選左側選單「聊天」
確認右側設定是否就是我們先前部署的部署名稱 (就是確認服務的意思),確認沒問題,點選「檢視程式碼」
就會看到提供的Python範例程式碼
將全部程式碼複製下來到你的IDE上1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17#Note: The openai-python library support for Azure OpenAI is in preview.
import os
import openai
openai.api_type = "azure"
openai.api_base = "https://gpt-xxx.openai.azure.com/"
openai.api_version = "2023-07-01-preview"
openai.api_key = os.getenv("OPENAI_API_KEY")
response = openai.ChatCompletion.create(
engine="gpt35-xxx",
messages = [{"role":"system","content":"You are an AI assistant that helps people find information."}],
temperature=0.7,
max_tokens=800,
top_p=0.95,
frequency_penalty=0,
presence_penalty=0,
stop=None)這時候我們會需要API Key,連回至https://portal.azure.com/ ,回到本文1~2步驟,選到你的Azure OpenAI服務,接著點選左側「金鑰與端點」
點選金鑰1或金鑰2複製都可以,複製下來貼上到第7步驟程式碼的openai.api_key的值
1
openai.api_key = "XXXXXXXXXXXXXXXXXXXXXXXX" # 替換成複製下來的Key
並印出GPT回應內容
1
print(response.choices[0].message.content)
執行程式,如果能成功印出內容就代表串接成功了,像筆者是取得以下回應,每人會不同
Hello! I am an AI assistant here to help you find information. What can I help you with today?
小結
對於一開始接觸Azure AI的人可能有時候需要的資訊會找不太到,所以紀錄一下,讓未來的自己和新接觸的人可以看到這篇記錄快速完成串接。