Azure Machine Learning スタジオで Meta Llama ファミリのモデルを使用する方法
この記事では、Meta Llama モデル ファミリ (LLM) について説明します。 Meta Llama のモデルとツールは、事前トレーニングされ、微調整された生成 AI テキストと画像推論モデルのコレクションです。デバイス上とエッジ推論向けの SLM (1B、3B Base および Instruct モデル) から、中規模の LLM (7B、8B、70B Base および Instruct モデル)、合成データ生成や蒸留のユース ケース向けのハイ パフォーマンス モデル (Meta Llama 3.1 405B など) まで、さまざまな規模のものが揃っています。
ヒント
現在、Azure AI モデル カタログでリリースされた Meta の Llama 3.2 ファミリ モデルのお知らせについては、Meta のブログと Microsoft Tech Community ブログを参照してください。
次の GitHub サンプルを参照し、LangChain、LiteLLM、OpenAI、Azure API との統合を確認します。
重要
現在、この機能はパブリック プレビュー段階にあります。 このプレビュー バージョンはサービス レベル アグリーメントなしで提供されており、運用環境のワークロードに使用することは推奨されません。 特定の機能はサポート対象ではなく、機能が制限されることがあります。
詳しくは、Microsoft Azure プレビューの追加使用条件に関するページをご覧ください。
Meta Llama ファミリのモデル
Meta Llama ファミリのモデルには次のモデルが含まれています。
SLM および画像推論モデルの Llama 3.2 コレクションがリリースされました。 近日中に、Llama 3.2 11B Vision Instruct および Llama 3.2 90B Vision Instruct が、サービスとしてのモデルを介したサーバーレス API エンドポイントとして使用できるようになります。 本日より、マネージド コンピューティングを介して次のモデルをデプロイできるようになります。
- Llama 3.2 1B
- Llama 3.2 3B
- Llama 3.2 1B Instruct
- Llama 3.2 3B Instruct
- Llama Guard 3 1B
- Llama Guard 11B Vision
- Llama 3.2 11B Vision Instruct
- Llama 3.2 90B Vision Instruct は、マネージド コンピューティングのデプロイに使用できます。
前提条件
有効な支払い方法を持つ Azure サブスクリプション。 無料または試用版の Azure サブスクリプションは機能しません。 Azure サブスクリプションを持っていない場合は、始めるために有料の Azure アカウントを作成してください。
Azure Machine Learning ワークスペースとコンピューティング インスタンス。 これらを所有していない場合は、クイックスタート: ワークスペース リソースの作成に関する記事の手順に従って作成してください。 Meta Llama 3.1 および Llama 3 用のサーバーレス API モデル デプロイ オファリングは、次のリージョン内に作成されたワークスペースでのみ使用できます。
- 米国東部
- 米国東部 2
- 米国中北部
- 米国中南部
- 米国西部
- 米国西部 3
- スウェーデン中部
サーバーレス API エンドポイントのデプロイをサポートする各モデルが利用できるリージョンの一覧については、「サーバーレス API エンドポイントのモデルが利用できるリージョン」を参照してください。
Azure ロールベースのアクセス制御 (Azure RBAC) は、Azure Machine Learning の操作に対するアクセスを許可するために使用されます。 この記事の手順を実行するには、ユーザー アカウントに、Azure サブスクリプションの所有者か共同作成者ロールを割り当てる必要があります。 別の方法として、アカウントに、次のアクセス許可を持つカスタム ロールを割り当てることができます。
Azure サブスクリプションで - ワークスペースを Azure Marketplace オファリングにサブスクライブするため、各ワークスペースに対して 1 回、オファリングごと:
Microsoft.MarketplaceOrdering/agreements/offers/plans/read
Microsoft.MarketplaceOrdering/agreements/offers/plans/sign/action
Microsoft.MarketplaceOrdering/offerTypes/publishers/offers/plans/agreements/read
Microsoft.Marketplace/offerTypes/publishers/offers/plans/agreements/read
Microsoft.SaaS/register/action
リソース グループで - SaaS リソースを作成して使用するため:
Microsoft.SaaS/resources/read
Microsoft.SaaS/resources/write
ワークスペースで - エンドポイントをデプロイするため (Azure Machine Learning データ サイエンティスト ロールには、既に次のアクセス許可が含まれています):
Microsoft.MachineLearningServices/workspaces/marketplaceModelSubscriptions/*
Microsoft.MachineLearningServices/workspaces/serverlessEndpoints/*
アクセス許可の詳細については、「Azure Machine Learning ワークスペースへのアクセスの管理」を参照してください。
新しいデプロイを作成する
デプロイを作成するには:
[Azure Machine Learning Studio] に移動します。
モデルをデプロイするワークスペースを選択します。 従量課金制のモデル デプロイ オファリングを使うには、この記事の前提条件で列記されている使用可能なリージョンのいずれかに、ワークスペースが属している必要があります。
モデル カタログからデプロイする
Meta-Llama-3.1-405B-Instruct
を選びます。別の方法として、ワークスペースに移動し、[エンドポイント]>[Serverless endpoints] (サーバーレス エンドポイント)>[作成] を選択して、デプロイを開始することもできます。
Meta-Llama-3.1-405B-Instruct
の [詳細] ページで、[デプロイ] を選択し、次に [Azure AI Content Safety を使用したサーバーレス API] を選択します。デプロイ ウィザードで、リンク [Azure Marketplace の使用条件] を選択して、使用条件の詳細を確認します。 [Marketplace オファーの詳細] タブを選択して、選択したモデルの価格について確認することもできます。
ワークスペースにモデルを初めてデプロイする場合は、Azure Marketplace から特定のオファリング (
Meta-Llama-3.1-405B-Instruct
など) 用のワークスペースをサブスクライブする必要があります。 この手順では、前提条件に記載されている Azure サブスクリプションのアクセス許可とリソース グループのアクセス許可がアカウントに付与されていることが必要です。 各ワークスペースには、特定の Azure Marketplace オファリングへのそれぞれのサブスクリプションがあり、これにより支出を制御および監視できます。 [サブスクライブしてデプロイ] を選択します。Note
ワークスペースを特定の Azure Marketplace オファリング (この場合、Llama-3-70B) にサブスクライブするには、プロジェクトが作成されるサブスクリプション レベルの共同作成者または所有者アクセス権をアカウントが持っている必要があります。 別の方法として、「前提条件」に記載されている Azure サブスクリプションのアクセス許可とリソース グループのアクセス許可を持つカスタム ロールをユーザー アカウントに割り当てることもできます。
特定の Azure Marketplace オファリングにワークスペースをサインアップすると、"同じ" ワークスペース内の "同じ" オファリングの以降のデプロイで再度サブスクライブする必要はありません。 そのため、以降のデプロイに対するサブスクリプション レベルのアクセス許可を持つ必要はありません。 このシナリオが該当する場合は、[デプロイを続行] を選択します。
デプロイに名前を付けます。 この名前は、デプロイ API URL の一部になります。 この URL は、Azure リージョンごとに一意である必要があります。
展開 を選択します。 デプロイが完了し、サーバーレス エンドポイント ページにリダイレクトされるまで待ちます。
エンドポイントを選択してその [詳細] ページを開きます。
[テスト] タブを選択して、モデルの操作を開始します。
デプロイを呼び出して予測変換を生成する [ターゲット] URL と [秘密鍵] をメモすることもできます。
エンドポイントの詳細、URL、アクセス キーは、[ワークスペース]>[エンドポイント]>[Serverless endpoints] (サーバーレス エンドポイント) に移動することでいつでも確認できます。
サーバーレス API としてデプロイされる Meta Llama モデルの課金については、「サーバーレス API としてデプロイされる Meta Llama モデルのコストとクォータに関する考慮事項」を参照してください。
Meta Llama モデルをサービスとして使用する
サービスとしてデプロイされるモデルは、デプロイしたモデルの種類に応じて、チャットまたは入力候補 API を使用して消費できます。
[ワークスペース] で、[エンドポイント]>[Serverless endpoints] (サーバーレス エンドポイント) を選択します。
作成した
Meta-Llama-3.1-405B-Instruct
のデプロイを見つけて選びます。[ターゲット] URL と [キー] のトークン値をコピーします。
デプロイしたモデルの種類に基づいて API 要求を行います。
Llama-3-8B
などの入力候補モデルの場合は、<target_url>/v1/completions
API を使用します。Meta-Llama-3.1-405B-Instruct
などのチャット モデルの場合は、/chat/completions
API を使用します。
API の使用方法の詳細については、リファレンスのセクションを参照してください。
サーバーレス API としてデプロイされた Meta Llama 3.1 モデルのリファレンス
Llama モデルは、ルート /chat/completions
の Azure AI Model Inference API または /v1/chat/completions
の Llama Chat API の両方を受け入れます。 同様に、テキスト入力候補は、ルート /completions
の Azure AI Model Inference API または /v1/completions
の Llama Completions API を使って生成できます
Azure AI Model Inference API スキーマは、チャット入力候補のリファレンスの記事にあり、OpenAPI 仕様はエンドポイント自体から取得できます。
入力候補 API
メソッド POST
を使用して、/v1/completions
ルートに要求を送信します:
Request
POST /v1/completions HTTP/1.1
Host: <DEPLOYMENT_URI>
Authorization: Bearer <TOKEN>
Content-type: application/json
要求スキーマ
ペイロードは、次のパラメーターを含む JSON 形式の文字列です:
キー | Type | Default | 説明 |
---|---|---|---|
prompt |
string |
既定値はありません。 この値は指定する必要があります。 | モデルに送信するプロンプト。 |
stream |
boolean |
False |
ストリーミングを使用すると、生成されたトークンが使用可能になるたびに、データのみのサーバー送信イベントとして送信できます。 |
max_tokens |
integer |
16 |
完了で生成されるトークンの最大数。 プロンプトのトークン数と max_tokens の合計は、モデルのコンテキスト長を超えることはできません。 |
top_p |
float |
1 |
核サンプリングと呼ばれる、温度によるサンプリングの代替の場合、モデルでは top_p 確率質量を持つトークンの結果が考慮されます。 したがって、0.1 は、上位 10% の確率質量を含むトークンのみが考慮されることを意味します。 一般に、top_p と temperature の両方ではなく、いずれかを変更することをお勧めします。 |
temperature |
float |
1 |
使うサンプリング温度 (0 から 2)。 値が大きいほど、モデルはトークンの分布をより広くサンプルすることを意味します。 ゼロは、最長一致のサンプリングを意味します。 これと top_p の両方ではなく、いずれかを変更することをお勧めします。 |
n |
integer |
1 |
プロンプトごとに生成する入力候補の数。 注: このパラメーターにより多くの入力候補が生成されるため、トークン クォータがすぐに消費される可能性があります。 |
stop |
array |
null |
API がそれ以降のトークンの生成を停止する単語を含む文字列または文字列のリスト。 返されるテキストに停止シーケンスは含まれません。 |
best_of |
integer |
1 |
サーバー側で best_of 入力候補を生成し、"最適なもの" (トークンあたりの対数確率が最低のもの) を返します。 結果をストリーミングすることはできません。 n とともに使用すると、best_of は入力候補の数を制御し、n は返す数を指定します。best_of は n より大きくする必要があります。 注: このパラメーターにより多くの入力候補が生成されるため、トークン クォータがすぐに消費される可能性があります。 |
logprobs |
integer |
null |
logprobs に含める、最も可能性の高いトークンと選択したトークンの対数確率を示す数値。 たとえば、logprobs が 10 の場合、API は最も可能性が高い 10 個のトークンの一覧を返します。 API は、常にサンプリングされたトークンの logprob を返します。そのため、応答には、最大 logprobs + 1 個の要素が含まれる可能性があります。 |
presence_penalty |
float |
null |
-2.0 ~ 2.0 の数。 正の値は、新しいトークンがこれまでのテキストに表示されているかどうかに基づいてペナルティを課し、モデルが新しいトピックについて話す可能性を高めます。 |
ignore_eos |
boolean |
True |
EOS トークンを無視し、EOS トークンの生成後もトークンの生成を続行するかどうかを指定します。 |
use_beam_search |
boolean |
False |
サンプリングの代わりにビーム検索を使用するかどうかを指定します。 この場合、best_of は 1 より大きく、temperature は 0 である必要があります。 |
stop_token_ids |
array |
null |
生成されると、以降のトークンの生成を停止するトークンの ID の一覧。 返される出力には、停止トークンが特殊なトークンでない限り、停止トークンが含まれます。 |
skip_special_tokens |
boolean |
null |
出力内の特別なトークンをスキップするかどうかを指定します。 |
例
本文
{
"prompt": "What's the distance to the moon?",
"temperature": 0.8,
"max_tokens": 512,
}
応答スキーマ
応答ペイロードは、次のフィールドを持つディクショナリです。
キー | Type | 説明 |
---|---|---|
id |
string |
チャット入力候補の一意識別子。 |
choices |
array |
入力プロンプト用にモデルが生成した入力候補の一覧。 |
created |
integer |
入力候補が作成されたときの Unix タイムスタンプ (秒単位)。 |
model |
string |
入力候補に使用される model_id。 |
object |
string |
オブジェクトの種類。これは常に text_completion です。 |
usage |
object |
入力候補要求の使用状況の統計情報。 |
ヒント
ストリーミング モードでは、応答のチャンクごとに、ペイロード [DONE]
によって終了される最後のチャンクを除き、finish_reason
は常に null
です。
choices
オブジェクトは、次のフィールドを持つディクショナリです。
キー | Type | 説明 |
---|---|---|
index |
integer |
選択肢インデックス。 best_of > 1 のとき、この配列内のインデックスは順序が整っていない可能性があり、0 から n-1 ではない可能性があります。 |
text |
string |
入力候補の結果。 |
finish_reason |
string |
モデルがトークンの生成を停止した理由。 - stop : モデルが自然な停止ポイント、または指定された停止シーケンスに達した場合。 - length : トークンの最大数に達した場合。 - content_filter : RAI がモデレートを行い、CMP がモデレーションを強制するとき。 - content_filter_error : モデレーション中にエラーが発生し、応答を決定できなかった場合。 - null : API 応答がまだ進行中であるか未完了の場合。 |
logprobs |
object |
出力テキスト内の生成されたトークンのログ確率。 |
usage
オブジェクトは、次のフィールドを持つディクショナリです。
キー | Type | Value |
---|---|---|
prompt_tokens |
integer |
プロンプト内のトークンの数。 |
completion_tokens |
integer |
入力候補に生成されたトークンの数。 |
total_tokens |
integer |
トークンの合計数。 |
logprobs
オブジェクトは、次のフィールドを持つディクショナリです:
キー | Type | Value |
---|---|---|
text_offsets |
array の integers |
入力候補出力内の各トークンの位置またはインデックス。 |
token_logprobs |
array の float |
top_logprobs 配列内のディクショナリから選択された logprobs 。 |
tokens |
array の string |
選択されたトークン。 |
top_logprobs |
array の dictionary |
ディクショナリの配列。 各ディクショナリでは、キーはトークンであり、値は prob です。 |
例
{
"id": "12345678-1234-1234-1234-abcdefghijkl",
"object": "text_completion",
"created": 217877,
"choices": [
{
"index": 0,
"text": "The Moon is an average of 238,855 miles away from Earth, which is about 30 Earths away.",
"logprobs": null,
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 7,
"total_tokens": 23,
"completion_tokens": 16
}
}
チャット API
メソッド POST
を使用して、/v1/chat/completions
ルートに要求を送信します。
Request
POST /v1/chat/completions HTTP/1.1
Host: <DEPLOYMENT_URI>
Authorization: Bearer <TOKEN>
Content-type: application/json
要求スキーマ
ペイロードは、次のパラメーターを含む JSON 形式の文字列です:
キー | Type | Default | 説明 |
---|---|---|---|
messages |
string |
既定値はありません。 この値は指定する必要があります。 | モデルにプロンプトを表示するために使用するメッセージまたはメッセージの履歴。 |
stream |
boolean |
False |
ストリーミングを使用すると、生成されたトークンが使用可能になるたびに、データのみのサーバー送信イベントとして送信できます。 |
max_tokens |
integer |
16 |
完了で生成されるトークンの最大数。 プロンプトのトークン数と max_tokens の合計は、モデルのコンテキスト長を超えることはできません。 |
top_p |
float |
1 |
核サンプリングと呼ばれる、温度によるサンプリングの代替の場合、モデルでは top_p 確率質量を持つトークンの結果が考慮されます。 したがって、0.1 は、上位 10% の確率質量を含むトークンのみが考慮されることを意味します。 一般に、top_p と temperature の両方ではなく、いずれかを変更することをお勧めします。 |
temperature |
float |
1 |
使うサンプリング温度 (0 から 2)。 値が大きいほど、モデルはトークンの分布をより広くサンプルすることを意味します。 ゼロは、最長一致のサンプリングを意味します。 これと top_p の両方ではなく、いずれかを変更することをお勧めします。 |
n |
integer |
1 |
プロンプトごとに生成する入力候補の数。 注: このパラメーターにより多くの入力候補が生成されるため、トークン クォータがすぐに消費される可能性があります。 |
stop |
array |
null |
API がそれ以降のトークンの生成を停止する単語を含む文字列または文字列のリスト。 返されるテキストに停止シーケンスは含まれません。 |
best_of |
integer |
1 |
サーバー側で best_of 入力候補を生成し、"最適なもの" (トークンあたりの対数確率が最低のもの) を返します。 結果をストリーミングすることはできません。 n とともに使用すると、best_of は入力候補の数を制御し、n は返す数を指定します。best_of は n より大きくする必要があります。 注: このパラメーターにより多くの入力候補が生成されるため、トークン クォータがすぐに消費される可能性があります。 |
logprobs |
integer |
null |
logprobs に含める、最も可能性の高いトークンと選択したトークンの対数確率を示す数値。 たとえば、logprobs が 10 の場合、API は最も可能性が高い 10 個のトークンの一覧を返します。 API は、常にサンプリングされたトークンの logprob を返します。そのため、応答には、最大 logprobs + 1 個の要素が含まれる可能性があります。 |
presence_penalty |
float |
null |
-2.0 ~ 2.0 の数。 正の値は、新しいトークンがこれまでのテキストに表示されているかどうかに基づいてペナルティを課し、モデルが新しいトピックについて話す可能性を高めます。 |
ignore_eos |
boolean |
True |
EOS トークンを無視し、EOS トークンの生成後もトークンの生成を続行するかどうかを指定します。 |
use_beam_search |
boolean |
False |
サンプリングの代わりにビーム検索を使用するかどうかを指定します。 この場合、best_of は 1 より大きく、temperature は 0 である必要があります。 |
stop_token_ids |
array |
null |
生成されると、以降のトークンの生成を停止するトークンの ID の一覧。 返される出力には、停止トークンが特殊なトークンでない限り、停止トークンが含まれます。 |
skip_special_tokens |
boolean |
null |
出力内の特別なトークンをスキップするかどうかを指定します。 |
messages
オブジェクトには次のフィールドがあります:
キー | Type | Value |
---|---|---|
content |
string |
メッセージの内容。 すべてのメッセージにはコンテンツが必要です。 |
role |
string |
メッセージの作成者の役割。 system 、user 、または assistant のいずれか。 |
例
本文
{
"messages":
[
{
"role": "system",
"content": "You are a helpful assistant that translates English to Italian."},
{
"role": "user",
"content": "Translate the following sentence from English to Italian: I love programming."
}
],
"temperature": 0.8,
"max_tokens": 512,
}
応答スキーマ
応答ペイロードは、次のフィールドを持つディクショナリです。
キー | Type | 説明 |
---|---|---|
id |
string |
チャット入力候補の一意識別子。 |
choices |
array |
入力メッセージ用にモデルが生成した入力候補の一覧。 |
created |
integer |
入力候補が作成されたときの Unix タイムスタンプ (秒単位)。 |
model |
string |
入力候補に使用される model_id。 |
object |
string |
オブジェクトの種類。これは常に chat.completion です。 |
usage |
object |
入力候補要求の使用状況の統計情報。 |
ヒント
ストリーミング モードでは、応答のチャンクごとに、ペイロード [DONE]
によって終了される最後のチャンクを除き、finish_reason
は常に null
です。 各 choices
オブジェクトで、messages
のキーは delta
で変更されます。
choices
オブジェクトは、次のフィールドを持つディクショナリです。
キー | Type | 説明 |
---|---|---|
index |
integer |
選択肢インデックス。 best_of > 1 のとき、この配列内のインデックスは順序が整っていない可能性があり、0 から n-1 ではない可能性があります。 |
messages または delta |
string |
messages オブジェクトのチャットの入力候補結果。 ストリーミング モードを使用する場合は、 delta キーが使用されます。 |
finish_reason |
string |
モデルがトークンの生成を停止した理由。 - stop : モデルが自然な停止ポイント、または指定された停止シーケンスに達した場合。 - length : トークンの最大数に達した場合。 - content_filter : RAI がモデレートを行い、CMP がモデレーションを強制するとき - content_filter_error : モデレーション中にエラーが発生し、応答を決定できなかった場合 - null : API 応答がまだ進行中であるか未完了の場合。 |
logprobs |
object |
出力テキスト内の生成されたトークンのログ確率。 |
usage
オブジェクトは、次のフィールドを持つディクショナリです。
キー | Type | Value |
---|---|---|
prompt_tokens |
integer |
プロンプト内のトークンの数。 |
completion_tokens |
integer |
入力候補に生成されたトークンの数。 |
total_tokens |
integer |
トークンの合計数。 |
logprobs
オブジェクトは、次のフィールドを持つディクショナリです:
キー | Type | Value |
---|---|---|
text_offsets |
array の integers |
入力候補出力内の各トークンの位置またはインデックス。 |
token_logprobs |
array の float |
top_logprobs 配列内のディクショナリから選択された logprobs 。 |
tokens |
array の string |
選択されたトークン。 |
top_logprobs |
array の dictionary |
ディクショナリの配列。 各ディクショナリでは、キーはトークンであり、値は prob です。 |
例
次に応答の例を示します。
{
"id": "12345678-1234-1234-1234-abcdefghijkl",
"object": "chat.completion",
"created": 2012359,
"model": "",
"choices": [
{
"index": 0,
"finish_reason": "stop",
"message": {
"role": "assistant",
"content": "Sure, I\'d be happy to help! The translation of ""I love programming"" from English to Italian is:\n\n""Amo la programmazione.""\n\nHere\'s a breakdown of the translation:\n\n* ""I love"" in English becomes ""Amo"" in Italian.\n* ""programming"" in English becomes ""la programmazione"" in Italian.\n\nI hope that helps! Let me know if you have any other sentences you\'d like me to translate."
}
}
],
"usage": {
"prompt_tokens": 10,
"total_tokens": 40,
"completion_tokens": 30
}
}
Meta Llama モデルをマネージド コンピューティングにデプロイする
従量課金制のマネージド サービスを使用したデプロイとは別に、Meta Llama 3.1 モデルを Azure Machine Learning スタジオのマネージド コンピューティングにデプロイすることもできます。 マネージド コンピューティングにデプロイするときは、使用する仮想マシンや、予想される負荷を処理するインスタンスの数などの、モデルを実行するインフラストラクチャに関するすべての詳細を選択できます。 マネージド コンピューティングにデプロイされるモデルでは、サブスクリプションからのクォータが使用されます。 3.1 リリース サイクルの次のモデルは、マネージド コンピューティングで使用できます。
Meta-Llama-3.1-8B-Instruct
(FT サポート)Meta-Llama-3.1-70B-Instruct
(FT サポート)Meta-Llama-3.1-8B
(FT サポート)Meta-Llama-3.1-70B
(FT サポート)Llama Guard 3 8B
Prompt Guard
新しいデプロイを作成する
Azure Machine Learning スタジオでマネージド コンピューティングに Meta-Llama-3.1-70B-Instruct
などのモデルをデプロイするには、次の手順のようにします。
モデルをデプロイするワークスペースを選択します。
デプロイするモデルをスタジオのモデル カタログから選択します。
別の方法として、ワークスペースに移動し、[エンドポイント]>[マネージド コンピューティング]>[作成] を選んで、デプロイを始めることもできます。
モデルの概要ページで、[デプロイ] を選択し、次に [Azure AI Content Safety を使用しないマネージド コンピューティング] を選びます。
[Azure AI Content Safety でデプロイ (プレビュー)] ページで、[Skip Azure AI Content Safety] (Azure AI Content Safety をスキップする) を選択して、UI を使用したモデルのデプロイに進みます。
ヒント
一般に、Meta Llama モデルのデプロイには [Azure AI Content Safety を有効にする (推奨)] を選択することをお勧めします。 このデプロイ オプションは現在、Python SDK を使用することでのみサポートされていて、ノートブックで行われます。
[続行] を選択します。
ヒント
選択したプロジェクトで十分なクォータを使用できない場合は、「共有クォータを使用するオプションを使用します。このエンドポイントは 168 時間以内に削除されることを確認します」オプションを使用できます。
デプロイに割り当てる [仮想マシン] と、[インスタンス数] を選択します。
このデプロイを新しいエンドポイントまたは既存のエンドポイントの一部として作成するかどうかを選択します。 エンドポイントは、複数のデプロイをホストしながら、リソース構成をデプロイごとに固有になるように維持できます。 同じエンドポイントの下のデプロイでは、エンドポイント URI とそのアクセス キーが共有されます。
推論データ収集 (プレビュー) を有効にするかどうかを指定します。
[Package Model (preview)] (モデルをパッケージ化する (プレビュー)) を有効にするかどうかを指定します。
展開 を選択します。 しばらくすると、エンドポイントの [詳細] ページが開きます。
エンドポイントの作成とデプロイが完了するまで待ちます。 このステップには数分かかる場合があります。
エンドポイントの [Consume] (使用) ページを選択して、デプロイされたモデルをアプリケーションで使用できるコード サンプルを取得します。
スタジオを使用してマネージド コンピューティングにモデルをデプロイする方法の詳細については、「推論のためにエンドポイントに基盤モデルをデプロイする」を参照してください。
マネージド コンピューティングにデプロイされた Meta Llama モデルを使用する
マネージド コンピューティングにデプロイされた Meta Llama 3 モデルを呼び出す方法については、Azure Machine Learning スタジオのモデル カタログのモデルのカードを参照してください。 各モデルのカードには、モデルの説明、コード ベースの推論のサンプル、微調整、モデル評価を含む概要ページがあります。
その他の推論の例
Package | サンプル ノートブック |
---|---|
CURL および Python Web 要求を使用した CLI | webrequests.ipynb |
OpenAI SDK (試験段階) | openaisdk.ipynb |
LangChain | langchain.ipynb |
LiteLLM SDK | litellm.ipynb |
コストとクォータ
サーバーレス API としてデプロイされる Meta Llama 3.1 モデルのコストとクォータに関する考慮事項
サーバーレス API としてデプロイされる Meta Llama 3.1 モデルは、Azure Marketplace を通じて Meta によって提供され、使用するために Azure Machine Learning スタジオと統合されます。 モデルをデプロイまたは微調整するときに、Azure Marketplace の価格を確認できます。
ワークスペースが Azure Marketplace から特定のモデル オファリングにサブスクライブするたびに、その消費に関連するコストを追跡するための新しいリソースが作成されます。 推論と微調整に関連するコストを追跡するために同じリソースが使用されますが、各シナリオを個別に追跡するために複数の測定値を使用できます。
コストを追跡する方法の詳細については、「Azure Marketplace を通じて提供されるモデルのコストを監視する」を参照してください。
クォータはデプロイごとに管理されます。 各デプロイには、1 分あたり 400,000 トークンと 1 分あたり 1,000 の API 要求のレート制限があります。 ただし、現在、プロジェクトのモデルごとに 1 つのデプロイに制限しています。 現在のレート制限がシナリオに十分でない場合は、Microsoft Azure サポートにお問い合わせください。
マネージド コンピューティングにデプロイされる Meta Llama 3.1 モデルのコストとクォータに関する考慮事項
マネージド コンピューティングを使用した Meta Llama 3.1 モデルのデプロイと推論では、リージョンごとにサブスクリプションに割り当てられている仮想マシン (VM) コア クォータを消費します。 Azure AI Studio にサインアップすると、リージョンで使用可能な複数の VM ファミリに対する既定の VM クォータを受け取ります。 クォータ制限に達するまで、デプロイを作成し続けることができます。 この制限に達したら、クォータの引き上げを要求できます。
コンテンツのフィルター処理
サーバーレス API としてデプロイされたモデルは、Azure AI Content Safety によって保護されます。 マネージド コンピューティングにデプロイする場合は、この機能をオプトアウトできます。 Azure AI Content Safety を有効にすると、プロンプトと入力候補の両方が、有害なコンテンツ出力の検出と防止を目的とした一連の分類モデルを通過します。 コンテンツ フィルタリング (プレビュー) システムは、入力プロンプトと出力される入力候補の両方で、有害な可能性があるコンテンツ特有のカテゴリを検出し、アクションを実行します。 Azure AI Content Safety の詳細を確認します。