大家好,我是日下,主要在本技術博客中分享與系統整合(System Integration)相關的實務與技術內容。
近年來,生成式人工智慧(Generative AI)在企業與 IT 業界中受到高度關注。在文本處理領域,雖然 Google Vertex AI PaLM API 等也備受關注,其中,在文本處理與對話式應用領域,ChatGPT 仍是最具代表性的服務之一。
在 Questetra BPM Suite 的客戶群中,關於生成式 AI 應用的討論亦逐漸增加。其中,關於如何透過 API 將 Azure OpenAI Service 的 ChatGPT 與 Questetra BPM Suite 進行整合的需求明顯增加。
※關於 Questetra BPM Suite:
這是一款雲端業務流程管理系統 (SaaS BPMS),涵蓋了從業務流設計到自動化執行以及進度追蹤的全過程。透過直觀的業務流程視覺化與 API 介面整合,助力企業實現業務效率的顯著提升。
本文將簡要說明 OpenAI 原生 ChatGPT 與 Azure OpenAI Service 版 ChatGPT 的差異,並介紹 Azure OpenAI Service 與 Questetra BPM Suite 的 API 整合方式。
(注:本文假設讀者已完成 Azure OpenAI Service 的模型部署,相關設定流程將不在本文中說明。)
※本文將使用以下簡稱:
Azure OpenAI Service → 「AOAI」
Azure OpenAI Service 的 ChatGPT → 「AOAI ChatGPT」
OpenAI 官方提供的 ChatGPT → 「原生 ChatGPT」
Questetra BPM Suite → 「Questetra」
1: 什麼是 Azure OpenAI Service(AOAI)
「AOAI」是 Microsoft 推出的一項服務,允許用戶在 Azure 雲端平台上調用包括 ChatGPT 在內的 OpenAI 多種生成式 AI 模型。它也是 Azure Cognitive Services(認知服務) 體系中的一項服務。與直接使用 OpenAI 官方服務相比,在安全性與資料保護方面,更符合企業級應用需求。
2: 「原生 ChatGPT」與「AOAI ChatGPT」的區別
「AOAI ChatGPT」支援多種身分驗證和連線方式,能夠滿足企業對高安全性的需求,因此,通常被認為比「原生 ChatGPT」更適合商業用途。
此外,關於「原生 ChatGPT」,官方曾提到輸入的數據可能會被用於模型訓練。雖然透過 API 提交的數據不會被用於模型訓練,但一般員工在實際使用時往往難以區分這些差異。這難免會讓系統管理員對數據安全感到擔憂。因此,從資料保護與資訊外洩風險控管的角度來看,「AOAI ChatGPT」在企業級安全性與合規性方面更具優勢。
※什麼是 ChatGPT?通俗易懂地解釋其與 Azure OpenAI Service 的區別(軟銀公司官方部落格)【僅日語版本】
(引用自對比表「訓練數據」欄):「對於 SaaS 版本,輸入的資訊有可能被用於 ChatGPT 的訓練。」
※OpenAI 平台介紹(OpenAI 官網)
(概覽部分):「在 OpenAI,保護用戶數據是我們的核心使命。我們不會利用透過 API 提交的輸入和輸出數據來訓練模型。更多詳情請參閱 API 數據隱私頁面。」
※關於 Azure OpenAI Service 的常見問題(微軟官網)
「模型訓練會使用我公司的數據嗎? → Azure OpenAI 不會使用客戶數據來重新訓練模型。」
3: 「AOAI」的 API 參考指南
不僅僅是「AOAI」,微軟的文檔通常量非常大,新舊資訊交織在一起,在實際查找特定 API 的最新規格時,往往需要進一步比對不同版本的文件內容。我在研究「AOAI」時也遇到了同樣的情況。
以下 API 參考指南中似乎一度沒有包含最新資訊……
Azure OpenAI Service REST API 參考指南
例如,在實際驗證過程中,一度未能在主要參考文件中確認相關 API 路徑的說明。
https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/chat/completions
的描述,文件中只提到了不帶 /chat 的 /completions 路徑。
後來我仔細閱讀了下方的 Swagger 專用 JSON 檔案,才找到了 /chat/completions 的相關記載。(這是截至 2023/8 的情況,目前 2023/9/8 的參考文件中已經補充了該內容。)
Swagger 專用 JSON 檔案 2023-06-01 版

透過參考這些技術文件,我成功驗證了「AOAI ChatGPT」與「Questetra」之間的 API 介面整合運作情況。
4: 呼叫「AOAI」API 時的身分驗證
正如前文提到的 API 參考文件開頭所述,主要有以下兩種驗證方式:
- API 金鑰驗證
- Microsoft Entra ID 驗證
經過多次嘗試,由於 Azure AD 驗證配置較為複雜(截至 2023/9/6 仍未成功)……
因此,我決定利用 Questetra Ver.15.1 中新增的「HTTP 自訂標頭(支援指定 api-key)」功能,採用 API 金鑰驗證方案。
5: 如何輕鬆實現「AOAI ChatGPT」與「Questetra」的 API 連動
經過一番摸索,我終於成功實現了「AOAI ChatGPT」與「Questetra」的整合,並為此準備了Add-on XML(擴充元件 XML)(可在流程設計中使用的擴充組件)!
該擴充元件基於下方的「原生 ChatGPT」版元件修改而成。考慮到「AOAI ChatGPT」特有的配置項目以及元件 XML 配置項目的數量限制,我對部分功能進行了精簡和優化。
透過使用上述「AOAI ChatGPT」專用擴充元件,您無需再反覆查閱複雜的微軟 API 文件,即可輕鬆實現系統整合。(關於具體的配置方法,請查看上述連結中的 Notes 說明。)
關於如何匯入 Questetra 「擴充元件 XML」的方法,請參考以下操作手冊:
M415: 在業務流程定義中添加可用的自動化步驟
6: 總結
Questetra 只需透過下方表格申請,即可立即開啟免費試用!如果您希望在日常業務中引入生成式 AI 的自動化協作,請務必嘗試一下。
此外,我們還在下方的列表頁面準備了多種業務流程範例,涵蓋了「原生 ChatGPT」、「AOAI ChatGPT」以及其他生成式 AI 的整合案例。歡迎參考!

