1# IPreparedModel 2 3 4## 概述 5 6定义模型编译后的对象,包含编译后模型导出、模型推理接口。 7 8**起始版本:** 3.2 9 10**相关模块:**[NNRt](_n_n_rt_v10.md) 11 12 13## 汇总 14 15 16### Public 成员函数 17 18| 名称 | 描述 | 19| -------- | -------- | 20| [ExportModelCache](#exportmodelcache) ([out] struct [SharedBuffer](_shared_buffer_v10.md)[] modelCache) | 导出模型缓存。 | 21| [Run](#run) ([in] struct [IOTensor](_i_o_tensor_v10.md)[] inputs, [in] struct [IOTensor](_i_o_tensor_v10.md)[] outputs, [out] int[][] outputsDims, [out] boolean[] isOutputBufferEnough) | 推理模型 | 22 23 24## 成员函数说明 25 26 27### ExportModelCache() 28 29``` 30IPreparedModel::ExportModelCache ([out] struct SharedBuffer[] modelCache) 31``` 32**描述** 33 34导出模型缓存。 35 36**起始版本:** 3.2 37 38**参数:** 39 40| 名称 | 描述 | 41| -------- | -------- | 42| modelCache | 模型缓存数组,元素顺序与导出时元素顺序一致,SharedBuffer定义请查看[SharedBuffer](_shared_buffer_v10.md)。 | 43 44**返回:** 45 46返回0表示成功 47 48返回负数表示失败 49 50 51### Run() 52 53``` 54IPreparedModel::Run ([in] struct IOTensor[] inputs, [in] struct IOTensor[] outputs, [out] int outputsDims[][], [out] boolean[] isOutputBufferEnough ) 55``` 56**描述** 57 58推理模型 59 60**起始版本:** 3.2 61 62**参数:** 63 64| 名称 | 描述 | 65| -------- | -------- | 66| inputs | 模型推理的输入数据,输入的顺序与模型中定义的输入顺序一致,输入数据类型参考IOTensor定义[IOTensor](_i_o_tensor_v10.md)。 | 67| outputs | 模型推理的输出数据,推理完后需要往outputs的sharedBuffer中写入输出数据,IOTensor定义请查看[IOTensor](_i_o_tensor_v10.md)。 | 68| outputsDims | 模型推理输出数据的形状,输出顺序与outputs顺序一一对应。 | 69| isOutputBufferEnough | 模型推理输出数据的SharedBuffer空间是否足够,足够的话返回true,不足则返回false,输出顺序与outputs顺序一一对应。 | 70 71**返回:** 72 73返回0表示成功 74 75返回负数表示失败 76