个性化识别适用于语音听写。支持上传联系人和上传词表功能,上传联系人可以增加通讯录联系人的识别率,上传词表可以增加词表的识别率。
1.1. 上传联系人
上传联系人,可以提升联系人的识别率。目前IFlyContact类已从SDK中开源到demo->tools->contact中,具体使用示例如下所示:
//创建上传对象
_uploader = [[IFlyDataUploader alloc] init];
//创建联系人对象
IFlyContact *iFlyContact = [[IFlyContact alloc] init];
NSString *contactList = [iFlyContact contact]; //获取联系人列表
//设置上传参数
[_uploader setParameter:@"uup" forKey:@"sub"];
[_uploader setParameter:@"contact" forKey:@"dtt"];
//启动上传
[_uploader uploadDataWithCompletionHandler:^(NSString *grammerID, IFlySpeechError *error){
//
} name:@"contact" data: contactList];
1.2. 上传用户词表
上传的用户词表在语音听写中优先识别。使用示例如下所示:
//创建上传对象
_uploader = [[IFlyDataUploader alloc] init];
//用户词表
#define USERWORDS @"{\"userword\":[{\"name\":\"iflytek\",\"words\":[\"德国盐猪手\",\"1912酒吧街\",\"清蒸鲈鱼\",\"挪威三文鱼\",\"黄埔军校\",\"横沙牌坊\",\"科大讯飞\"]}]}"
IFlyUserWords *iFlyUserWords = [[IFlyUserWords alloc] initWithJson:USERWORDS ];
//设置上传参数
[_uploader setParameter:@"uup" forKey:@"sub"];
[_uploader setParameter:@"userword" forKey:@"dtt"];
//启动上传(请注意name参数的不同)
[_uploader uploadDataWithCompletionHandler:^(NSString * grammerID, IFlySpeechError *error){
//
}name: @"userwords" data:[iFlyUserWords toString]];