wrapProvider
Wrap every model a provider produces.
Applies middleware at the provider level, so every model the provider hands out is already wrapped. Saves repeating the same wrapping at each call site.
let provider = wrapProvider(
provider: myProvider,
languageModelMiddleware: [.cache()]
)Signature
func wrapProvider(
provider: ProviderRegistry.Provider,
languageModelMiddleware: [LanguageModelMiddleware] = [],
embeddingModelMiddleware: [EmbeddingModelMiddleware] = [],
imageModelMiddleware: [ImageModelMiddleware] = []
) -> ProviderRegistry.ProviderDefined in Sources/AI/Core/ModelMiddleware.swift.
Parameters
| Parameter | Type | Default |
|---|---|---|
provider | ProviderRegistry.Provider | required |
languageModelMiddleware | [LanguageModelMiddleware] | [] |
embeddingModelMiddleware | [EmbeddingModelMiddleware] | [] |
imageModelMiddleware | [ImageModelMiddleware] | [] |
Returns
A WrappedProvider.