UNPKG

openai-mock-api

Version:

A mock OpenAI API server for testing LLM applications

42 lines 1.69 kB
#!/usr/bin/env node "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const commander_1 = require("commander"); const config_1 = require("./config"); const logger_1 = require("./logger"); const server_1 = require("./server"); const program = new commander_1.Command(); program .name('openai-mock-api') .description('A mock OpenAI API server for testing LLM applications') .version('1.0.0') .option('-c, --config <path>', 'Path to YAML configuration file (use "-" for stdin)') .option('-p, --port <number>', 'Port to run the server on', '3000') .option('-l, --log-file <path>', 'Path to log file (defaults to stdout)') .option('-v, --verbose', 'Enable verbose logging') .parse(process.argv); const options = program.opts(); async function main() { try { const logger = new logger_1.Logger(options.logFile, options.verbose); const configLoader = new config_1.ConfigLoader(logger); // If no config specified, try to read from stdin const configPath = options.config || '-'; const config = await configLoader.load(configPath); const server = new server_1.MockServer(config, logger); const port = parseInt(options.port) || config.port || 3000; await server.start(port); logger.info(`Mock OpenAI API server started on port ${port}`); process.on('SIGINT', async () => { logger.info('Shutting down server...'); await server.stop(); process.exit(0); }); } catch (error) { console.error('Failed to start server:', error); process.exit(1); } } main(); //# sourceMappingURL=cli.js.map