v1.84.0-rc.1:Docker イメージの署名を検証する

LiteLLM Releases / 2026/5/6

💬 オピニオンDeveloper Stack & InfrastructureTools & Practical Usage

要点

  • LiteLLM の Docker イメージは cosign によって署名されており、各リリースは同一の公開鍵(指定コミットで導入)で検証できます。
  • 署名検証は、固定されたコミットハッシュを使う方法が最も強固で、元の署名鍵を確実に用いたことを暗号学的に保証できます。
  • 署名検証はリリースタグを使って手軽にも実行できる一方、タグ保護ルールに依存するため推奨度は固定コミットハッシュより下がります。
  • `cosign verify` の期待される出力は、cosign のクレーム検証と、指定公開鍵に対する署名検証が成功した旨の内容です。

Docker イメージ署名の検証

すべての LiteLLM Docker イメージは cosign で署名されています。すべてのリリースは、commit 0112e53 にて導入された同じキーで署名されています。

固定した commit ハッシュを使って検証(推奨):

commit ハッシュは暗号学的に不変なので、元の署名キーを使っていることを保証する最も強力な方法です:

cosign verify \
  --key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
  ghcr.io/berriai/litellm:v1.84.0-rc.1

リリースタグを使って検証(手軽):

このリポジトリではタグが保護されており、同じキーに解決されます。このオプションは読みやすい一方で、タグ保護ルールに依存します:

cosign verify \
  --key https://raw.githubusercontent.com/BerriAI/litellm/v1.84.0-rc.1/cosign.pub \
  ghcr.io/berriai/litellm:v1.84.0-rc.1

期待される出力:

The following checks were performed on each of these signatures:
  - The cosign claims were validated
  - The signatures were verified against the specified public key

