@ai-sdk/provider
An abstract package in the Vercel AI SDK ecosystem that defines a unified interface for model providers. It specifies the standard method signatures that language models, embedding models, and others should implement, enabling upper-layer SDK code to call models from different vendors using the same codebase.
Core Facts
This release aligns the toolchain versions to ai@7.0.130, @ai-sdk/provider@4.0.24, and @ai-sdk/provider-utils@5.0.56.
@ai-sdk/provider defines the standard interface, @ai-sdk/provider-utils provides common utility functions, and each specific vendor package implements its own adapter logic
@ai-sdk/zai@3.0.8 synchronously updated upstream dependencies: @ai-sdk/provider@4.0.12, @ai-sdk/openai-compatible@3.0.46, and @ai-sdk/provider-utils@5.0.38.
Timeline (last 90 days)
Provider interface changes across major versions require attention to the migration guide
The versions of ai, provider, and provider-utils must be aligned with each other, otherwise TypeScript type conflicts or missing runtime methods may occur
The provider package and the provider-utils package are usually released in pairs, and when their versions are inconsistent, runtime parsing differences or TypeScript type mismatches tend to occur
All concrete provider packages (such as @ai-sdk/openai, @ai-sdk/anthropic, @ai-sdk/xai) must implement the interfaces declared by @ai-sdk/provider, and any enum extension, field addition or removal, or type narrowing in that package propagates to all downstream providers
If the lockfile pins an old version of @ai-sdk/provider, upgrading the xAI package may result in multiple versions of the same dependency coexisting; after upgrading it is recommended to check the dependency tree to confirm there is no duplicate installation.
@ai-sdk/provider-utils is responsible for the general-purpose utility functions in the AI SDK for interacting with model providers, including low-level logic such as streaming response parsing, tool call formatting, and error handling.
若项目中精确锁定(exact pin)了 provider 和 provider-utils 的版本,升级后需手动检查是否放开版本范围,否则可能出现依赖冲突。
Version 4.0.138 also updated the underlying dependencies, explicitly including ai@7.0.138 and @ai-sdk/provider-utils@5.0.59.
对开发者的实用做法:用依赖锁定文件固定具体版本;定期批量升级同一批 @ai-sdk/* 包而非零星单独升级;关注 provider 与 provider-utils 的语义化版本变化,它们的变化才是行为层面的信号。
@ai-sdk/provider defines the interface specification that model providers must follow and serves as the contract for the entire ecosystem.
29 more timeline events
All Facts (20)
This release aligns the toolchain versions to ai@7.0.130, @ai-sdk/provider@4.0.24, and @ai-sdk/provider-utils@5.0.56.
90%Verified@ai-sdk/provider defines the standard interface, @ai-sdk/provider-utils provides common utility functions, and each specific vendor package implements its own adapter logic
90%Verified@ai-sdk/zai@3.0.8 synchronously updated upstream dependencies: @ai-sdk/provider@4.0.12, @ai-sdk/openai-compatible@3.0.46, and @ai-sdk/provider-utils@5.0.38.
90%VerifiedVercel AI SDK provides a unified abstraction layer for streaming responses, tool calling, and multi-model adaptation.
90%VerifiedThe @ai-sdk/provider package defines the core interface contracts that all providers must implement, including standardized definitions for capabilities such as text generation, streaming output, and tool calling.
85%VerifiedBecause large model APIs iterate frequently, @ai-sdk/provider and @ai-sdk/provider-utils have a relatively high release cadence within the AI SDK toolchain.
80%VerifiedWithin the AI SDK ecosystem, there exists an adapter package @ai-sdk/zod similar to @ai-sdk/valibot, with both providing the same public interface.
80%VerifiedThe Vercel AI SDK's unified multi-vendor abstraction layer is implemented based on a Provider plugin mechanism, where each vendor adapter is responsible for converting that vendor's raw HTTP API into the SDK's internal standard LanguageModelV1 interface.
80%VerifiedThe @ai-sdk/zai module depends on foundational modules such as provider, openai-compatible, and provider-utils.
80%VerifiedWhen a foundational package such as @ai-sdk/provider-utils that is depended upon by multiple packages is updated, Changeset automatically marks the packages that depend on it for a patch version bump, which is why @ai-sdk/valibot publishes a new version even though its own code has not changed.
75%Verified@ai-sdk/provider defines the interface contracts that all providers must implement, while @ai-sdk/provider-utils provides reusable utility functions.
75%Partially Verified@ai-sdk/provider-utils is responsible for the general-purpose utility functions in the AI SDK for interacting with model providers, including low-level logic such as streaming response parsing, tool call formatting, and error handling.
90%Partially VerifiedVersion 4.0.138 also updated the underlying dependencies, explicitly including ai@7.0.138 and @ai-sdk/provider-utils@5.0.59.
75%UnverifiedProvider interface changes across major versions require attention to the migration guide
50%UnverifiedThe versions of ai, provider, and provider-utils must be aligned with each other, otherwise TypeScript type conflicts or missing runtime methods may occur
50%UnverifiedAll concrete provider packages (such as @ai-sdk/openai, @ai-sdk/anthropic, @ai-sdk/xai) must implement the interfaces declared by @ai-sdk/provider, and any enum extension, field addition or removal, or type narrowing in that package propagates to all downstream providers
50%UnverifiedThe provider package and the provider-utils package are usually released in pairs, and when their versions are inconsistent, runtime parsing differences or TypeScript type mismatches tend to occur
50%UnverifiedIf the lockfile pins an old version of @ai-sdk/provider, upgrading the xAI package may result in multiple versions of the same dependency coexisting; after upgrading it is recommended to check the dependency tree to confirm there is no duplicate installation.
50%Unverified若项目中精确锁定(exact pin)了 provider 和 provider-utils 的版本,升级后需手动检查是否放开版本范围,否则可能出现依赖冲突。
50%Unverified对开发者的实用做法:用依赖锁定文件固定具体版本;定期批量升级同一批 @ai-sdk/* 包而非零星单独升级;关注 provider 与 provider-utils 的语义化版本变化,它们的变化才是行为层面的信号。
50%