Spaces:
Running
Running
File size: 1,788 Bytes
5012205 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
import { xai } from "@ai-sdk/xai";
import { openai } from "@ai-sdk/openai";
import { customProvider } from "ai";
export interface ModelInfo {
provider: string;
name: string;
description: string;
apiVersion: string;
capabilities: string[];
}
const languageModels = {
"grok-3": xai("grok-3-latest"),
"grok-3-mini": xai("grok-3-mini-fast-latest"),
"gpt-4.1-mini": openai("gpt-4.1-mini"),
"gpt-4.1-nano": openai("gpt-4.1-nano"),
};
export const modelDetails: Record<keyof typeof languageModels, ModelInfo> = {
"grok-3": {
provider: "xAI",
name: "Grok-3",
description: "Latest version of xAI's flagship model with strong reasoning and coding capabilities.",
apiVersion: "grok-3-latest",
capabilities: ["Balance", "Efficient", "Agentic"]
},
"grok-3-mini": {
provider: "xAI",
name: "Grok-3 Mini",
description: "Fast, efficient and smaller xAI model with reasoning capabilities.",
apiVersion: "grok-3-mini-fast-latest",
capabilities: ["Fast","Reasoning", "Efficient"]
},
"gpt-4.1-mini": {
provider: "OpenAI",
name: "GPT-4.1 Mini",
description: "Compact version of OpenAI's GPT-4.1 with good balance of capabilities, including vision.",
apiVersion: "gpt-4.1-mini",
capabilities: [ "Balance", "Creative", "Vision"]
},
"gpt-4.1-nano": {
provider: "OpenAI",
name: "GPT-4.1 Nano",
description: "Smallest and fastest GPT-4.1 variant designed for efficient rapid responses.",
apiVersion: "gpt-4.1-nano",
capabilities: ["Rapid", "Compact", "Efficient", "Vision"]
},
};
export const model = customProvider({
languageModels,
});
export type modelID = keyof typeof languageModels;
export const MODELS = Object.keys(languageModels);
export const defaultModel: modelID = "grok-3-mini";
|