Class OnnxSequence

java.lang.Object
ai.onnxruntime.OnnxSequence
All Implemented Interfaces:
OnnxValue, AutoCloseable

public class OnnxSequence extends Object implements OnnxValue
A sequence of OnnxValues all of the same type.

Supports the types mentioned in "onnxruntime_c_api.h", currently

  • OnnxTensor<String>
  • OnnxTensor<Long>
  • OnnxTensor<Float>
  • OnnxTensor<Double>
  • OnnxMap<String,Float>
  • OnnxMap<Long,Float>
  • Method Details

    • getType

      public OnnxValue.OnnxValueType getType()
      Description copied from interface: OnnxValue
      Gets the type of this OnnxValue.
      Specified by:
      getType in interface OnnxValue
      Returns:
      The value type.
    • getValue

      public List<? extends OnnxValue> getValue() throws OrtException
      Extracts a Java list of the OnnxValues which can then be further unwrapped.

      Returns either a List of either OnnxTensor or OnnxMap.

      Note unlike the other OnnxValue.getValue() methods, this does not copy the values themselves into the Java heap, it merely exposes them as OnnxValue instances, allowing users to use the faster copy methods available for OnnxTensor. This also means that those values need to be closed separately from this instance, and are not closed by close() on this object.

      Specified by:
      getValue in interface OnnxValue
      Returns:
      A Java list containing the values.
      Throws:
      OrtException - If the runtime failed to read an element.
    • getInfo

      public SequenceInfo getInfo()
      Description copied from interface: OnnxValue
      Gets the type info object associated with this OnnxValue.
      Specified by:
      getInfo in interface OnnxValue
      Returns:
      The type information.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • isClosed

      public boolean isClosed()
      Description copied from interface: OnnxValue
      Checks if this value is closed (i.e., the native object has been released).
      Specified by:
      isClosed in interface OnnxValue
      Returns:
      True if the value is closed and the native object has been released.
    • close

      public void close()
      Closes this sequence, releasing the native memory backing it and it's elements.
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface OnnxValue
    • checkClosed

      protected void checkClosed()
      Checks if the OnnxValue is closed, if so throws IllegalStateException.