2025-12-14 21:26:49 +00:00
|
|
|
// Curated list of top models from Vercel AI Gateway
|
2026-03-02 13:31:39 +00:00
|
|
|
export const DEFAULT_CHAT_MODEL = "openai/gpt-4.1-mini";
|
2025-02-03 20:33:15 +05:30
|
|
|
|
2025-09-21 11:02:31 -07:00
|
|
|
export type ChatModel = {
|
2024-10-30 16:01:24 +05:30
|
|
|
id: string;
|
2025-02-03 20:33:15 +05:30
|
|
|
name: string;
|
2025-12-14 21:26:49 +00:00
|
|
|
provider: string;
|
2024-10-30 16:01:24 +05:30
|
|
|
description: string;
|
2025-09-21 11:02:31 -07:00
|
|
|
};
|
2024-10-30 16:01:24 +05:30
|
|
|
|
2025-09-21 11:02:31 -07:00
|
|
|
export const chatModels: ChatModel[] = [
|
2025-12-14 21:26:49 +00:00
|
|
|
// Anthropic
|
2024-10-30 16:01:24 +05:30
|
|
|
{
|
2025-12-14 21:26:49 +00:00
|
|
|
id: "anthropic/claude-haiku-4.5",
|
|
|
|
|
name: "Claude Haiku 4.5",
|
|
|
|
|
provider: "anthropic",
|
|
|
|
|
description: "Fast and affordable, great for everyday tasks",
|
2024-10-30 16:01:24 +05:30
|
|
|
},
|
2025-12-14 21:26:49 +00:00
|
|
|
// OpenAI
|
|
|
|
|
{
|
|
|
|
|
id: "openai/gpt-4.1-mini",
|
|
|
|
|
name: "GPT-4.1 Mini",
|
|
|
|
|
provider: "openai",
|
|
|
|
|
description: "Fast and cost-effective for simple tasks",
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
id: "openai/gpt-5.2",
|
|
|
|
|
name: "GPT-5.2",
|
|
|
|
|
provider: "openai",
|
|
|
|
|
description: "Most capable OpenAI model",
|
|
|
|
|
},
|
|
|
|
|
// Google
|
|
|
|
|
{
|
|
|
|
|
id: "google/gemini-2.5-flash-lite",
|
|
|
|
|
name: "Gemini 2.5 Flash Lite",
|
|
|
|
|
provider: "google",
|
|
|
|
|
description: "Ultra fast and affordable",
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
id: "google/gemini-3-pro-preview",
|
|
|
|
|
name: "Gemini 3 Pro",
|
|
|
|
|
provider: "google",
|
|
|
|
|
description: "Most capable Google model",
|
|
|
|
|
},
|
|
|
|
|
// xAI
|
|
|
|
|
{
|
|
|
|
|
id: "xai/grok-4.1-fast-non-reasoning",
|
|
|
|
|
name: "Grok 4.1 Fast",
|
|
|
|
|
provider: "xai",
|
|
|
|
|
description: "Fast with 30K context",
|
|
|
|
|
},
|
|
|
|
|
// Reasoning models (extended thinking)
|
|
|
|
|
{
|
|
|
|
|
id: "anthropic/claude-3.7-sonnet-thinking",
|
|
|
|
|
name: "Claude 3.7 Sonnet",
|
|
|
|
|
provider: "reasoning",
|
|
|
|
|
description: "Extended thinking for complex problems",
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
id: "xai/grok-code-fast-1-thinking",
|
|
|
|
|
name: "Grok Code Fast",
|
|
|
|
|
provider: "reasoning",
|
|
|
|
|
description: "Reasoning optimized for code",
|
2025-02-03 20:33:15 +05:30
|
|
|
},
|
|
|
|
|
];
|
2025-12-14 21:26:49 +00:00
|
|
|
|
|
|
|
|
// Group models by provider for UI
|
|
|
|
|
export const modelsByProvider = chatModels.reduce(
|
|
|
|
|
(acc, model) => {
|
|
|
|
|
if (!acc[model.provider]) {
|
|
|
|
|
acc[model.provider] = [];
|
|
|
|
|
}
|
|
|
|
|
acc[model.provider].push(model);
|
|
|
|
|
return acc;
|
|
|
|
|
},
|
|
|
|
|
{} as Record<string, ChatModel[]>
|
|
|
|
|
);
|