Open1
Google AI + AI SDK + Cloudflare AI Gateway
問題
Vercel AI SDKを使って、Cloudflare AI Gatewayを介してGoogle AI Studio APIにつなぐとエラーになる
解決
https://gateway.ai.cloudflare.com/v1/{account_id}/{gateway_id}/google-ai-studio/v1beta
Base URLの末尾に/v1beta
をつける。
起こっていること
ドキュメントどおりにするとhttps://gateway.ai.cloudflare.com/v1/{account_id}/{gateway_id}/google-ai-studio
をベースURLに設定したくなる。
あくまでこれはバージョン指定抜きのベースであることに気をつける必要がある。
公式の@google/generative-ai
を使う場合は、勝手にバージョン指定をつけてくれるのでこのままの設定でよいが、ai + @ai-sdk/google
の場合は明示的にバージョンを付け加える。
その際、Cloudflare側のドキュメントを読むと/v1
にしたくなるが、現行の@ai-sdk/google
のコードが/v1beta
想定になっており、/v1
とはリクエストのフォーマットが違うことからsystem
を設定するとリクエストエラーになってしまう。
以上から、現行のバージョンでは/v1beta
を指定してあげる必要がある。