34 lines
985 B
TypeScript
34 lines
985 B
TypeScript
import type { MastraModelConfig } from "@mastra/core/llm";
|
|
|
|
export type LanguageModelMode = "openai" | "compatible" | "anthropic";
|
|
|
|
export type PublicLanguageModel = {
|
|
readonly id: string;
|
|
readonly label: string;
|
|
readonly description: string;
|
|
readonly creditCost: number;
|
|
readonly isDefault: boolean;
|
|
};
|
|
|
|
export type ResolvedLanguageModel = PublicLanguageModel & {
|
|
readonly mode: LanguageModelMode;
|
|
readonly model: MastraModelConfig;
|
|
readonly configVersion?: number;
|
|
readonly inputCostMicrousdPerMillion?: number;
|
|
readonly outputCostMicrousdPerMillion?: number;
|
|
};
|
|
|
|
export type LanguageModelCatalog = {
|
|
readonly models: readonly ResolvedLanguageModel[];
|
|
readonly publicModels: readonly PublicLanguageModel[];
|
|
readonly defaultModelId: string | null;
|
|
readonly issues: readonly string[];
|
|
};
|
|
|
|
export const languageModelCatalog: LanguageModelCatalog = {
|
|
models: [],
|
|
publicModels: [],
|
|
defaultModelId: null,
|
|
issues: ["database_model_catalog_required"],
|
|
};
|