You need to enable JavaScript to run this app.
导航

模型下发接口说明(V2)

最近更新时间2023.04.27 15:15:28

首次发布时间2021.12.20 14:44:12

SDK的离线功能需要离线模型资源,我们提供了相关接口完成动态下载、更新模型数据以及检测模型是否可用。

初始化模型下发

模型下发能力依赖语音SDK的网络功能, 在初始化模型下发之前必须先完成环境依赖的相关配置。

/**
 * 语音资源管理器初始化
 * @param context 管理器配置依赖的上下文,传递ApplicationContext
 * @param deviceId 设备Id,用于定位具体设备的Issue,必需
 * @param appId AppId,语音服务为业务分配的id,必需
 * @param appVersion App版本,用于过滤低版本不支持的资源,必需
 * @param useOnlineModel 是否使用线上资源,无特殊需求设置为true,必需
 * @param speechModelDir 语音资源保存路径,必需;这个目录下最好不要存放其他文件,因为在模型升级时,有时会将这个目录清空。
 */
public boolean initResourceManager(Context context, String deviceId, String appId, String appVersion, boolean useOnlineModel, String speechModelDir);
检测模型是否已经下载

检查模型名对应的语音资源是否已经下载。

/**
 * 检查模型名对应的语音资源是否已经下载
 * @param modelName 模型名,用来区分不同的资源类型
 * @return 是否已经下载可用
 */
public boolean checkResourceDownload(String modelName);
检测模型是否需要更新

云端更新模型需要冷启动才能生效。

interface CheckResouceUpdateListener {
    /**
     * 检查语音资源是否需要更新.
     */
    void onCheckResult(boolean needUpdate);
}

/**
 * 检查模型名对应的语音资源是否有更新,冷启动生效
 * @param modelName 模型名,用来区分不同的资源类型
 * @param listener 更新检查监听回调
 */
public void checkResourceUpdate(String modelName, CheckResouceUpdateListener listener);

下载/更新至最新模型
interface FetchResourceListener {
    /**
     * 语音资源下载成功回调.
     */
    void onSuccess();

    /**
     * 语音资源下载失败回调.
     * @param errorMsg 异常信息.
     */
    void onFailed(String errorMsg);
}

/**
 * 用模型名拉取对应的语音资源
 * @param modelName 模型名,用来区分不同的资源类型
 * @param listener 资源下载监听回调
 */
public void fetchResourceByName(String modelName, FetchResourceListener listener);
获取模型路径

配置离线资源路径时,可以使用该接口的返回值。

/**
 * 获取模型名对应的资源路径
 * @param modelName 模型名
 * @return 资源路径
 */
public String getResourcePath(String modelName);