fLausch's picture
Upload 12 files
2753306 verified
export interface OpenRouterPricing {
prompt: string;
completion: string;
request: string;
image: string;
}
export interface OpenRouterModel {
id: string;
name: string;
description: string;
pricing: OpenRouterPricing;
context_length: number;
architecture: {
modality: string;
tokenizer: string;
instruct_type: string | null;
};
top_provider: {
context_length: number | null;
max_completion_tokens: number | null;
is_moderated: boolean;
};
created?: number;
}
export interface ModelTestResult {
modelId: string;
status: 'pending' | 'running' | 'success' | 'error';
// Test 1
latencyMs: number;
tokensPerSecond: number;
// Test 2 (Second answer)
latencyMs2: number;
tokensPerSecond2: number;
errorMsg?: string;
timestamp: number;
}
export type SortOption = 'name' | 'latency' | 'throughput' | 'context' | 'newest';
export interface AppState {
apiKey: string;
allModels: OpenRouterModel[];
freeModels: OpenRouterModel[];
testResults: Record<string, ModelTestResult>;
isTesting: boolean;
progress: number;
viewMode: 'list' | 'test';
}