类 OrtEnvironment
- java.lang.Object
-
- ai.onnxruntime.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 关闭钩子关闭。
-
-
嵌套类摘要
嵌套类 修饰符和类型 类 描述 static class
OrtEnvironment.ThreadingOptions
控制环境中的全局线程池。
-
字段摘要
字段 修饰符和类型 字段 描述 static java.lang.String
DEFAULT_NAME
从 Java 构造的 ORT 环境的默认名称。
-
方法摘要
所有方法 静态方法 实例方法 具体方法 修饰符和类型 方法 描述 void
close()
自 ORT 1.11 起,OrtEnvironment 上的 close 方法是一个无操作(no-op)。OrtSession
createSession(byte[] modelArray)
使用默认的OrtSession.SessionOptions
、模型和默认内存分配器创建一个会话。OrtSession
createSession(byte[] modelArray, OrtSession.SessionOptions options)
使用指定的OrtSession.SessionOptions
、模型和默认内存分配器创建一个会话。OrtSession
createSession(java.lang.String modelPath)
使用默认的OrtSession.SessionOptions
、模型和默认内存分配器创建一个会话。OrtSession
createSession(java.lang.String modelPath, OrtSession.SessionOptions options)
使用指定的OrtSession.SessionOptions
、模型和默认内存分配器创建一个会话。OrtSession
createSession(java.nio.ByteBuffer modelBuffer)
使用默认的OrtSession.SessionOptions
、模型和默认内存分配器创建一个会话。OrtSession
createSession(java.nio.ByteBuffer modelBuffer, OrtSession.SessionOptions options)
使用指定的OrtSession.SessionOptions
、模型和默认内存分配器创建一个会话。OrtTrainingSession
createTrainingSession(java.lang.String checkpointPath, java.lang.String trainPath, java.lang.String evalPath, java.lang.String optimizerPath)
使用默认的OrtSession.SessionOptions
、模型和默认内存分配器创建一个训练会话。OrtTrainingSession
createTrainingSession(java.lang.String checkpointPath, java.lang.String trainPath, java.lang.String evalPath, java.lang.String optimizerPath, OrtSession.SessionOptions options)
使用指定的OrtSession.SessionOptions
、模型和默认内存分配器创建一个训练会话。static java.util.EnumSet<OrtProvider>
getAvailableProviders()
获取在此环境中可用的提供程序。static OrtEnvironment
getEnvironment()
获取 OrtEnvironment。static OrtEnvironment
getEnvironment(OrtLoggingLevel logLevel)
获取 OrtEnvironment。static OrtEnvironment
getEnvironment(OrtLoggingLevel loggingLevel, java.lang.String name)
获取 OrtEnvironment。static OrtEnvironment
getEnvironment(OrtLoggingLevel loggingLevel, java.lang.String name, OrtEnvironment.ThreadingOptions threadOptions)
使用指定的全局线程池选项创建 OrtEnvironment。static OrtEnvironment
getEnvironment(java.lang.String name)
获取 OrtEnvironment。java.lang.String
getVersion()
获取原生库版本字符串。boolean
isTrainingEnabled()
在此 ONNX Runtime 构建中是否启用了训练?void
setTelemetry(boolean sendTelemetry)
开启或关闭遥测功能。java.lang.String
toString()
-
-
-
字段详细信息
-
DEFAULT_NAME
public static final java.lang.String DEFAULT_NAME
从 Java 构造的 ORT 环境的默认名称。- 另请参阅
- 常量字段值
-
-
方法详细信息
-
getEnvironment
public static OrtEnvironment getEnvironment()
获取 OrtEnvironment。如果当前没有创建环境,则使用DEFAULT_NAME
和OrtLoggingLevel.ORT_LOGGING_LEVEL_WARNING
创建一个。- 返回
- OrtEnvironment 单例。
-
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.lang.String modelPath, OrtSession.SessionOptions options) throws OrtException
使用指定的OrtSession.SessionOptions
、模型和默认内存分配器创建一个会话。- 参数
modelPath
- 从磁盘加载模型的路径。options
- 会话选项。- 返回
- 一个加载了指定模型的
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, OrtSession.SessionOptions options) throws OrtException
使用指定的OrtSession.SessionOptions
、模型和默认内存分配器创建一个会话。- 参数
modelArray
- 表示 ONNX 模型的字节数组。options
- 会话选项。- 返回
- 一个加载了指定模型的
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
中
-
-