diff options
Diffstat (limited to 'js/src/provider')
| -rw-r--r-- | js/src/provider/provider.ts | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/js/src/provider/provider.ts b/js/src/provider/provider.ts new file mode 100644 index 000000000..44482b6db --- /dev/null +++ b/js/src/provider/provider.ts @@ -0,0 +1,32 @@ +import z from "zod"; + +export namespace Provider { + export const Model = z + .object({ + name: z.string().optional(), + cost: z.object({ + input: z.number(), + inputCached: z.number(), + output: z.number(), + outputCached: z.number(), + }), + contextWindow: z.number(), + maxTokens: z.number().optional(), + attachment: z.boolean(), + reasoning: z.boolean().optional(), + }) + .openapi({ + ref: "Provider.Model", + }); + export type Model = z.output<typeof Model>; + + export const Info = z + .object({ + options: z.record(z.string(), z.any()).optional(), + models: z.record(z.string(), Model), + }) + .openapi({ + ref: "Provider.Info", + }); + export type Info = z.output<typeof Info>; +} |
