OpenRouter: update parser

This commit is contained in:
Enrico Ros
2024-05-06 22:56:09 -07:00
parent 97858a3c94
commit 8903c9296b
2 changed files with 9 additions and 3 deletions
@@ -600,8 +600,10 @@ export function openRouterModelToModelDescription(wireModel: object): ModelDescr
// parse pricing
const pricing: ModelDescriptionSchema['pricing'] = {
chatIn: parseFloat(model.pricing.prompt) * 1000,
chatOut: parseFloat(model.pricing.completion),
chatIn: parseFloat(model.pricing.prompt) * 1000 * 1000,
chatOut: parseFloat(model.pricing.completion) * 1000 * 1000,
// image...
// request...
};
const seemsFree = pricing.chatIn === 0 && pricing.chatOut === 0;
@@ -8,14 +8,18 @@ export const wireOpenrouterModelsListOutputSchema = z.object({
pricing: z.object({
prompt: z.string(),
completion: z.string(),
image: z.string(),
request: z.string(),
}),
context_length: z.number(),
architecture: z.object({
tokenizer: z.string(),
modality: z.string(), // z.enum(['text', 'multimodal']),
tokenizer: z.string(), // e.g. 'Mistral'
instruct_type: z.string().nullable(),
}),
top_provider: z.object({
max_completion_tokens: z.number().nullable(),
is_moderated: z.boolean(), // false means that the user will need to do moderation, and likely this has lower latency
}),
// when logged in