変更点

  • fix(ui): MCP編集ページのツール取得で、@ryan-crabbe-berri が #26002 により示されたように、stored-credentials エンドポイントを使用する
  • feat(proxy): uvicorn ワーカートリアージのために --timeout_worker_healthcheck フラグを追加する。@ryan-crabbe-berri が #26622 により示されたように
  • fix(ci): local_testing ジョブの失敗したテストを CircleCI で再実行できるようにする。@mateo-berri が #26461 により示されたように
  • docs: pull_request_template を更新し、Linear チケットを言及するようにする。@mateo-berri が #26655 により示されたように
  • fix(pricing): GPT-5.5 Pro の料金設定。@lmcdonald-godaddy が #26651 により示されたように
  • feat(proxy): 有効期限切れの LiteLLM ダッシュボードセッションキー用のクリーンアップジョブを追加する。@milan-berri が #26460 により示されたように
  • fix(ui): 「Store Prompts in Spend Logs」トグルを管理者設定(Admin Settings)へ移動する。@ryan-crabbe-berri が #26631 により示されたように
  • fix(caching): 埋め込みキャッシュの往復(round-trip)を通じて prompt_tokens_details を保持する。@michelligabriele が #26653 により示されたように
  • feat(logging): 汎用 API ロガー用のリトライ設定を追加する。@milan-berri が #26645 により示されたように
  • fix(logging): ストリーミングの非表示レスポンスコストを補完する。@milan-berri が #26606 により示されたように
  • fix(vertex-ai): anthropic メッセージ設定インスタンスを再利用する。@Sameerlite が #26099 により示されたように
  • fix(vertex): @yuneng-berri#26675 の anyOf(null を含む)における配列ブランチ上のアイテムを保持し、@yuneng-berri による de-flake テストで対処
  • fix(tests): 非推奨の Bedrock Claude 3.7 Sonnet モデル ID を @ryan-crabbe-berri#26721 で置き換え
  • [Fix] DualCache における LiteLLM_Config パラメータの読み取りをキャッシュし、バッチ処理すること(@Michael-RZ-Berri#26469 で対応)
  • [Feat] 初回リクエスト時にオプション機能ルーターを遅延ロードすること(@Michael-RZ-Berri#26534 で実装)
  • [Fix] success_handler の dict におけるコスト計算を統一し、型付けされたブランチでも対応すること(@Michael-RZ-Berri#26629 で対応)
  • 取り消し(Revert):「[Feat] 初回リクエスト時にオプション機能ルーターを遅延ロードすること」を @krrish-berri-2#26727 で実施
  • [Infra] バージョンの更新(Version Bump)を @yuneng-berri#26728 で実施
  • [Infra] 内部ステージングを main に昇格すること(@yuneng-berri#26731 で実施)
  • ci(release): create-release ワークフローで PEP 440 タグ形式を受け入れること(@yuneng-berri#26734 で対応)
  • [Feat] gpt-image-2 のサポートを追加(#26644)を @ishaan-berri#26705 で実装
  • feat(provider): OpenAI 互換プロバイダとして AIHubMix を追加(@xinrui-z#24294 で対応)
  • internal stagingをマージ by @Sameerlite in #26737
  • mainをマージ by @Sameerlite in #26742
  • mianをマージ by @Sameerlite in #26745
  • fix(test): テスト_model_alias_mapでERRORログのアサーションをLiteLLMロガーにスコープする by @mateo-berri in #26741
  • mainをマージ by @Sameerlite in #26757
  • fix(bedrock, anthropic): tool-resultパスでOpenAIのファイル内容を翻訳する by @minznerjosh in #26710
  • /ui/chatページを削除 by @ishaan-berri in #26739
  • fix: aiohttpのTCPConnectorにオプションのTCP SO_KEEPALIVE対応を追加 by @yassinkortam in #26730
  • feat(proxy): GoogleのネイティブgenerateContentルートでLiteLLMヘッダーを使用 by @Sameerlite in #25500
  • feat(vector-stores): BedrockのretrievalConfigurationのパススルーをサポート by @Sameerlite in #26685
  • feat(mcp): 60文字制限の範囲内にMCPツール名を収めるため、短いIDのツールプレフィックスをオプトイン by @mateo-berri in #26733
  • fix(proxy): Prismaの読み取りパスをセルフヒールし、再接続状態マシンを強化 by @yuneng-berri in #26756
  • [Fix] @Michael-RZ-Berri による #26662 の支出ログ エラーメッセージを伏せ字化
  • [Feat] @Sameerlite による #26584 での azure entra のディスカバリー エンドポイント対応の追加
  • [Fix] プロキシ: イベントループをブロックせずに Prisma DB を再接続するための変更 @yuneng-berri による #26225
  • feat(proxy): /v1/workflows/runs による durable agent ワークフロー実行のトラッキング @ishaan-berri による #26793
  • chore(auth): @stuxf による #26518 でのクライアントサイド API_BASE の扱いを厳密化
  • fix: @ryan-crabbe-berri による #26823 での再スローされるエラーメッセージから機密ローカル変数を削除
  • test(vertex-batches): モックされた取得レスポンスに対して is_redirect=False を設定 @yuneng-berri による #26844
  • chore(vector-stores): list/info/update レスポンスで資格情報を伏せ字化。更新はストアごとのアクセス権で制御 @stuxf による #26489
  • chore(auth): UserAPIKeyAuth で master key に対してエイリアスを代入 @stuxf による #26484
  • fix(mcp): パブリックルートの検出を引き締め、OAuth2 のフォールバックをゲートする @stuxf による #26463
  • [Fix] チームメンバーの null 予算のフォールバック @Michael-RZ-Berri による #26809
  • fix(proxy): passthrough のバッチ managed-object で呼び出し元の ID を継承するように @ryan-crabbe-berri による #26831
  • fix(proxy/auth): ガードレールの変更権限チェックを厳格化する @ryan-crabbe-berri による #26821
  • [Fix] CI/Tooling: .npmrc ファイル内の min-release-age の値を修正する @yuneng-berri による #26850
  • fix(bedrock): Claude 4.5/4.6/4.7(Global, US)向けに 1時間キャッシュ書き込みの料金を追加する @mateo-berri による #26800
  • feat(proxy): チームレベルの検索プロバイダー資格情報を追加する @Sameerlite による #26691
  • Litellm oss ステージングを行う @Sameerlite による #26759
  • fix(proxy/batches): bedrock の retrieve_batch へモデルを転送する @sruthi-sixt-26 による #26814
  • fix(passthrough): 中断された Bedrock ストリームの支出を追跡する @mateo-berri による #26719
  • main をマージする @Sameerlite による #26855
  • Litellm oss ステージングを行う @Sameerlite による #26852
  • chore(team): team-callback の admin mutation を audit-log する @stuxf による #26859
  • chore(team): 利用可能なチームのチェックによって authz バイパスをクローズする @stuxf による #26854
  • chore(auth): 招待リンクのオンボーディング・トークン・フローを @stuxf#26843 で強化
  • chore(mcp): OAuth のルート・エンドポイント解決を @stuxf#26840 で引き締め
  • fix: aws リージョン名を @yassin-berriai#26906 で検証
  • fix: MILVUS_OPTIONAL_PARAMS から milvus の dbName と partitionNames を削除 by @yassin-berriai in #26910
  • [Feat / Fix] 遅延読み込みの import、遅延読み込みのフロントページを @Michael-RZ-Berri#26802 で実施
  • chore(proxy): リクエスト制御フィールドを @stuxf#26862 で強化
  • chore(proxy): キーのメタデータ内で環境(env)のコールバック参照を @stuxf#26851 でブロック
  • chore(mcp): ユーザー単位の MCP 認証情報を保管時に暗号化する @stuxf#26836 で実施
  • chore(mcp): OAuth メタデータのディスカバリー後続フェッチに対する SSRF ガードを @stuxf#26849 で追加
  • [Fix] subprocess の startup-import の diff を、静的なソーススキャンで置き換える @Michael-RZ-Berri#26934 で実施
  • chore(passthrough): default auth=True とし、安全なオプションにおけるエンタープライズのゲートを削除 by @stuxf in #26827
  • chore(proxy): 未認証のアセットエンドポイントで UI_LOGO_PATH / LITELLM_FAVICON_URL を @stuxf#26815 で制御
  • chore(cli): @stuxf#26835 で行った CLI SSO セッションフローの締め付け
  • [Test] Proxy E2E: モデルアクセスのテストのためにクライアントモックレスポンスをオプトインすることについて by @yuneng-berri in #26941
  • [Fix] Responses API: DELETE の場合に空のボディを省略する by @yuneng-berri in #26949
  • Google の generateContent エンドポイントで pre_call_hook を実行する by @Michael-RZ-Berri in #26914
  • [Fix] カウンターの書き込み時に Redis の TTL を更新し、Redis 内の古いインメモリをスキップする by @Michael-RZ-Berri in #26829
  • モデルのヘルスステータスにページネーションのコントロールを追加する by @shivamrawat1 in #26826
  • feat(vertex_ai): メタデータラベルを埋め込み、Imagen、rerank に伝播する by @Sameerlite in #25499
  • fix(anthropic): json の response_format + ユーザーツールのノンストリーミング by @Sameerlite in #26222
  • [Infra] バージョンを更新する by @yuneng-berri in #26961
  • [Infra] 内部ステージングを main に昇格する by @yuneng-berri in #26962
  • [Infra] 内部ステージングを main に昇格する by @yuneng-berri in #27245
  • 新しい貢献者

    完全な変更履歴: v1.83.14-stable...v1.84.0-rc.1