public static Builder of(TensorType type, DimensionSizes sizes, float[] values) {
            validate(type, sizes);
            validateSizes(sizes, values.length);
            return switch (type.valueType()) {
                case DOUBLE -> new IndexedDoubleTensor.BoundDoubleBuilder(type, sizes).fill(values);
                case FLOAT -> new IndexedFloatTensor.BoundFloatBuilder(type, sizes, values);
                case BFLOAT16 -> new IndexedFloatTensor.BoundFloatBuilder(type, sizes, values);
                case INT8 -> new IndexedFloatTensor.BoundFloatBuilder(type, sizes, values);
                default -> throw new IllegalStateException("Unexpected value type " + type.valueType());
            };
        }
Creates a builder initialized with the given values

@param type the type of the tensor to build
@param values the initial values of the tensor in the <i>standard value order</i>.
              This <b>transfers ownership</b> of the value array - it
              must not be further mutated by the caller
vespajlib/src/main/java/com/yahoo/tensor/IndexedTensor.java