Power Automate HTTPアクションでChatGPT(OpenAI)を呼び出す基本手順【JSON解析のコツ】

キャンバスアプリからPower Automate経由でChatGPT(OpenAIのAPI)を呼び出してみたので、その結果をメモ。

スポンサーリンク

今回使用するAPI

今回使用するAPIは「Create chat completion」。

API Keyの取得

APIの実行にはAPIKeyが必要なので、OpenAIのサイトから取得する。

Power Automateの作成

今回はカスタムコネクタを使用せずに、Power Automate経由でChatGPTを呼んでみる。

Power AutomateのトリガーはV2を選んで、
APIのReference通り、こんな感じでHTTPリクエストを呼び出す

{
  "model": "gpt-4o-mini",
  "messages": [
    {
      "role": "system",
      "content": "You are a helpful assistant."
    },
    {
      "role": "user",
      "content": "@{triggerBody()['text']}"
    }
  ]
}
⚠️ 注意:APIキーの取り扱いについて
この記事ではテスト用にAPIキーをフローに直接入力していますが、本番環境や組織で共有する場合は、必ず「環境変数」や「Azure Key Vault」を使用してください。
生のキーをフローに書くと、セキュリティリスクになります。
実際に呼び出してみると、
こんな感じで返答が返ってくるので、
JSONの解析に本文を、
スキーマにさっきの戻り値を入れてあげる。
解析したJSONの中身のGPTからのメッセージをApps側に返してあげる。
※function Callingを使用していないので、choicesの最初のレコードがそのまま返答になる。

first(body('JSON_の解析')?['choices'])?['message']?['content']

これでPower Automateは作成完了!

Power Appsからの呼び出し

作成したフローをAppsから呼び出してみる。

フローを追加して、
フローからの戻り値を変数に入れて、
ラベルに表示する。
動かしてみるとこんな感じ!

今回はOpenAIを呼び出したけど、Azure OpenAIも同じように呼び出すことは可能。

次回は画像生成を呼び出してみる。

関連記事

コメント

タイトルとURLをコピーしました