類 OrtEnvironment

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

    public final class OrtEnvironment
    extends java.lang.Object
    implements java.lang.AutoCloseable
    ONNX Runtime 系統的主機物件。可以建立用於封裝特定模型的 OrtSession 例項。此物件應在建立任何其他 ONNX Runtime 類之前例項化。

    在一個 JVM 生命週期內,最多隻能建立一個 OrtEnvironment 物件。為了與 1.10 及更早版本向後相容,此類像以前一樣實現了 AutoCloseable 介面,但 close 方法是一個無操作(no-op)。環境透過在構建時註冊的 JVM 關閉鉤子關閉。

    • 欄位詳細資訊

      • DEFAULT_NAME

        public static final java.lang.String DEFAULT_NAME
        從 Java 構造的 ORT 環境的預設名稱。
        另請參閱
        常量欄位值
    • 方法詳細資訊

      • getEnvironment

        public static OrtEnvironment getEnvironment​(java.lang.String name)
        獲取 OrtEnvironment。如果當前沒有建立環境,則使用提供的名稱和 OrtLoggingLevel.ORT_LOGGING_LEVEL_WARNING 建立一個。

        如果環境已存在,則返回現有環境,並且如果名稱或日誌級別與請求的不同,則記錄警告。

        引數
        name - 環境的日誌記錄 ID。
        返回
        OrtEnvironment 單例。
      • getEnvironment

        public static OrtEnvironment getEnvironment​(OrtLoggingLevel logLevel)
        獲取 OrtEnvironment。如果當前沒有建立環境,則使用 DEFAULT_NAME 和提供的日誌記錄級別建立一個。

        如果環境已存在,則返回現有環境,並且如果名稱或日誌級別與請求的不同,則記錄警告。

        引數
        logLevel - 要使用的日誌記錄級別。
        返回
        OrtEnvironment 單例。
      • getEnvironment

        public static OrtEnvironment getEnvironment​(OrtLoggingLevel loggingLevel,
                                                    java.lang.String name)
        獲取 OrtEnvironment。如果當前沒有建立環境,則使用提供的名稱和日誌記錄級別建立一個。如果已存在不同名稱的環境,則返回該現有環境並記錄警告。
        引數
        loggingLevel - 要使用的日誌記錄級別。
        name - 日誌 ID。
        返回
        OrtEnvironment 單例。
      • getEnvironment

        public static OrtEnvironment getEnvironment​(OrtLoggingLevel loggingLevel,
                                                    java.lang.String name,
                                                    OrtEnvironment.ThreadingOptions threadOptions)
        使用指定的全域性執行緒池選項建立 OrtEnvironment。請注意,與其他 getEnvironment 方法不同,如果已存在 OrtEnvironment,則此呼叫會丟擲 IllegalStateException,因為我們無法保證環境具有適當的執行緒池配置。
        引數
        loggingLevel - 要使用的日誌記錄級別。
        name - 日誌 ID。
        threadOptions - 全域性執行緒池選項。
        返回
        OrtEnvironment 單例。
      • createSession

        public OrtSession createSession​(java.lang.String modelPath)
                                 throws OrtException
        使用預設的 OrtSession.SessionOptions、模型和預設記憶體分配器建立一個會話。
        引數
        modelPath - 從磁碟載入模型的路徑。
        返回
        一個載入了指定模型的 OrtSession 例項。
        丟擲
        OrtException - 如果模型載入失敗、不相容或引發錯誤。
      • createSession

        public OrtSession createSession​(java.nio.ByteBuffer modelBuffer,
                                        OrtSession.SessionOptions options)
                                 throws OrtException
        使用指定的 OrtSession.SessionOptions、模型和預設記憶體分配器建立一個會話。
        引數
        modelBuffer - 表示 ONNX 模型的位元組緩衝區。必須是直接位元組緩衝區。
        options - 會話選項。
        返回
        一個載入了指定模型的 OrtSession 例項。
        丟擲
        OrtException - 如果模型解析失敗、不相容或引發錯誤。
      • createSession

        public OrtSession createSession​(java.nio.ByteBuffer modelBuffer)
                                 throws OrtException
        使用預設的 OrtSession.SessionOptions、模型和預設記憶體分配器建立一個會話。
        引數
        modelBuffer - 表示 ONNX 模型的位元組緩衝區。必須是直接位元組緩衝區。
        返回
        一個載入了指定模型的 OrtSession 例項。
        丟擲
        OrtException - 如果模型解析失敗、不相容或引發錯誤。
      • createSession

        public OrtSession createSession​(byte[] modelArray)
                                 throws OrtException
        使用預設的 OrtSession.SessionOptions、模型和預設記憶體分配器建立一個會話。
        引數
        modelArray - 表示 ONNX 模型的位元組陣列。
        返回
        一個載入了指定模型的 OrtSession 例項。
        丟擲
        OrtException - 如果模型解析失敗、不相容或引發錯誤。
      • createTrainingSession

        public OrtTrainingSession createTrainingSession​(java.lang.String checkpointPath,
                                                        java.lang.String trainPath,
                                                        java.lang.String evalPath,
                                                        java.lang.String optimizerPath)
                                                 throws OrtException
        使用預設的 OrtSession.SessionOptions、模型和預設記憶體分配器建立一個訓練會話。
        引數
        checkpointPath - 檢查點資料夾的路徑。
        trainPath - 訓練模型的路徑。
        evalPath - 評估模型的路徑。Null 表示沒有評估模型。
        optimizerPath - 最佳化器模型的路徑。Null 表示沒有最佳化器模型。
        返回
        一個載入了指定模型的 OrtTrainingSession 例項。
        丟擲
        OrtException - 如果模型載入失敗、不相容或引發錯誤。
      • createTrainingSession

        public OrtTrainingSession createTrainingSession​(java.lang.String checkpointPath,
                                                        java.lang.String trainPath,
                                                        java.lang.String evalPath,
                                                        java.lang.String optimizerPath,
                                                        OrtSession.SessionOptions options)
                                                 throws OrtException
        使用指定的 OrtSession.SessionOptions、模型和預設記憶體分配器建立一個訓練會話。
        引數
        checkpointPath - 檢查點資料夾的路徑。
        trainPath - 訓練模型的路徑。
        evalPath - 評估模型的路徑。Null 表示沒有評估模型。
        optimizerPath - 最佳化器模型的路徑。Null 表示沒有最佳化器模型。
        options - 會話選項。
        返回
        一個載入了指定模型的 OrtTrainingSession 例項。
        丟擲
        OrtException - 如果模型載入失敗、不相容或引發錯誤。
      • isTrainingEnabled

        public boolean isTrainingEnabled()
        在此 ONNX Runtime 構建中是否啟用了訓練?
        返回
        如果啟用訓練,則為 True。
      • setTelemetry

        public void setTelemetry​(boolean sendTelemetry)
                          throws OrtException
        開啟或關閉遙測功能。
        引數
        sendTelemetry - 如果為 true,則傳送 ONNX Runtime 使用情況的遙測資料。
        丟擲
        OrtException - 如果呼叫失敗。
      • getVersion

        public java.lang.String getVersion()
        獲取原生庫版本字串。
        返回
        版本字串。
      • toString

        public java.lang.String toString()
        覆蓋
        toString 在類 java.lang.Object
      • getAvailableProviders

        public static java.util.EnumSet<OrtProvider> getAvailableProviders()
        獲取在此環境中可用的提供程式。
        返回
        可用執行提供程式的列舉集合。
      • close

        public void close()
        自 ORT 1.11 起,OrtEnvironment 上的 close 方法是一個無操作(no-op)。
        指定者
        close 在介面 java.lang.AutoCloseable