正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。

モデルレジストリAPI

  • プラン: Free、Premium、Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated

このAPIを使用して、機械学習のモデルレジストリを操作します。

各エンドポイントの:model_version_id属性は、モデルバージョンIDまたは候補実行IDのいずれかを受け入れます。詳細については、モデルバージョンと候補IDを参照してください。

機械学習モデルパッケージファイルをダウンロード

機械学習モデルパッケージから指定されたファイルをダウンロードします。

GET /api/v4/projects/:id/packages/ml_models/:model_version_id/files/(*path/):file_name

サポートされている属性は以下のとおりです:

属性必須説明
id整数または文字列はいプロジェクトのIDまたはURLエンコードされたパス
model_version_id整数または文字列はいモデルバージョンIDまたは候補実行ID。モデルバージョンと候補IDを参照してください。
file_name文字列はいファイル名。
path文字列いいえファイルのディレクトリパス。

成功した場合、200 OKとファイルの内容を返します。

リクエスト例:

curl --header "Authorization: Bearer <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/projects/1/packages/ml_models/2/files/foo.txt"

ディレクトリパスを含むリクエストの例:

curl --header "Authorization: Bearer <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/projects/1/packages/ml_models/2/files/my_dir/foo.txt"

モデルパッケージファイルをアップロード

機械学習モデルパッケージにファイルをアップロードします。

アップロードを承認

機械学習モデルパッケージへのファイルアップロードを承認します。

PUT /api/v4/projects/:id/packages/ml_models/:model_version_id/files/(*path/):file_name/authorize

サポートされている属性は以下のとおりです:

属性必須説明
id整数または文字列はいプロジェクトのIDまたはURLエンコードされたパス
model_version_id整数または文字列はいモデルバージョンIDまたは候補実行ID。モデルバージョンと候補IDを参照してください。
file_name文字列はいファイル名。
path文字列いいえファイルのディレクトリパス。

成功した場合、200 OKを返します。

リクエスト例:

curl --request PUT \
  --header "Authorization: Bearer <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/projects/1/packages/ml_models/2/files/model.pkl/authorize"

ファイルを送信

機械学習モデルパッケージにファイルをアップロードします。

PUT /api/v4/projects/:id/packages/ml_models/:model_version_id/files/(*path/):file_name

サポートされている属性は以下のとおりです:

属性必須説明
id整数または文字列はいプロジェクトのIDまたはURLエンコードされたパス
model_version_id整数または文字列はいモデルバージョンIDまたは候補実行ID。モデルバージョンと候補IDを参照してください。
file_name文字列はいファイル名。
path文字列いいえファイルのディレクトリパス。
fileファイルはいアップロードするファイル。

成功した場合、201 Createdを返します。

リクエスト例:

curl --request PUT \
  --header "Authorization: Bearer <your_access_token>" \
  --form "file=@model.pkl" \
  --url "https://gitlab.example.com/api/v4/projects/1/packages/ml_models/2/files/model.pkl"

ディレクトリパスを含むリクエストの例:

curl --request PUT \
  --header "Authorization: Bearer <your_access_token>" \
  --form "file=@model.pkl" \
  --url "https://gitlab.example.com/api/v4/projects/1/packages/ml_models/2/files/my_dir/model.pkl"

モデルバージョンと候補ID

:model_version_id属性は、モデルバージョンIDまたは候補実行IDのいずれかを受け入れます。

モデルバージョンIDを見つけるには、モデルバージョンページのURLを確認してください。例えば、https://gitlab.example.com/my-namespace/my-project/-/ml/models/1/versions/5では、モデルバージョンIDは5です。

curl --header "Authorization: Bearer <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/projects/1/packages/ml_models/5/files/model.pkl"

候補実行IDを使用するには、候補の内部IDの前にcandidate:を付加します。例えば、https://gitlab.example.com/my-namespace/my-project/-/ml/candidates/5では、:model_version_idの値はcandidate:5です。

curl --header "Authorization: Bearer <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/projects/1/packages/ml_models/candidate:5/files/model.pkl"