はじめに
記事執筆時点で Azure OpenAI Service の GPT-4関連の API を扱おうとした場合、いくつかの種類があって、個人的に情報を整理したいと思いました。そのようなモチベーションで書いた記事です。
主に扱うのは、GPT-4 の中でも以下の内容です。
- gpt-4 (0613)
- gpt-4 (vision-preview)
- GPT-4 Turbo with Vision Preview
SwedenCentral で GPT-4 のモデルをデプロイしてみる
GPT-4 の特定の機能は、記事執筆時点では特定のリージョンでのみ利用可能です。
そのような中で本記事では、記事執筆時点で「GPT-4 Turbo with Vision」を扱えるリージョン(※1)の 1つ「SwedenCentral」でモデルのデプロイを試しつつ GPT-4 の情報を見ていきます。
※1 SwitzerlandNorth、 SwedenCentral、 WestUS、 AustraliaEast のいずれか
●クイックスタート: Azure Open AI Service で画像とビデオに GPT-4 Turbo with Vision を使用する - Azure OpenAI | Microsoft Learn
https://learn.microsoft.com/ja-jp/azure/ai-services/openai/gpt-v-quickstart?tabs=image&pivots=programming-language-studio#prerequisites
「SwedenCentral」で選べる GPT-4 のベースモデル・モデルバージョン
SwedenCentral で GPT-4 を選んだ場合、選べる選択肢を確認してみます。
まず、ベースモデルは「gpt-4」「gpt-4-32k」の 2つがが選択できました。
ベースモデル「gpt-4」のモデルバージョン
ベースモデルで「gpt-4」を選択した場合に選べるモデルバージョンを確認してみます。
自動更新以外では、以下のように「1106-Preview」「0613」「vision-preview」を選択できます。
gpt-4-32k のモデルバージョン
次にベースモデルで「gpt-4-32k」を選択した場合に選べるモデルバージョンを確認してみます。
この場合、自動更新以外では、以下のように「0613」のみ選択できます。
モデルのデプロイを試してみる GPT-4 のモデル
上記の選択肢がありますが、今回モデルのデプロイを試してみる GPT-4 のモデルを選びます。
具体的には、以下の組み合わせ 3つを選んでみました。
- 試す GPT-4 のモデル
- モデル名: gpt-4、モデル バージョン: 0613
- モデル名: gpt-4、モデル バージョン: 1106-Preview
- モデル名: gpt-4、モデル バージョン: vision-preview
デプロイしてみる
実際に 3種類のモデルをデプロイしてみた結果は以下となります。
上記の GPT-4 のモデルの補足
上記の 3通りの組み合わせを選んでみましたが、ここで、モデル バージョンが「0613」「1106-Preview」「vision-preview」と 3種類あるので、それについて少し情報を補足します。
モデルの違い1
下記のとおり、「0613」と「1106-Preview」「vision-preview」とを比較すると、扱えるトークンの長さやトレーニングデータがいつ時点のものか、という点が異なっています。
●Azure OpenAI Service モデル - Azure OpenAI | Microsoft Learn
https://learn.microsoft.com/ja-jp/azure/ai-services/openai/concepts/models
●Azure OpenAI Service モデル - Azure OpenAI | Microsoft Learn
https://learn.microsoft.com/ja-jp/azure/ai-services/openai/concepts/models#model-summary-table-and-region-availability
モデルの違い2
さらに機能面の違いについて、それが書かれている記事を掲載してみます。
ざっくりと「モデル バージョン: 1106-Preview」についての特長を、いくつかキーワードベースで書き出してみると、以下となるようです。
- 「モデル バージョン: 1106-Preview」
- JSON mode
- reproducible outputs
- parallel function calling
以下で記事を列挙します。
●Models - OpenAI API
https://platform.openai.com/docs/models/gpt-4-and-gpt-4-turbo
●New models and developer products announced at DevDay
https://openai.com/blog/new-models-and-developer-products-announced-at-devday
●GPT-4 Turbo with Vision モデルを使用する方法 - Azure OpenAI Service | Microsoft Learn
https://learn.microsoft.com/ja-jp/azure/ai-services/openai/how-to/gpt-with-vision
●Azure OpenAI Service で関数呼び出しを使用する方法 - Azure OpenAI Service | Microsoft Learn
https://learn.microsoft.com/ja-jp/azure/ai-services/openai/how-to/function-calling?tabs=python
●Azure OpenAI Serviceで JSON モードを使用する方法 - Azure OpenAI | Microsoft Learn
https://learn.microsoft.com/ja-jp/azure/ai-services/openai/how-to/json-mode?tabs=python
●Azure OpenAI Service を使用して再現可能な出力を生成する方法 - Azure OpenAI | Microsoft Learn
https://learn.microsoft.com/ja-jp/azure/ai-services/openai/how-to/reproducible-output?tabs=pyton
●Azure OpenAI Service で GPT-4 Turbo with Vision を使う
https://zenn.dev/microsoft/articles/cd3060cbcf0303
●Azure OpenAIでJSON Modeを使う!
https://zenn.dev/microsoft/articles/azure-openai-jsom-mode
モデルの違い3: 価格
GPT-4 のモデル バージョン「0613」「1106-Preview」「vision-preview」の 3種類について、「SwedenCentral」で利用する場合の価格は以下となっているようです。
●Azure OpenAI Service - 価格 | Microsoft Azure
https://azure.microsoft.com/ja-jp/pricing/details/cognitive-services/openai-service/
サポートされているプログラミング言語
Azure OpenAI Service でサポートされているプログラミング言語の情報を見てみます。
●Azure OpenAI Service でサポートされているプログラミング言語 - Azure AI services | Microsoft Learn
https://learn.microsoft.com/ja-jp/azure/ai-services/openai/supported-languages
上記のとおり、5種類のプログラミング言語がサポートされているようです。
その中で、例えば「JavaScript」「Python」の「ソース コード、Package、例」の各項目のリンクを見てみると、以下のページのリンクになっていました。
JavaScript
●azure-sdk-for-js/sdk/openai/openai at main · Azure/azure-sdk-for-js
https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/openai/openai
●@azure/openai - npm
https://www.npmjs.com/package/@azure/openai
●azure-sdk-for-js/sdk/openai/openai/samples at main · Azure/azure-sdk-for-js
https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/openai/openai/samples/
Python
●openai/openai-python: The official Python library for the OpenAI API
https://github.com/openai/openai-python
●openai · PyPI
https://pypi.org/project/openai/
●Python を使用して OpenAI エンドポイントと Azure OpenAI Service エンドポイントを切り替える方法 - Azure OpenAI Service | Microsoft Learn
https://learn.microsoft.com/ja-jp/azure/ai-services/openai/how-to/switching-endpoints
おわりに
Azure OpenAI Service の GPT-4 についての情報を見ていこうとした場合に、個人的にごちゃごちゃしていた感じがしたので、それを自分の中で整理する意味で記事に書きだしてみました。
この後は、実際の API経由でモデルを使ったお試しをやっていこうと思います。
GPt−4 以外で試してみたいこと
今回扱った GPt−4 以外で、Azure OpenAI Service の以下も試していきたいと思っています。
DALL-E-3 による画像生成(記事執筆時点では、リージョン SwedenCentral のみ)
●クイックスタート: Azure OpenAI Service を使用して画像を生成する - Azure OpenAI | Microsoft Learn
https://learn.microsoft.com/ja-jp/azure/ai-services/openai/dall-e-quickstart?tabs=dalle3%2Ccommand-line&pivots=programming-language-studio
Whisper による音声のテキスト化(記事執筆時点では、リージョン 米国中北部・西ヨーロッパ のみ)
●Azure OpenAI Service を使った音声テキスト変換 - Azure OpenAI | Microsoft Learn
https://learn.microsoft.com/ja-jp/azure/ai-services/openai/whisper-quickstart?tabs=command-line&pivots=rest-api