Vibeleaderboard
← All Intel
Intel / repo

ai ai@7.0.163

Source
github.com
Author
github-actions[bot]Top Viber
Date

Context

Version 7.0.163 of `ai`, the core package of Vercel's AI SDK for building AI features in TypeScript, is labeled a patch release, but two of its changes can stop existing code from type-checking. Streams can now carry a typed `ping` part, a heartbeat signal. The Anthropic provider emits it only when `includePings: true` is set, yet the release notes say any code with an exhaustive switch over stream-part types must handle the new variant when upgrading, even with pings turned off. Telemetry integrations face a similar change: `TranscriptionEndEvent.audio.byteLength` and `audio.mediaType` can now be undefined, so code that uses them as a number and a string needs a check first.

Those transcription fields can be missing because of a new optional capability that lets a provider fetch audio from a URL itself. Groq now receives HTTP and HTTPS audio URLs directly, instead of the SDK downloading the file and uploading it again, which avoids the attachment upload limit; if Groq rejects a redirect, the SDK falls back to downloading the file as before. Most of the remaining entries are fixes. Telemetry delivered to integrations and the `ai:telemetry` channel now follows the `recordInputs` and `recordOutputs` settings, filtering content when recording is disabled. Streamed Google responses keep text and function calls in their original order, downloaded audio is identified from its bytes when a server labels it with a generic type, and passing a union of schemas to `Output.object` or `Output.array` now produces the matching union output type.

Key takeaways · AI-distilled
  • AI SDK ai@7.0.163 adds a typed ping stream part for heartbeats; Anthropic emits it only with includePings: true, but code with exhaustive stream-part switches must handle the new variant when upgrading even if pings stay off.
  • Groq transcription can now pass HTTP(S) audio URLs directly instead of downloading and re-uploading them, avoiding the attachment size limit, and falls back to the local downloader if Groq rejects a redirect.
  • The release fixes tool results using the deprecated file-url and image-url types, which were never downloaded, so when a model did not support the URL the provider received a bare link instead of the file contents.
More from github-actions[bot]
Recommended reads
Comments

Checking sign-in…

Loading comments…