| 34 | const providers = yield* provider.list() |
| 35 | |
| 36 | const print = (providerID: ProviderV2.ID, verbose?: boolean) => { |
| 37 | const p = providers[providerID] |
| 38 | const sorted = Object.entries(p.models).sort(([a], [b]) => a.localeCompare(b)) |
| 39 | for (const [modelID, model] of sorted) { |
| 40 | process.stdout.write(`${providerID}/${modelID}`) |
| 41 | process.stdout.write(EOL) |
| 42 | if (verbose) { |
| 43 | process.stdout.write(JSON.stringify(model, null, 2)) |
| 44 | process.stdout.write(EOL) |
| 45 | } |
| 46 | } |
| 47 | } |
| 48 | |
| 49 | if (args.provider) { |
| 50 | const providerID = ProviderV2.ID.make(args.provider) |