跳到正文

FunASR Runtime (C++ Source)

onnx-platform/fanasr-runtime 是 FunASR ONNX Runtime 的底层 C++ 源码工程。包含 Kaldi Fbank 特征提取、OpenFST、Yaml-cpp、Jieba 分词以及与 ONNX Runtime 的算子对接。


1. 架构说明

  • 预编译 SDK 关系:正常开发与部署时,上层服务(fanasr-asr-offline-serverfanasr-asr-online-server)直接链接由本项目生成的预编译 SDK:onnx-platform/fanasr-onnx,享受秒级构建;
  • 降级编译模式:若在新平台或未提供 SDK 的环境下,上层服务的 CMakeLists 会自动探测并调用本项目源码树进行全量构建。

2. 核心源码结构

  • include/: 对外导出 API 头文件(funasrruntime.h, model.h, vad-model.h, punc-model.h, tpass-stream.h, com-define.h);
  • src/: 核心模型与算法实现(paraformer.cpp, fsmn-vad.cpp, ct-transformer.cpp, tpass-stream.cpp, audio.cpp, funasrruntime.cpp);
  • third_party/: 依赖库源码(kaldi/, openfst/, yaml-cpp/, glog/, gflags/)。

文档与代码在同一仓库维护,现有 Markdown 是唯一内容源。