<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                ## 產品概述 圖靈機器人SDK IOS 版是運行在IOS系統上的語音識別、語義理解及語音合成一體化解決方案,基于該方案,開發者可以輕松構建功能完備、交互性強的語音識別和語義理解應用程序,而且如果只使用語義理解引擎也是可以的。 #### 概念解釋 (1)語音識別:Automatic Speech Recognition(ASR),也稱自動語音識別,其目標是將人類的語音中的詞匯內容轉換相應的文本。 (2)自然語言理解:Natural Language Understanding(NLU),俗稱人機對話,是人工智能的分支學科。本學科通過電子計算機模擬人的語言交際過程,從而使計算機能理解和運用人類社會的自然語言,實現人機之間的自然語言通信,進而代替人的部分腦力勞動,包括查詢資料、解答問題、摘錄文獻、匯編資料以及一切有關自然語言信息的加工處理。 #### 功能介紹 (1)語音識別:將語音識別成相應的文本。 (2)語義理解:將文本識別成領域相關的語義結果。 (3)語音合成 : 將文本轉化成語音讀出。 #### 應用場景 (1)產品需要流暢自然的中文聊天能力。我們提供精準的語義分析,可正確識別用戶意圖;支持多種上下文結構,滿足連續對話和多重對話的需要。 (2)產品需要自定義語義庫。支持可自定義的NLP智能知識庫系統,滿足用戶特殊語義處理需求。 (3)產品需要廣泛的知識庫。支持上百個使用場景功能,以及豐富的百科知識。 ## 使用說明 #### 適用環境 網絡:支持 NET、Wifi 網絡環境 #### 支持版本 系統:支持 iOS 5.0 及以上系統 #### 兼容性 架構:armv7、armv7s、arm64、i386、x86_64; 機型:iPhone 4+,iPad 2+和 iPod 5+; 硬件要求:需要有麥克風,用于支持語音錄入 #### 開發包說明 | 文件名稱 | 用途 | | --- | --- | | TRRTuringAPI.h | 圖靈SDK API的通用頭文件 | | TRRTuringAPIConfig.h | 圖靈SDK API的配置工具類頭文件 | | TRRTuringRequestManager.h | 圖靈SDK API的請求管理器頭文件 | | TRRVoiceRecognitionManager.h | 圖靈SDK的語音識別管理器頭文件 | | TRRSpeechSythesizer.h | 圖靈SDK的語音合成管理器頭文件 | | BDVoiceRecognitionClient.h | 百度語音識別功能頭文件 | | libTuringSDK.a | 圖靈SDK的靜態鏈接庫文件 | | Localizable.strings | 語音識別接口的字符本地化文件(中文簡體) | #### 集成指南 ###### 使用條件 (1)使用圖靈開放API SDK,需要注冊圖靈API開發者帳號,在個人中心的“我的機器人》機器人詳情》接入”頁獲取圖靈APIKEY。 (2)由于語音識別和語音合成接口底層會調用Baidu相關接口。因此使用圖靈IOS SDK,需 要開發者提前獲取Baidu開發者帳號,并創建應用,獲得AppID、APIKey、Secret Key。具體請參考http://yuyin.baidu.com/ ###### 框架依賴 以下9個是本SDK可能用到的Framework,部分依賴關系來自于BaiduSDK。 ~~~ 1. SystemConfiguration.framework 2. Foundation.framework 3. AVFoundation.framework 4. GLKit.framework 5. OpenGLES.framework 6. libz.1.dylib 7. Security.framework 8. CFNetwork.framework 9. CoreLocation.framework ~~~ ###### 第三方庫 IOS SDK依賴以下第三方庫(SDK包中已提供,請集成到應用工程中) 1.OpenUDID 2.JSONKit 3.TTTAttributedLabel 4.CoreAudioUtility(蘋果Audio庫) 對于采用ARC內存管理方式的工程,需要利用Non-ARC方式表姨OpenUDID和JSONKit(對相應文件添加CompilerFlags為-fno-objc-arc) ###### 其他集成準備事項 因為SDK包中采用Objective C++實現,因此需要保證工程中引用靜態庫頭文件的實現文件的擴展名必須為.mm。 ###### IOS9適配事項 (1)HTTP訪問 IOS9系統默認使用HTTPS網絡協議。由于百度和圖靈SDK目前都只采用HTTP協議,因 此基于圖靈SDK的應用程序也要允許HTTP訪問。 ~~~ <key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict> ~~~ (2)BITCODE問題由于底層的百度SDK編譯時采用ENABLE_BITCODE模式,因此基于圖靈SDK的應用程序也不能采用ENABLE_BITCODE模式 #### 語義理解 ###### 獲取語義理解設置對象 圖靈API使用需要APIKEY(注冊激活圖靈帳號獲取)和UserID(由SDK根據用戶信息生成)。TRRTuringAPIConfig類會協助用戶獲得這兩個屬性,用來完成圖靈API的設置 1. 利用圖靈API KEY初始化TRRTuringAPIConfig對象。 ~~~ - (instancetype)initWithAPIKey:(NSString *)apikey; ~~~ 2. 該初始化過程中,SDK將讀取本地是否緩存了UserID信息。用戶可以檢查 TRRTuringAPIConfig對象的UserID屬性,如UserID等于nil,用戶需要調用以下接口,聯網獲取UserID ~~~ - (void)request_UserIDwithSuccessBlock:(SuccessStringBlock)success failBlock:(FailBlock)failed; ~~~ 由于聯網獲取UserID是異步操作,用戶可以通過設置參數success和failed兩個Block, 來處理操作成功和失敗場景。 其中success Block的參數是成功獲得的UserID,failed Block的參數是API失敗類型,或相關信息字符串。> ###### 使用語義理解接口 1.首先要獲得TRRTuringAPIConfig對象,并用該對象完成語義分析接口的設置; ~~~ - (instancetype)initWithConfig:(TRRTuringAPIConfig *)config; ~~~ 2.調用語義分析接口 ~~~ - (void)request_OpenAPIWithInfo:(NSString *)info successBlock: (SuccessDictBlock)success failBlock:(FailBlock)failed; ~~~ 由于語義分析接口是異步操作,用戶可以通過設置參數success和failed兩個Block,來 處理操作成功和失敗場景。其中success Block的參數是語義分析接口返回的JSON數 據轉換成的Dictionary類型,failedBlock的參數是API失敗類型,或相關信息字符串。 代碼示例如下: ~~~ //初始化TRRTuringAPIConfig對象 TRRTuringAPIConfig *apiConfig = [[TRRTuringAPIConfig alloc]initWithAPIKey:@"TuringApiKey"]; TRRTuringRequestManager apiRequest = [[TRRTuringRequestManager alloc] initWithConfig:apiConfig]; //如userID==nil,需要調?用request_UserIDwithSuccessBlock:failBlock:接?口獲 取UserID if (apiConfig.userID == nil) { [apiConfig request_UserIDwithSuccessBlock:^(NSString *str) { //獲取UserID成功,繼續調用OpenAPI接? [apiRequest request_OpenAPIWithInfo:self.inputTextView.text successBlock:^(NSDictionary *dict) { //處理語義分析接口的返回結果 _outputTextView.text = [dict objectForKey:@"text"]; } failBlock:^(TRRAPIErrorType errorType, NSString *infoStr) { //處理語義分析失敗結果 _outputTextView.text = infoStr; }]; } failBlock:^(TRRAPIErrorType errorType, NSString *infoStr) { //處理獲取UserID失敗的場景 _outputTextView.text = infoStr; NSLog(@"erroresult = %@", infoStr); }]; } else { //如本地緩存了UserID,則直接調用OpenAPI接? [apiRequest request_OpenAPIWithInfo:self.inputTextView.text successBlock:^(NSDictionary *dict) { NSLog(@"apiResult =%@",dict); _outputTextView.text = [dict objectForKey:@"text"]; } failBlock:^(TRRAPIErrorType errorType, NSString *infoStr) { _outputTextView.text = infoStr; NSLog(@"errorinfo = %@", infoStr); }]; } ~~~ #### 語音合成 圖靈語音合成API底層會調用Baidu語音合成API,因此使用圖靈SDK時需要獲得Baidu語音合成API所需的APIKEY和SecretKey。 ###### 初始化語音合成對象 初始化語音合成對象,并設置APIKEY和SecretKey。 ~~~ - (instancetype)initWithAPIKey:(NSString *)apikey secretKey:(NSString*)secretkey; ~~~ ###### 設置語音合成參數 通過以下接口設置語音合成參數,參數Key-Value取值參考Baidu SDK中的 BDSSpeechSynthesizer.h文件。 ~~~ - (int)setParamForKey:(NSString *)key value:(NSString *)value; ~~~ 如果不進行參數設置,圖靈SDK將采用默認的參數進行語音合成,默認參數如下 (1)文本編碼,默認編碼類型為UTF8; (2)發音人,默認為女聲; (3)發音音量、語速、音調采取[0-9]的中間值5; (4)音頻格式,默認為amr; (5)音頻比特率,默認為15.85k比特率; ###### 控制語音合成操作 利用以下接口可以完成語音合成操作的開始、暫停、恢復、停止等操作。除停止操作外,其他 三個操作都會返回int類型的返回值,其錯誤值含義請參考BDSSpeechSynthesizer.h文件 ~~~ - (int)start:(NSString *)text; - (int)pause; - (int)resume; - (void)stop; ~~~ #### 語音識別 圖靈語音識別API底層會調用Baidu語音識別API,因此使用圖靈SDK時需要獲得Baidu語音識別API所需的APIKEY和Secret Key。 ###### 獲取語音識別單例句柄 語音識別結果為單例實現,在使用過程中可以調用以下接口獲得單例句柄: ~~~ + (TRRVoiceRecognitionManager *)sharedInstance; ~~~ ###### 獲取語音識別單例句柄 ~~~ - ( void)setApiKey:(NSString *)apiKey secretKey:(NSString *)secretKey; ~~~ ###### 控制語音識別操作 通過以下接口可以完成對語音識別操作的啟動、關閉和取消功能 ~~~ //啟動語音識別操作, 返回值參考BDVoiceRecognitionClient.h中 TVoiceRecognitionStartWorkResult - (int)startVoiceRecognition; //停止語音識別操作,代表手動觸發用戶發音結束事件 - (void)stopRecognize; //取消正在進行的語音識別操作 - (void)cancleRecognize; ~~~ ###### 通過Delegate接收語音識別結果 ~~~ 通過實現TRRVoiceRecognitionManagerDelegate協議,應用程序可以接收語音識別的結果信息,包括正確的結果信息和發生錯誤時的錯誤信息。通過實現TRRVoiceRecognitionManagerDelegate協議,開發人員可以捕獲識別引擎開始工作,檢測到用戶已說話,檢測到用戶已停止說話等事件。 @protocol TRRVoiceRecognitionManagerDelegate <MVoiceRecognitionClientDelegate> //接收語音識別結果的代理函數 - (void)onRecognitionResult:(NSString *)result; //接收語音識別錯誤信息的代理函數。 - (void)onRecognitionError:(NSString *)errStr; //已啟動語音識別的事件處理函數。 - (void)onStartRecognize; //檢測到用戶已說話的事件處理函數。 - (void)onSpeechStart; //檢測到用戶已停止說話的事件代理函數。 - (void)onSpeechEnd; @end 開發人員需要操作TRRVoiceRecognitionManager對象的屬性delegate來設置代理 @property (nonatomic, weak) id delegate; ~~~ ###### 設置語音識別參數 ~~~ //獲取采樣速率信息 - (int)getCurrentSampleRate; // 獲取當前音量級別 - (int)getCurrentDBLevelMeter; //當前識別類型數組,參見BDVoiceRecognitionClient.h @property (nonatomic, strong) NSArray *recognitionPropertyList; //設置城市信息 - (void)setCityID: (NSInteger)cityID; //進行功能設置,具體參數及取值參考BDVoiceRecognitionClient.h - (void)setConfig:(NSString *)key withFlag:(BOOL)flag; //設置識別語言,具體參數及取值參考BDVoiceRecognitionClient.h - (void)setLanguage:(int)language; //關閉標點 - (void)disablePuncs:(BOOL)flag; //設置是否需要對錄音數據進行端點檢測 - (void)setNeedVadFlag: (BOOL)flag; //設置是否需要對錄音數據進行壓縮 - (void)setNeedCompressFlag: (BOOL)flag; ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看