// This file is auto-generated by scripts/generate-models.ts
// Do not edit manually - run 'npm run generate-models' to update

import type { Model } from "../types.ts";

export const MISTRAL_MODELS = {
	"codestral-latest": {
		id: "codestral-latest",
		name: "Codestral (latest)",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text"],
		cost: {
			input: 0.3,
			output: 0.9,
			cacheRead: 0.03,
			cacheWrite: 0,
		},
		contextWindow: 256000,
		maxTokens: 4096,
	} satisfies Model<"mistral-conversations">,
	"devstral-2512": {
		id: "devstral-2512",
		name: "Devstral 2",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text"],
		cost: {
			input: 0.4,
			output: 2,
			cacheRead: 0.04,
			cacheWrite: 0,
		},
		contextWindow: 262144,
		maxTokens: 262144,
	} satisfies Model<"mistral-conversations">,
	"devstral-latest": {
		id: "devstral-latest",
		name: "Devstral 2",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text"],
		cost: {
			input: 0.4,
			output: 2,
			cacheRead: 0.04,
			cacheWrite: 0,
		},
		contextWindow: 262144,
		maxTokens: 262144,
	} satisfies Model<"mistral-conversations">,
	"devstral-medium-2507": {
		id: "devstral-medium-2507",
		name: "Devstral Medium",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text"],
		cost: {
			input: 0.4,
			output: 2,
			cacheRead: 0.04,
			cacheWrite: 0,
		},
		contextWindow: 128000,
		maxTokens: 128000,
	} satisfies Model<"mistral-conversations">,
	"devstral-medium-latest": {
		id: "devstral-medium-latest",
		name: "Devstral 2 (latest)",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text"],
		cost: {
			input: 0.4,
			output: 2,
			cacheRead: 0.04,
			cacheWrite: 0,
		},
		contextWindow: 262144,
		maxTokens: 262144,
	} satisfies Model<"mistral-conversations">,
	"devstral-small-2505": {
		id: "devstral-small-2505",
		name: "Devstral Small 2505",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text"],
		cost: {
			input: 0.1,
			output: 0.3,
			cacheRead: 0.01,
			cacheWrite: 0,
		},
		contextWindow: 128000,
		maxTokens: 128000,
	} satisfies Model<"mistral-conversations">,
	"devstral-small-2507": {
		id: "devstral-small-2507",
		name: "Devstral Small",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text"],
		cost: {
			input: 0.1,
			output: 0.3,
			cacheRead: 0.01,
			cacheWrite: 0,
		},
		contextWindow: 128000,
		maxTokens: 128000,
	} satisfies Model<"mistral-conversations">,
	"labs-devstral-small-2512": {
		id: "labs-devstral-small-2512",
		name: "Devstral Small 2",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text", "image"],
		cost: {
			input: 0,
			output: 0,
			cacheRead: 0,
			cacheWrite: 0,
		},
		contextWindow: 256000,
		maxTokens: 256000,
	} satisfies Model<"mistral-conversations">,
	"magistral-medium-latest": {
		id: "magistral-medium-latest",
		name: "Magistral Medium (latest)",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: true,
		input: ["text"],
		cost: {
			input: 2,
			output: 5,
			cacheRead: 0.2,
			cacheWrite: 0,
		},
		contextWindow: 128000,
		maxTokens: 16384,
	} satisfies Model<"mistral-conversations">,
	"magistral-small": {
		id: "magistral-small",
		name: "Magistral Small",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: true,
		input: ["text"],
		cost: {
			input: 0.5,
			output: 1.5,
			cacheRead: 0.05,
			cacheWrite: 0,
		},
		contextWindow: 128000,
		maxTokens: 128000,
	} satisfies Model<"mistral-conversations">,
	"ministral-3b-latest": {
		id: "ministral-3b-latest",
		name: "Ministral 3B (latest)",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text"],
		cost: {
			input: 0.04,
			output: 0.04,
			cacheRead: 0.004,
			cacheWrite: 0,
		},
		contextWindow: 128000,
		maxTokens: 128000,
	} satisfies Model<"mistral-conversations">,
	"ministral-8b-latest": {
		id: "ministral-8b-latest",
		name: "Ministral 8B (latest)",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text"],
		cost: {
			input: 0.1,
			output: 0.1,
			cacheRead: 0.01,
			cacheWrite: 0,
		},
		contextWindow: 128000,
		maxTokens: 128000,
	} satisfies Model<"mistral-conversations">,
	"mistral-large-2411": {
		id: "mistral-large-2411",
		name: "Mistral Large 2.1",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text"],
		cost: {
			input: 2,
			output: 6,
			cacheRead: 0.2,
			cacheWrite: 0,
		},
		contextWindow: 131072,
		maxTokens: 16384,
	} satisfies Model<"mistral-conversations">,
	"mistral-large-2512": {
		id: "mistral-large-2512",
		name: "Mistral Large 3",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text", "image"],
		cost: {
			input: 0.5,
			output: 1.5,
			cacheRead: 0.05,
			cacheWrite: 0,
		},
		contextWindow: 262144,
		maxTokens: 262144,
	} satisfies Model<"mistral-conversations">,
	"mistral-large-latest": {
		id: "mistral-large-latest",
		name: "Mistral Large (latest)",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text", "image"],
		cost: {
			input: 0.5,
			output: 1.5,
			cacheRead: 0.05,
			cacheWrite: 0,
		},
		contextWindow: 262144,
		maxTokens: 262144,
	} satisfies Model<"mistral-conversations">,
	"mistral-medium-2505": {
		id: "mistral-medium-2505",
		name: "Mistral Medium 3",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text", "image"],
		cost: {
			input: 0.4,
			output: 2,
			cacheRead: 0.04,
			cacheWrite: 0,
		},
		contextWindow: 131072,
		maxTokens: 131072,
	} satisfies Model<"mistral-conversations">,
	"mistral-medium-2508": {
		id: "mistral-medium-2508",
		name: "Mistral Medium 3.1",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text", "image"],
		cost: {
			input: 0.4,
			output: 2,
			cacheRead: 0.04,
			cacheWrite: 0,
		},
		contextWindow: 262144,
		maxTokens: 262144,
	} satisfies Model<"mistral-conversations">,
	"mistral-medium-2604": {
		id: "mistral-medium-2604",
		name: "Mistral Medium 3.5",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: true,
		input: ["text", "image"],
		cost: {
			input: 1.5,
			output: 7.5,
			cacheRead: 0.15,
			cacheWrite: 0,
		},
		contextWindow: 262144,
		maxTokens: 262144,
	} satisfies Model<"mistral-conversations">,
	"mistral-medium-3.5": {
		id: "mistral-medium-3.5",
		name: "Mistral Medium 3.5",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: true,
		input: ["text", "image"],
		cost: {
			input: 1.5,
			output: 7.5,
			cacheRead: 0,
			cacheWrite: 0,
		},
		contextWindow: 262144,
		maxTokens: 262144,
	} satisfies Model<"mistral-conversations">,
	"mistral-medium-latest": {
		id: "mistral-medium-latest",
		name: "Mistral Medium (latest)",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text", "image"],
		cost: {
			input: 0.4,
			output: 2,
			cacheRead: 0.04,
			cacheWrite: 0,
		},
		contextWindow: 262144,
		maxTokens: 262144,
	} satisfies Model<"mistral-conversations">,
	"mistral-nemo": {
		id: "mistral-nemo",
		name: "Mistral Nemo",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text"],
		cost: {
			input: 0.15,
			output: 0.15,
			cacheRead: 0.015,
			cacheWrite: 0,
		},
		contextWindow: 128000,
		maxTokens: 128000,
	} satisfies Model<"mistral-conversations">,
	"mistral-small-2506": {
		id: "mistral-small-2506",
		name: "Mistral Small 3.2",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text", "image"],
		cost: {
			input: 0.1,
			output: 0.3,
			cacheRead: 0.01,
			cacheWrite: 0,
		},
		contextWindow: 128000,
		maxTokens: 16384,
	} satisfies Model<"mistral-conversations">,
	"mistral-small-2603": {
		id: "mistral-small-2603",
		name: "Mistral Small 4",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: true,
		input: ["text", "image"],
		cost: {
			input: 0.15,
			output: 0.6,
			cacheRead: 0.015,
			cacheWrite: 0,
		},
		contextWindow: 256000,
		maxTokens: 256000,
	} satisfies Model<"mistral-conversations">,
	"mistral-small-latest": {
		id: "mistral-small-latest",
		name: "Mistral Small (latest)",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: true,
		input: ["text", "image"],
		cost: {
			input: 0.15,
			output: 0.6,
			cacheRead: 0.015,
			cacheWrite: 0,
		},
		contextWindow: 256000,
		maxTokens: 256000,
	} satisfies Model<"mistral-conversations">,
	"open-mistral-7b": {
		id: "open-mistral-7b",
		name: "Mistral 7B",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text"],
		cost: {
			input: 0.25,
			output: 0.25,
			cacheRead: 0.025,
			cacheWrite: 0,
		},
		contextWindow: 8000,
		maxTokens: 8000,
	} satisfies Model<"mistral-conversations">,
	"open-mistral-nemo": {
		id: "open-mistral-nemo",
		name: "Open Mistral Nemo",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text"],
		cost: {
			input: 0.15,
			output: 0.15,
			cacheRead: 0.015,
			cacheWrite: 0,
		},
		contextWindow: 128000,
		maxTokens: 128000,
	} satisfies Model<"mistral-conversations">,
	"open-mixtral-8x22b": {
		id: "open-mixtral-8x22b",
		name: "Mixtral 8x22B",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text"],
		cost: {
			input: 2,
			output: 6,
			cacheRead: 0.2,
			cacheWrite: 0,
		},
		contextWindow: 64000,
		maxTokens: 64000,
	} satisfies Model<"mistral-conversations">,
	"open-mixtral-8x7b": {
		id: "open-mixtral-8x7b",
		name: "Mixtral 8x7B",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text"],
		cost: {
			input: 0.7,
			output: 0.7,
			cacheRead: 0.07,
			cacheWrite: 0,
		},
		contextWindow: 32000,
		maxTokens: 32000,
	} satisfies Model<"mistral-conversations">,
	"pixtral-12b": {
		id: "pixtral-12b",
		name: "Pixtral 12B",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text", "image"],
		cost: {
			input: 0.15,
			output: 0.15,
			cacheRead: 0.015,
			cacheWrite: 0,
		},
		contextWindow: 128000,
		maxTokens: 128000,
	} satisfies Model<"mistral-conversations">,
	"pixtral-large-latest": {
		id: "pixtral-large-latest",
		name: "Pixtral Large (latest)",
		api: "mistral-conversations",
		provider: "mistral",
		baseUrl: "https://api.mistral.ai",
		reasoning: false,
		input: ["text", "image"],
		cost: {
			input: 2,
			output: 6,
			cacheRead: 0.2,
			cacheWrite: 0,
		},
		contextWindow: 128000,
		maxTokens: 128000,
	} satisfies Model<"mistral-conversations">,
} as const;
