CustomProvider
Namespace: Vercel.AI
public sealed class CustomProvider : ProviderBase, IDecisionProviderA provider backed by caller-supplied models. Maps to customProvider. A model id that is not registered goes to
FallbackProvider, or throws NoSuchModelError when there is none.
Inheritance: object → ProviderBase
Implements: IDecisionProvider
Constructors
Section titled “Constructors”CustomProvider(string)
Section titled “CustomProvider(string)”public CustomProvider(string name = "custom")Creates a custom provider.
Parameters
| Name | Type | Description |
|---|---|---|
name |
string |
Properties
Section titled “Properties”FallbackProvider
Section titled “FallbackProvider”public ProviderBase? FallbackProvider { get; set; }Provider asked for model ids that are not registered here.
Value: ProviderBase
public IFileStore? Files { get; set; }File store. When null, the fallback provider’s file store is used.
Value: IFileStore
Skills
Section titled “Skills”public ISkillStore? Skills { get; set; }Skill store. When null, the fallback provider’s skill store is used.
Value: ISkillStore
Methods
Section titled “Methods”AddDecisionModel(string, string)
Section titled “AddDecisionModel(string, string)”public CustomProvider AddDecisionModel(string modelId, string providerModelId)Registers a string alias for a decision model. The id is resolved through DefaultProvider, or Gateway when none is set, when DecisionModel(string) is called.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string | |
providerModelId |
string |
Returns: CustomProvider
AddDecisionModel(string, IDecisionCaller)
Section titled “AddDecisionModel(string, IDecisionCaller)”public CustomProvider AddDecisionModel(string modelId, IDecisionCaller model)Registers a decision model under <code class=“paramref”>modelId</code>. Maps to decisionModels.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string | |
model |
IDecisionCaller |
Returns: CustomProvider
AddEmbeddingModel(string, IEmbeddingModel)
Section titled “AddEmbeddingModel(string, IEmbeddingModel)”public CustomProvider AddEmbeddingModel(string modelId, IEmbeddingModel model)Registers an embedding model under <code class=“paramref”>modelId</code>.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string | |
model |
IEmbeddingModel |
Returns: CustomProvider
AddEmbeddingModel(IEmbeddingModel)
Section titled “AddEmbeddingModel(IEmbeddingModel)”public CustomProvider AddEmbeddingModel(IEmbeddingModel model)Registers an embedding model under its own model id.
Parameters
| Name | Type | Description |
|---|---|---|
model |
IEmbeddingModel |
Returns: CustomProvider
AddEvaluationModel(string, IEvaluationCaller)
Section titled “AddEvaluationModel(string, IEvaluationCaller)”[Obsolete("Use AddDecisionModel instead.")]public CustomProvider AddEvaluationModel(string modelId, IEvaluationCaller model)Registers a deprecated decision model under <code class=“paramref”>modelId</code>. Maps to evaluationModels.
These models are ignored once any model is added with AddDecisionModel.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string | |
model |
IEvaluationCaller |
Returns: CustomProvider
AddEvaluationModel(string, IEvaluationModel)
Section titled “AddEvaluationModel(string, IEvaluationModel)”[Obsolete("Use AddRubricModel instead.")]public CustomProvider AddEvaluationModel(string modelId, IEvaluationModel model)Deprecated name of IRubricModel). Registers a rubric model, not a decision model.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string | |
model |
IEvaluationModel |
Returns: CustomProvider
AddImageModel(string, IImageModel)
Section titled “AddImageModel(string, IImageModel)”public CustomProvider AddImageModel(string modelId, IImageModel model)Registers an image model under <code class=“paramref”>modelId</code>.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string | |
model |
IImageModel |
Returns: CustomProvider
AddLanguageModel(string, ILanguageModel)
Section titled “AddLanguageModel(string, ILanguageModel)”public CustomProvider AddLanguageModel(string modelId, ILanguageModel model)Registers a language model under <code class=“paramref”>modelId</code>.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string | |
model |
ILanguageModel |
Returns: CustomProvider
AddLanguageModel(ILanguageModel)
Section titled “AddLanguageModel(ILanguageModel)”public CustomProvider AddLanguageModel(ILanguageModel model)Registers a language model under its own model id.
Parameters
| Name | Type | Description |
|---|---|---|
model |
ILanguageModel |
Returns: CustomProvider
AddRerankingModel(string, IRerankingModel)
Section titled “AddRerankingModel(string, IRerankingModel)”public CustomProvider AddRerankingModel(string modelId, IRerankingModel model)Registers a reranking model under <code class=“paramref”>modelId</code>.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string | |
model |
IRerankingModel |
Returns: CustomProvider
AddRubricModel(string, IRubricModel)
Section titled “AddRubricModel(string, IRubricModel)”public CustomProvider AddRubricModel(string modelId, IRubricModel model)Registers a model that scores a candidate against a rubric under <code class=“paramref”>modelId</code>.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string | |
model |
IRubricModel |
Returns: CustomProvider
AddSpeechModel(string, ISpeechModel)
Section titled “AddSpeechModel(string, ISpeechModel)”public CustomProvider AddSpeechModel(string modelId, ISpeechModel model)Registers a speech model under <code class=“paramref”>modelId</code>.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string | |
model |
ISpeechModel |
Returns: CustomProvider
AddTranscriptionModel(string, ITranscriptionModel)
Section titled “AddTranscriptionModel(string, ITranscriptionModel)”public CustomProvider AddTranscriptionModel(string modelId, ITranscriptionModel model)Registers a transcription model under <code class=“paramref”>modelId</code>.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string | |
model |
ITranscriptionModel |
Returns: CustomProvider
AddVideoModel(string, IVideoModel)
Section titled “AddVideoModel(string, IVideoModel)”public CustomProvider AddVideoModel(string modelId, IVideoModel model)Registers a video model under <code class=“paramref”>modelId</code>.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string | |
model |
IVideoModel |
Returns: CustomProvider
DecisionModel(string)
Section titled “DecisionModel(string)”public IDecisionCaller DecisionModel(string modelId)Returns the decision model registered under <code class=“paramref”>modelId</code>, or asks FallbackProvider when it implements IDecisionProvider or the deprecated IEvaluationProvider.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string |
Returns: IDecisionCaller
EmbeddingModel(string)
Section titled “EmbeddingModel(string)”public override IEmbeddingModel EmbeddingModel(string modelId)Returns an embedding model.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string |
Returns: IEmbeddingModel
EvaluationModel(string)
Section titled “EvaluationModel(string)”[Obsolete("Use DecisionModel instead.")]public IEvaluationDecisionCaller EvaluationModel(string modelId)Deprecated alias of DecisionModel(string). Returns the same model, which also has the deprecated
CancellationToken). Maps to evaluationModel.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string |
Returns: IEvaluationDecisionCaller
FileStore()
Section titled “FileStore()”public override IFileStore FileStore()Returns a file store.
Returns: IFileStore
ImageModel(string)
Section titled “ImageModel(string)”public override IImageModel ImageModel(string modelId)Returns an image model.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string |
Returns: IImageModel
LanguageModel(string)
Section titled “LanguageModel(string)”public override ILanguageModel LanguageModel(string modelId)Returns a language model.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string |
Returns: ILanguageModel
RerankingModel(string)
Section titled “RerankingModel(string)”public override IRerankingModel RerankingModel(string modelId)Returns a reranking model.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string |
Returns: IRerankingModel
RubricModel(string)
Section titled “RubricModel(string)”public override IRubricModel RubricModel(string modelId)Returns a model that scores a candidate against a rubric.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string |
Returns: IRubricModel
SkillStore()
Section titled “SkillStore()”public override ISkillStore SkillStore()Returns a skill store.
Returns: ISkillStore
SpeechModel(string)
Section titled “SpeechModel(string)”public override ISpeechModel SpeechModel(string modelId)Returns a speech model.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string |
Returns: ISpeechModel
TranscriptionModel(string)
Section titled “TranscriptionModel(string)”public override ITranscriptionModel TranscriptionModel(string modelId)Returns a transcription model.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string |
Returns: ITranscriptionModel
VideoModel(string)
Section titled “VideoModel(string)”public override IVideoModel VideoModel(string modelId)Returns a video model.
Parameters
| Name | Type | Description |
|---|---|---|
modelId |
string |
Returns: IVideoModel
Apache-2.0 · Copyright 2023 Vercel, Inc. · unofficial community port, not an official Vercel product