[アップデート] Amazon Bedrock のカスタムモデルインポートでインポートされたモデルの Custom Model Unit が確認できるようになりました

[アップデート] Amazon Bedrock のカスタムモデルインポートでインポートされたモデルの Custom Model Unit が確認できるようになりました

Clock Icon2025.03.22

こんにちは!クラウド事業本部コンサルティング部のたかくに(@takakuni_)です。

Amazon Bedrock のカスタムモデルインポートでインポートされたモデルの Custom Model Unit が確認できるようになりました。

https://awsapichanges.com/archive/changes/dd8406-bedrock.html

Custom Model Unit

Custom Model Unit(以後、CMU)は、カスタムモデルインポート機能を利用する際に使用する課金の計算単位です。

カスタムモデルインポートでホストされたモデルは、モデルコピー上の CMU(コンピューティングリソースが割り当てられた数)を利用して推論を行います。モデルコピーは推論の需要に応じて、デフォルトで 0 から 3 の範囲でスケーリングが行われます。


Amazon Bedrock のカスタムモデルインポート機能を試してみる より画像引用

CMU v1.0 は 5 分単位で課金され、 1 分あたり 0.0785 USD の価格で提供されています。

1 モデルコピーあたりの CMU 数は、モデルアーキテクチャ、モデルパラメータ数、コンテキストの長さなど、さまざまな要因によって異なり、モデルコピー時に AWS 側で自動で決定されます。

参考値として Llama 3.1 8B 128K モデルには 2 CMU, Llama 3.1 70B 128k モデルには 8 CMU が必要とされています。

モデルをホストするために必要なカスタムモデルユニットは、モデルアーキテクチャ、モデルパラメータ数、コンテキストの長さなど、さまざまな要因によって異なります。必要なカスタムモデルユニットの正確な数は、インポート時に決定されます。ご参考までに、Llama 3.1 8B 128K モデルには 2 カスタムモデルユニットが必要であり、Llama 3.1 70B 128k モデルには 8 カスタムモデルユニットが必要です。

最新の料金および詳細は、以下をご覧ください。

https://aws.amazon.com/jp/bedrock/pricing/?nc1=h_ls

今回のアップデート

これまで、インポートしたモデルの CMU の値(1モデルコピーあたりで必要な CMU 数)を確認する方法は、ネイティブには提供されていませんでした。

そのため、先ほどの料金ページの参考値を確認しモデルのソースとなる、アーキテクチャやパラメーター数からおおよその CMU 値を参考にしておく必要がありました。

参考値はあるとは言いつつも、実際にどれくらいのコスト感で動くのか予想しづらかったため、導入障壁があったのではないでしょうか。

今回のアップデートで具体的にインポートされたモデルの CMU 値を取得できるようになりました。アップデートに加えて、次のドキュメントも追加されていました。

https://docs.aws.amazon.com/bedrock/latest/userguide/import-model-calculate-cost.html

やってみる

それでは実際にインポートしたモデルの CMU 値を確認してみます。

モデルインポート時に値は決定されるため、モデルインポート前にドライランのような形で確認するすべはありません。(引き続き料金ページから参考値をベースに予想する必要があります。)

CMU の値は GetImportedModel API にて取得します。

Response Elements に customModelUnits オブジェクトが追加されました。以下の例だと、 1 モデルコピーあたり 8 CMU を消費することがわかります。

HTTP/1.1 200
Content-type: application/json

{
    "modelArn": "arn:aws:bedrock:us-east-1:111122223333:imported-model/s4dt0wly5gud",
    "modelName": "SomeImportedModelName",
    "jobName": "importJob-20240713T121942",
    "jobArn": "arn:aws:bedrock:us-east-1:111122223333:model-import-job/dchh9ny8e0dv",
    "modelDataSource": {
        "s3DataSource": {
            "s3Uri": "S3://amzn-s3-demo-bucket/key-name"
        }
    },
    "creationTime": "2024-08-13T19:20:14.058Z",
    "modelArchitecture": "mistral",
     "customModelUnits": {
         "customModelUnitsPerModelCopy": 8,
         "customModelUnitsVersion": "v1.0"
     }
}

今回は以下を参考に DeepSeek-R1-Distill-Llama-70B をカスタムモデルインポートしてみました。

https://dev.classmethod.jp/articles/deepseek-amazon-bedrock-import/

15 分ほど経過したのちに、インポートジョブが完了しました。

早速、確認してみましょう。

# AWS CLI の更新 (オプション)
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install --bin-dir /usr/local/bin --install-dir /usr/local/aws-cli --update

# バージョンの確認 v2.24.26 以上になっていれば OK
aws --version
# モデルの情報を取得
aws bedrock get-imported-model \
--region us-east-1 \
--model-identifier arn:aws:bedrock:us-east-1:123456789012:imported-model/o4rm9jkcc3mg

1 モデルコピーあたりの CMU の値は 8 であることがわかりますね。

~ $ # バージョンの確認 v2.24.26 以上になっていれば OK
~ $ aws --version
aws-cli/2.25.1 Python/3.12.9 Linux/6.1.127-135.201.amzn2023.x86_64 exec-env/CloudShell exe/x86_64.amzn.2023
~ $ # モデルの情報を取得
~ $ aws bedrock get-imported-model \
> --region us-east-1 \
> --model-identifier arn:aws:bedrock:us-east-1:123456789012:imported-model/o4rm9jkcc3mg
{
    "modelArn": "arn:aws:bedrock:us-east-1:123456789012:imported-model/o4rm9jkcc3mg",
    "modelName": "DeepSeek-R1-Distill-Llama-70B",
    "jobName": "DeepSeek-R1-Distill-Llama-70B",
    "jobArn": "arn:aws:bedrock:us-east-1:123456789012:model-import-job/iqzrajbd0j8v",
    "modelDataSource": {
        "s3DataSource": {
            "s3Uri": "s3://model-import-123456789012/DeepSeek-R1-Distill-Llama-70B/"
        }
    },
    "creationTime": "2025-03-22T05:10:44.527000+00:00",
    "modelArchitecture": "llama",
    "instructSupported": true,
    "customModelUnits": {
        "customModelUnitsPerModelCopy": 8,
        "customModelUnitsVersion": "v1.0"
    }
}

まとめ

以上、「Amazon Bedrock のカスタムモデルインポートでインポートされたモデルの Custom Model Unit が確認できるようになりました。」でした。

参考値はわかるものの、具体的にどういった数値になるのか、気になる方は多いのではないでしょうか。

今回のアップデートでカスタムモデルインポートの利用が、どんどん広がってきていくと嬉しいです。

クラウド事業本部コンサルティング部のたかくに(@takakuni_)でした!

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.