You're reading the documentation for a development version.
For the latest stable release version, please have a look at master.

Function app

Function Documentation

int app(app_ctx_t *model, void **output, buffer_t *input)

应用程序核心处理函数(V2.0 API),负责协调预处理、模型推理和后处理流程

该函数是模型应用的主入口,接收输入数据后,按以下流程处理:

  1. 参数合法性校验,若存在空指针则返回错误

  2. 若配置了预处理函数,调用预处理对输入数据进行处理(如归一化、格式转换等)

  3. 调用模型推理函数(infer)执行神经网络计算

  4. 若配置了后处理函数,调用后处理对推理结果进行解析(如格式转换、结果筛选等); 若未配置后处理,则直接将推理原始输出作为结果返回

  5. 全程通过日志函数记录关键流程节点及调试信息

参数:
  • model -- [in] 应用上下文指针,包含模型句柄、预处理/后处理函数、临时缓冲区等信息

  • output -- [out] 输出结果指针的地址,用于存储处理完成的结果(具体类型由后处理定义)

  • input -- [in] 输入数据缓冲区指针,包含原始输入数据及相关信息

返回:

int 处理状态码

  • 0:处理成功

  • 负数:处理失败