private void validateModels() {
        Map<String, TensorType> inputs = encoder.getInputInfo();
        validateName(inputs, encoderInputIdsName, "input");
        validateName(inputs, encoderAttentionMaskName, "input");

        Map<String, TensorType> outputs = encoder.getOutputInfo();
        validateName(outputs, encoderOutputName, "output");

        inputs = decoder.getInputInfo();
        validateName(inputs, decoderInputIdsName, "input");
        validateName(inputs, decoderAttentionMaskName, "input");
        validateName(inputs, decoderEncoderHiddenStateName, "input");

        outputs = decoder.getOutputInfo();
        validateName(outputs, decoderOutputName, "output");
    }
Given a tensor 'logits' with 3 dimensions: batch, sequence, and vocabulary
find the value in the vocabulary dimension with highest score for the given
token in the sequence
model-integration/src/main/java/ai/vespa/llm/clients/OnnxEncoderDecoder.java