カスタム・foundation modelをクラウド・オブジェクト・ストレージにアップロードしたら、モデルと対応するモデル・アセットへの接続を作成します。 接続を使用して、プロジェクトまたはスペースにモデルアセットを作成します。
モデルアセットを作成するには、モデルに接続を追加してからモデルアセットを作成します。 カスタムfoundation modelをまずプロジェクトでテストしたい場合(例えばJupyterノートブックで評価する)、カスタムfoundation modelをプロジェクトに追加し、それをスペースに昇格させます。
モデル資産を追加したら、それをデプロイし、Prompt Labを使って推論することができます。
- モデルをリモートのクラウドストレージにアップロードする場合、個人の認証情報に基づいて接続を作成する必要があります。 リモートクラウドストレージでは、個人認証情報を使用した接続のみが許可されます。 その結果、同じデプロイメントスペースの他のユーザーは、モデルのコンテンツにはアクセスできないが、モデルのデプロイメントに対して推論を行うことは許可される。 アクセスキーとシークレットアクセスキーを使用して接続を作成します。 アカウントの個人認証情報を有効にする方法については、アカウント設定を参照してください。
開始前に
カスタムfoundation modelをデプロイできるようにするには、タスク認証情報を有効にする必要があります。 詳細については、タスク認証情報の追加を参照してください。
モデルに接続を追加する
配置スペースまたはプロジェクトのどちらからでも、モデルへの接続を追加できます。 プログラムで接続を追加するには、Pythonクライアントを使って接続を作成する、またはAPIを使って接続を作成するを参照してください。
watsonx.ai APIを使用するには、ベアラートークンが必要です。 詳細については、プログラム・アクセスのための認証情報を参照してください。
デプロイメントスペースからモデルへの接続を追加する
配置スペースからモデルへの接続を追加するには
- 資産タブに移動し、資産のインポートをクリックします。
- データ資産を選択し、画面に表示される手順に従ってください。
認証情報では、Access key and Secret access key
を選択します。 それ以外のオプションを選択した場合、デプロイは機能しません。
プロジェクトからモデルへの接続を追加する
プロジェクトからモデルへの接続を追加する:
- 資産タブを開き、新規資産をクリックします。
- データソースに接続するを選択し、画面に表示される手順に従ってください。
認証情報では、Access key and Secret access key
を選択します。 それ以外のオプションを選択した場合、デプロイは機能しません。
特定のタイプのコネクションの作成方法の詳細については、コネクターを参照してください。
モデル資産の作成
カスタムfoundation model資産を作成するには
ディプロイメント スペースまたはプロジェクトで、Assets に移動し、Import assets をクリックします。
カスタムfoundation modelを選択します。
モデルが置かれているクラウドストレージへの接続を選択します。
モデルを含むフォルダを選択します。
必要な情報を入力します。 モデルパラメータに何も入力しない場合は、デフォルト値が使用されます。
インポート をクリックします。
利用可能なモデルパラメータについては、カスタム基礎モデルのグローバルパラメータを参照してください。
プログラムでカスタムfoundation model資産を作成する
watsonx.ai APIを使用するには、ベアラートークンが必要です。 詳細については、プログラム・アクセスのための認証情報を参照してください。
利用可能なモデルパラメータについては、カスタム基礎モデルのグローバルパラメータを参照してください。 モデルパラメータに何も入力しない場合は、デフォルト値が使用されます。
配置スペースにモデル アセットを追加するコード例を参照してください:
curl -X POST "https://<your cloud hostname>/ml/v4/models?version=2024-01-29" \
-H "Authorization: Bearer $TOKEN" \
-H "content-type: application/json" \
--data '{
"type": "custom_foundation_model_1.0",
"framework": "custom_foundation_model",
"version": "1.0",
"name": "<asset name>",
"software_spec": {
"name": "<name of software specification>"
},
"space_id": "<your space ID>",
"foundation_model": {
"model_id": "<model ID>",
"parameters": [
{
"name": "dtype",
"default": "float16",
"type": "string",
"display_name": "Data Type",
"options": ["float16","bfloat16"]
},
{
"name": "max_batch_size",
"default": 256,
"type": "number",
"display_name": "Max Batch Size"
}],
"model_location": {
"type": "connection_asset",
"connection": {
"id": "<your connection ID>"
},
"location": {
"bucket": "<bucket where the model is located>",
"file_path": "<subpath to model files, if required>"
}
}
}
}'
プロジェクトにモデルアセットを追加するサンプルコードを参照してください:
curl -X POST "https://<your cloud hostname>/ml/v4/models?version=2024-01-29" \
-H "Authorization: Bearer $TOKEN" \
-H "content-type: application/json" \
--data '{
"type": "custom_foundation_model_1.0",
"framework": "custom_foundation_model",
"version": "1.0",
"name": "<asset name>",
"software_spec": {
"name": "<name of software specification>"
},
"project_id": "<your project ID>",
"foundation_model": {
"model_id": "<model ID>",
"parameters": [
{
"name": "dtype",
"default": "float16",
"type": "string",
"display_name": "Data Type",
"options": ["float16","bfloat16"]
},
{
"name": "max_batch_size",
"default": 256,
"type": "number",
"display_name": "Max Batch Size"
}],
"model_location": {
"type": "connection_asset",
"connection": {
"id": "<your connection ID>"
},
"location": {
"bucket": "<bucket where the model is located>",
"file_path": "<subpath to model files, if required>"
}
}
}
}'
カスタム基礎モデルのグローバルパラメータ
グローバル・パラメーターを使用して、カスタム・ファウンデーション・モデルを展開することができます。 ベースモデルパラメータの値を、以下の表で指定された範囲内で設定します。 そうしないと、配備に失敗して推論ができなくなるかもしれない。
パラメーター | タイプ | 値の範囲 | デフォルト値 | 説明 |
---|---|---|---|---|
dtype |
ストリング | float16 , bfloat16 |
float16 |
このパラメータを使用して、モデルのデータ型を指定します。 |
max_batch_size |
数値 | max_batch_size >= 1 |
256 | このパラメータを使用して、モデルの最大バッチサイズを指定します。 |
max_concurrent_requests |
数値 | max_concurrent_requests >= 1、max_concurrent_requests >= max_batch_size |
1024 | このパラメータを使用して、モデルに対する同時リクエストの最大数を指定します。 このパラメーターは、watsonx-cfm-caikit-1.1 ソフトウェア仕様を使用するデプロイメントでは利用できない。 |
max_new_tokens |
数値 | max_new_tokens >= 20 |
2047 | このパラメータを使用して、推論要求に対してモデルが生成するトークンの最大数を指定します。 |
max_sequence_length |
数値 | max_sequence_length >= 20、max_sequence_length > max_new_tokens |
2048 | このパラメータを使用して、モデルの最大シーケンス長を指定します。 |
今後のステップ
親トピック foundation modelのデプロイ