NNiceVois

Model formats

RVC .pth to .onnx: what conversion actually does

ONNX is a portable format for running a trained model outside the framework it was built in. Converting an RVC model to it is a deployment step, not an upgrade — and for most people it is unnecessary.

NiceVois does not export ONNX. Training here returns a .pth, a matching .index, and a ZIP. If you need ONNX, the .pth is the input a separate converter takes, so nothing here blocks you — but you will run that step elsewhere.

What each format is for

FormatWhat it isUse it when
.pthPyTorch weights, the native RVC training outputNormal use in any RVC interface
.onnxA portable exported graph for cross-runtime inferenceEmbedding in an app or runtime without PyTorch
.indexThe retrieval feature indexAlongside either of the above, where supported

When conversion is worth it

When it is not

If you are making covers, converting vocals, or using any standard RVC interface, you do not need ONNX. Those tools load the .pth directly, and converting first adds a step that can only lose information.

What you give up

An ONNX export is a frozen inference graph. It is not a training checkpoint, so you cannot resume or fine-tune from it, and support for the retrieval index varies by runtime — some ONNX paths drop index retrieval entirely, which changes how the output sounds. Export also fixes certain assumptions at conversion time, so a graph exported for one runtime is not guaranteed to behave identically in another.

Keep the original either way. Conversion is one-directional in practice: you cannot reconstruct a training-ready .pth from an .onnx. Archive the .pth and .index pair before exporting anything.

If you decide to convert

Conversion is done with a separate tool — several RVC distributions include an export option, and standalone converters exist. Whichever you use, verify the result by converting the same short audio clip with both the original .pth and the exported .onnx and comparing them. If the exported version sounds noticeably flatter, index retrieval is the usual reason.

Related

.pth vs .index explains the two files a training run produces, and the after-training guide covers loading them in common interfaces.

Need the .pth in the first place?

Train from your permitted audio and download the model, index, and complete ZIP.

Start Training