類 OrtSession

  • 所有已實現的介面
    java.lang.AutoCloseable

    public class OrtSession
    extends java.lang.Object
    implements java.lang.AutoCloseable
    封裝 ONNX 模型並允許執行推理呼叫。

    允許檢查模型的輸入和輸出節點。由 OrtEnvironment 生成。

    如果會話已關閉且呼叫了方法,則大多數例項方法會丟擲 IllegalStateException

    • 方法詳細資訊

      • getNumInputs

        public long getNumInputs()
        返回此模型預期的輸入數量。
        返回
        輸入數量。
      • getNumOutputs

        public long getNumOutputs()
        返回此模型預期的輸出數量。
        返回
        輸出數量。
      • getInputNames

        public java.util.Set<java.lang.String> getInputNames()
        返回輸入名稱。底層集合根據輸入ID編號排序。
        返回
        輸入名稱。
      • getOutputNames

        public java.util.Set<java.lang.String> getOutputNames()
        返回輸出名稱。底層集合根據輸出ID編號排序。
        返回
        輸出名稱。
      • getInputInfo

        public java.util.Map<java.lang.String,​NodeInfo> getInputInfo()
                                                                    throws OrtException
        返回輸入的詳細資訊物件,包括其名稱和型別。底層集合根據輸入ID編號排序。
        返回
        輸入資訊。
        丟擲
        OrtException - 如果原生程式碼出錯。
      • getOutputInfo

        public java.util.Map<java.lang.String,​NodeInfo> getOutputInfo()
                                                                     throws OrtException
        返回輸出的詳細資訊物件,包括其名稱和型別。底層集合根據輸出ID編號排序。
        返回
        輸出資訊。
        丟擲
        OrtException - 如果原生程式碼出錯。
      • run

        public OrtSession.Result run​(java.util.Map<java.lang.String,​? extends OnnxTensorLike> inputs)
                              throws OrtException
        對輸入饋送字典進行評分,返回所有推斷輸出的對映表。

        輸出根據其ID編號排序。

        引數
        inputs - 用於評分(執行推理)的輸入。
        返回
        推斷出的輸出。
        丟擲
        OrtException - 如果原生程式碼出錯、輸入名稱無效或輸入數量為零或過多。
      • run

        public OrtSession.Result run​(java.util.Map<java.lang.String,​? extends OnnxTensorLike> inputs,
                                     OrtSession.RunOptions runOptions)
                              throws OrtException
        對輸入饋送字典進行評分,返回所有推斷輸出的對映表。

        輸出根據其ID編號排序。

        引數
        inputs - 用於評分(執行推理)的輸入。
        runOptions - 用於控制此次執行的 RunOptions。
        返回
        推斷出的輸出。
        丟擲
        OrtException - 如果原生程式碼出錯、輸入名稱無效或輸入數量為零或過多。
      • run

        public OrtSession.Result run​(java.util.Map<java.lang.String,​? extends OnnxTensorLike> inputs,
                                     java.util.Set<java.lang.String> requestedOutputs)
                              throws OrtException
        對輸入饋送字典進行評分,返回請求的推斷輸出的對映表。

        輸出根據提供的集合遍歷順序排序。

        引數
        inputs - 用於評分(執行推理)的輸入。
        requestedOutputs - 請求的輸出。
        返回
        推斷出的輸出。
        丟擲
        OrtException - 如果原生程式碼出錯、輸入或輸出名稱無效或輸入或輸出數量為零或過多。
      • run

        public OrtSession.Result run​(java.util.Map<java.lang.String,​? extends OnnxTensorLike> inputs,
                                     java.util.Set<java.lang.String> requestedOutputs,
                                     OrtSession.RunOptions runOptions)
                              throws OrtException
        對輸入饋送字典進行評分,返回請求的推斷輸出的對映表。

        輸出根據提供的集合遍歷順序排序。

        引數
        inputs - 用於評分(執行推理)的輸入。
        requestedOutputs - 請求的輸出。
        runOptions - 用於控制此次執行的 RunOptions。
        返回
        推斷出的輸出。
        丟擲
        OrtException - 如果原生程式碼出錯、輸入或輸出名稱無效或輸入或輸出數量為零或過多。
      • run

        public OrtSession.Result run​(java.util.Map<java.lang.String,​? extends OnnxTensorLike> inputs,
                                     java.util.Map<java.lang.String,​? extends OnnxValue> pinnedOutputs)
                              throws OrtException
        對輸入饋送字典進行評分,返回已固定的輸出的對映表。

        輸出根據提供的對映表遍歷順序排序。

        注意:已固定的輸出不屬於 OrtSession.Result 物件,且在結果物件關閉時不會被關閉。

        引數
        inputs - 用於評分(執行推理)的輸入。
        pinnedOutputs - 使用者已分配的請求輸出。
        返回
        推斷出的輸出。
        丟擲
        OrtException - 如果原生程式碼出錯、輸入或輸出名稱無效或輸入或輸出數量為零或過多。
      • run

        public OrtSession.Result run​(java.util.Map<java.lang.String,​? extends OnnxTensorLike> inputs,
                                     java.util.Set<java.lang.String> requestedOutputs,
                                     java.util.Map<java.lang.String,​? extends OnnxValue> pinnedOutputs)
                              throws OrtException
        對輸入饋送字典進行評分,返回請求的和已固定的輸出的對映表。

        輸出根據提供的集合遍歷順序排序,已固定的輸出在前,然後是請求的輸出。如果同一個輸出名稱同時出現在請求的輸出和已固定的輸出中,則會丟擲 IllegalArgumentException

        注意:已固定的輸出不屬於 OrtSession.Result 物件,且在結果物件關閉時不會被關閉。

        引數
        inputs - 用於評分(執行推理)的輸入。
        requestedOutputs - ORT 將分配的請求輸出。
        pinnedOutputs - 使用者已分配的請求輸出。
        返回
        推斷出的輸出。
        丟擲
        OrtException - 如果原生程式碼出錯、輸入或輸出名稱無效或輸入或輸出數量為零或過多。
      • run

        public OrtSession.Result run​(java.util.Map<java.lang.String,​? extends OnnxTensorLike> inputs,
                                     java.util.Set<java.lang.String> requestedOutputs,
                                     java.util.Map<java.lang.String,​? extends OnnxValue> pinnedOutputs,
                                     OrtSession.RunOptions runOptions)
                              throws OrtException
        對輸入饋送字典進行評分,返回請求的和已固定的輸出的對映表。

        輸出根據提供的集合遍歷順序排序,已固定的輸出在前,然後是請求的輸出。如果同一個輸出名稱同時出現在請求的輸出和已固定的輸出中,則會丟擲 IllegalArgumentException

        注意:已固定的輸出不屬於 OrtSession.Result 物件,且在結果物件關閉時不會被關閉。

        引數
        inputs - 用於評分(執行推理)的輸入。
        requestedOutputs - ORT 將分配的請求輸出。
        pinnedOutputs - 使用者已分配的請求輸出。
        runOptions - 用於控制此次執行的 RunOptions。
        返回
        推斷出的輸出。
        丟擲
        OrtException - 如果原生程式碼出錯、輸入或輸出名稱無效或輸入或輸出數量為零或過多。
      • getProfilingStartTimeInNs

        public long getProfilingStartTimeInNs()
                                       throws OrtException
        返回效能分析開始時的納秒級時間戳。
        返回
        效能分析開始時的納秒級時間。
        丟擲
        OrtException - 如果原生呼叫失敗。
      • endProfiling

        public java.lang.String endProfiling()
                                      throws OrtException
        結束效能分析會話並返回分析器的輸出。

        應在使用 OrtSession.SessionOptions 構造此 Session 時啟用效能分析。

        返回
        效能分析輸出。
        丟擲
        OrtException - 如果原生呼叫失敗。
      • toString

        public java.lang.String toString()
        覆蓋
        覆蓋 類 java.lang.Object 中的 toString
      • close

        public void close()
                   throws OrtException
        關閉會話,釋放其資源。
        指定者
        close 由介面 java.lang.AutoCloseable 指定
        丟擲
        OrtException - 如果關閉失敗。