Model provider
A model provider resolves a model by name. Note that the returned LanguageModel comes from AI SDK.
ts
import { LanguageModel } from 'ai';
interface ModelProvider {
getModel(name: string): Promise<LanguageModel>;
}Default model provider
Toor provides a default model provider (DefaultModelProvider) implementation that supports Gemini, OpenAI and Anthropic. It maps a model name to a model by checking prefix which can be:
gemini:(e.g.gemini:gemini-3.5-flash)openai:(e.g.openai:gpt-4o-mini)anthropic:(e.g.anthropic:claude-3.5-sonnet)
It takes the API keys from the environment variables:
GEMINI_API_KEYOPENAI_API_KEYANTHROPIC_API_KEY
If the API key is not set in the environment variables, it throws a MissingApiKeyError.
ts
import { DefaultModelProvider } from '@gettoor/core';
const provider = new DefaultModelProvider();
const model = await provider.getModel('gemini:gemini-3.5-flash');