import argparse import os if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument('--port', '-p', type=int, default=9090, help="Websocket port to run the server on.") parser.add_argument('--backend', '-b', type=str, default='faster_whisper', help='Backends from ["tensorrt", "faster_whisper", "openvino"]') parser.add_argument('--faster_whisper_custom_model_path', '-fw', type=str, default=None, help="Custom Faster Whisper Model") parser.add_argument('--trt_model_path', '-trt', type=str, default=None, help='Whisper TensorRT model path') parser.add_argument('--trt_multilingual', '-m', action="store_true", help='Boolean only for TensorRT model. True if multilingual.') parser.add_argument('--trt_py_session', action="store_true", help='Boolean only for TensorRT model. Use python session or cpp session, By default uses Cpp.') parser.add_argument('--omp_num_threads', '-omp', type=int, default=1, help="Number of threads to use for OpenMP") parser.add_argument('--no_single_model', '-nsm', action='store_true', help='Set this if every connection should instantiate its own model. Only relevant for custom model, passed using -trt or -fw.') args = parser.parse_args() if args.backend == "tensorrt": if args.trt_model_path is None: raise ValueError("Please Provide a valid tensorrt model path") if "OMP_NUM_THREADS" not in os.environ: os.environ["OMP_NUM_THREADS"] = str(args.omp_num_threads) from whisper_live.server import TranscriptionServer server = TranscriptionServer() server.run( "0.0.0.0", port=args.port, backend=args.backend, faster_whisper_custom_model_path=args.faster_whisper_custom_model_path, whisper_tensorrt_path=args.trt_model_path, trt_multilingual=args.trt_multilingual, trt_py_session=args.trt_py_session, single_model=not args.no_single_model, )