/** * llmindex.io — CLI: pnpm benchmark:run [--n 30] [--k 2] [--models slug1,slug2] * Author: Simon-Pierre Boucher * Contact: contact@spboucher.ai * License: Proprietary — © Simon-Pierre Boucher, all rights reserved */ import { parseArgs } from 'node:util'; import { prisma } from '@llmindex/db'; import '../env'; import { runBenchmark } from '../benchmark'; import { closeProgress } from '../progress'; const { values } = parseArgs({ options: { n: { type: 'string', default: '30' }, k: { type: 'string', default: '2' }, models: { type: 'string' }, parallel: { type: 'string', default: '6' }, }, }); runBenchmark({ n: Number(values.n), k: Number(values.k), models: values.models ? values.models.split(',').map((s) => s.trim()).filter(Boolean) : undefined, parallel: Number(values.parallel), }) .catch((err) => { console.error(String(err)); process.exitCode = 1; }) .finally(async () => { await closeProgress(); await prisma.$disconnect(); });