程序包 ai.onnxruntime
类 OrtModelCompilationOptions
- java.lang.Object
-
- ai.onnxruntime.OrtModelCompilationOptions
-
- 所有已实现的接口
java.lang.AutoCloseable
public final class OrtModelCompilationOptions extends java.lang.Object implements java.lang.AutoCloseable用于编译 ONNX 模型的配置选项。
-
-
嵌套类概要
嵌套类 限定符和类型 类 描述 static classOrtModelCompilationOptions.OrtCompileApiFlags表示编译模型时所用选项的标志。
-
方法概要
所有方法 静态方法 实例方法 具体方法 限定符和类型 方法 描述 voidclose()voidcompileModel()使用此 OrtModelCompilationOptions 实例中描述的配置来编译 ONNX 模型。static OrtModelCompilationOptionscreateFromSessionOptions(OrtEnvironment env, OrtSession.SessionOptions sessionOptions)根据现有的 SessionOptions 创建模型编译选项。voidsetCompilationFlags(java.util.EnumSet<OrtModelCompilationOptions.OrtCompileApiFlags> flags)设置指定的编译标志。voidsetEpContextEmbedMode(boolean embedEpContext)启用或禁用将 EPContext 二进制数据嵌入到 EPContext 节点的 ep_cache_context 属性中。voidsetInputModelFromBuffer(java.nio.ByteBuffer inputModelBuffer)使用提供的缓冲区作为输入 ONNX 模型。voidsetInputModelPath(java.lang.String inputModelPath)设置输入 ONNX 模型的文件路径。voidsetOutputExternalInitializersPath(java.lang.String outputExternalInitializersPath, long sizeThreshold)(可选)设置用于存储编译后的 ONNX 模型初始值设定项(initializers)的文件。voidsetOutputModelPath(java.lang.String outputModelPath)设置输出的编译后 ONNX 模型的文件路径。
-
-
-
方法详细信息
-
createFromSessionOptions
public static OrtModelCompilationOptions createFromSessionOptions(OrtEnvironment env, OrtSession.SessionOptions sessionOptions) throws OrtException
根据现有的 SessionOptions 创建模型编译选项。OrtModelCompilationOptions 对象包含用于生成编译后的 ONNX 模型的设置。OrtSessionOptions 对象包含模型将据此进行编译的执行提供程序(execution providers)。
- 参数
env- OrtEnvironment 环境。sessionOptions- 要使用的会话选项。- 返回值
- 已构建的模型编译选项实例。
- 抛出
OrtException- 如果构建失败。
-
close
public void close()
- 指定者
- 接口
java.lang.AutoCloseable中的close
-
setInputModelPath
public void setInputModelPath(java.lang.String inputModelPath) throws OrtException设置输入 ONNX 模型的文件路径。输入模型的位置必须通过此方法设置为磁盘路径,或者通过
setInputModelFromBuffer(java.nio.ByteBuffer)提供内存引用来设置。- 参数
inputModelPath- 磁盘上模型的路径。- 抛出
OrtException- 如果设置失败。
-
setInputModelFromBuffer
public void setInputModelFromBuffer(java.nio.ByteBuffer inputModelBuffer) throws OrtException使用提供的缓冲区作为输入 ONNX 模型。输入模型的位置必须通过此方法设置为内存引用,或者通过
setInputModelPath(String)提供磁盘路径来设置。如果
ByteBuffer不是直接缓冲区(direct buffer),它将被复制到直接缓冲区中。无论哪种情况,此对象都会持有该缓冲区的引用,以防止其被垃圾回收(GC)。- 参数
inputModelBuffer- 缓冲区。- 抛出
OrtException- 如果无法设置缓冲区。
-
setOutputModelPath
public void setOutputModelPath(java.lang.String outputModelPath) throws OrtException设置输出的编译后 ONNX 模型的文件路径。如果未设置,它将在文件名后附加 `_ctx`,例如,my_model.onnx 将变为 my_model_ctx.onnx。
- 参数
outputModelPath- 输出模型路径。- 抛出
OrtException- 如果无法设置路径。
-
setOutputExternalInitializersPath
public void setOutputExternalInitializersPath(java.lang.String outputExternalInitializersPath, long sizeThreshold) throws OrtException(可选)设置用于存储编译后的 ONNX 模型初始值设定项的文件。如果未设置,则初始值设定项存储在模型内部。仅未编译节点的初始值设定项存储在外部初始值设定项文件中。已编译节点将其初始值设定项数据包含在 EPContext 节点的 `ep_cache_context` 属性中。
- 参数
outputExternalInitializersPath- 文件路径。sizeThreshold- 大于此阈值的初始值设定项将存储在文件中。- 抛出
OrtException- 如果无法设置路径。- 另请参阅
setEpContextEmbedMode(boolean)
-
setEpContextEmbedMode
public void setEpContextEmbedMode(boolean embedEpContext) throws OrtException启用或禁用将 EPContext 二进制数据嵌入到 EPContext 节点的 ep_cache_context 属性中。默认值为 false。启用后,EPContext 节点的 `ep_cache_context` 属性将存储上下文二进制数据,其中可能包括已编译子图的权重。禁用时,EPContext 节点的 `ep_cache_context` 属性将包含包含上下文二进制数据的文件路径。该路径由创建 EPContext 节点的执行提供程序设置。
有关更多详细信息,请参阅 EPContext 设计文档。
- 参数
embedEpContext- 如果为 true,则将 EPContext 二进制数据嵌入到 EPContext 节点的 ep_cache_context 属性中。- 抛出
OrtException- 如果设置操作失败。
-
setCompilationFlags
public void setCompilationFlags(java.util.EnumSet<OrtModelCompilationOptions.OrtCompileApiFlags> flags) throws OrtException
设置指定的编译标志。- 参数
flags- 编译标志。- 抛出
OrtException- 如果设置操作失败。
-
compileModel
public void compileModel() throws OrtException使用此 OrtModelCompilationOptions 实例中描述的配置来编译 ONNX 模型。- 抛出
OrtException- 如果编译失败。
-
-