最近リリースされたLiteLLM v1.85.0-rc.2のchangelogを眺めていて、「あ、これ自分のコードに直撃する」と思った箇所があった。
まず目を引いたのが、`fix: strip 'openrouter/' prefix from model names (#24234)` という修正。OpenRouterを経由してモデルを呼ぶとき、モデル名に `openrouter/` を付けたまま渡すケースって結構あると思う。自分も以前、レスポンスのmodel名が期待と違ってログがぐちゃぐちゃになった経験がある。この修正でその挙動が整理される。コードを直すというより、既存の動作が変わる可能性があるので一応チェックが必要だ。
もし自分のコードで `openrouter/` プレフィックスを前提にした文字列マッチングをしているなら、そこが壊れるかもしれない。リリースノートを読んで気づけて良かった。
もう一つ気になったのがGemini周りの2件。`fix(gemini): return separate embeddings for multimodal inputs (#24337)` と `feat(gemini): support combined multimodal embeddings via nested input (#24341)` が同時に入っている。前者は修正で、後者は新機能だ。
マルチモーダルの入力に対してembeddingをどう返すか、という挙動が変わっている。テキストと画像を混ぜて埋め込みを取る処理を書いている場合、レスポンスの構造が変わっている可能性がある。自分はまだGeminiのembeddingを本番で使っていないけど、試験的なコードはあるので確認しておきたい。
こういう細かい挙動変更って、ライブラリのバージョンを上げたときに突然ユニットテストが落ちて気づくパターンが多い。事前に把握しておけると余計なデバッグ時間が減る。
Dockerイメージを使っているチームは、このcosignによる署名検証も今回から意識しておいていい。コミットハッシュ `0112e53` で固定して検証するのが推奨されていて、タグベースの検証より強固だという説明になっている。サプライチェーン攻撃への対策として、本番環境でイメージを使うなら一度通しておきたい。
Bedrockのサポートに `feat(bedrock): add Z.AI GLM-5 model support (#24338)` が追加されている。GLM系のモデルをBedrockから呼べるようになるのは普通に面白い。中国系のLLMをAWSのインフラ経由で使うという構成、コスト計算や認証周りがシンプルになるならありがたい。自分では今すぐ使うシーンはないけど、ライブラリの選択肢が広がるのは素直に良いと思う。
今回のrc.2は機能追加というより細かい修正と整理が多い印象だ。ただ、OpenRouterやGeminiを実際に使っているなら無視できない変更が含まれている。自分はまず手元の検証用コードで `openrouter/` プレフィックスの挙動を確認してから、安定版を待ってアップデートしようと思っている。
openrouter/プレフィックスのstrip処理
まず目を引いたのが、`fix: strip 'openrouter/' prefix from model names (#24234)` という修正。OpenRouterを経由してモデルを呼ぶとき、モデル名に `openrouter/` を付けたまま渡すケースって結構あると思う。自分も以前、レスポンスのmodel名が期待と違ってログがぐちゃぐちゃになった経験がある。この修正でその挙動が整理される。コードを直すというより、既存の動作が変わる可能性があるので一応チェックが必要だ。
もし自分のコードで `openrouter/` プレフィックスを前提にした文字列マッチングをしているなら、そこが壊れるかもしれない。リリースノートを読んで気づけて良かった。
Geminiのマルチモーダル埋め込みが変わった
もう一つ気になったのがGemini周りの2件。`fix(gemini): return separate embeddings for multimodal inputs (#24337)` と `feat(gemini): support combined multimodal embeddings via nested input (#24341)` が同時に入っている。前者は修正で、後者は新機能だ。
マルチモーダルの入力に対してembeddingをどう返すか、という挙動が変わっている。テキストと画像を混ぜて埋め込みを取る処理を書いている場合、レスポンスの構造が変わっている可能性がある。自分はまだGeminiのembeddingを本番で使っていないけど、試験的なコードはあるので確認しておきたい。
こういう細かい挙動変更って、ライブラリのバージョンを上げたときに突然ユニットテストが落ちて気づくパターンが多い。事前に把握しておけると余計なデバッグ時間が減る。
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.85.0-rc.2Dockerイメージを使っているチームは、このcosignによる署名検証も今回から意識しておいていい。コミットハッシュ `0112e53` で固定して検証するのが推奨されていて、タグベースの検証より強固だという説明になっている。サプライチェーン攻撃への対策として、本番環境でイメージを使うなら一度通しておきたい。
Bedrock経由でZ.AI GLM-5が使えるようになった
Bedrockのサポートに `feat(bedrock): add Z.AI GLM-5 model support (#24338)` が追加されている。GLM系のモデルをBedrockから呼べるようになるのは普通に面白い。中国系のLLMをAWSのインフラ経由で使うという構成、コスト計算や認証周りがシンプルになるならありがたい。自分では今すぐ使うシーンはないけど、ライブラリの選択肢が広がるのは素直に良いと思う。
今回のrc.2は機能追加というより細かい修正と整理が多い印象だ。ただ、OpenRouterやGeminiを実際に使っているなら無視できない変更が含まれている。自分はまず手元の検証用コードで `openrouter/` プレフィックスの挙動を確認してから、安定版を待ってアップデートしようと思っている。