JP2009520224A - 音声アプリケーションを処理する方法、サーバー、クライアント装置、コンピュータ読み取り可能な記録媒体(マークアップを介する音声アプリケーションの処理の共有) - Google Patents

音声アプリケーションを処理する方法、サーバー、クライアント装置、コンピュータ読み取り可能な記録媒体(マークアップを介する音声アプリケーションの処理の共有) Download PDF

Info

Publication number
JP2009520224A
JP2009520224A JP2008546387A JP2008546387A JP2009520224A JP 2009520224 A JP2009520224 A JP 2009520224A JP 2008546387 A JP2008546387 A JP 2008546387A JP 2008546387 A JP2008546387 A JP 2008546387A JP 2009520224 A JP2009520224 A JP 2009520224A
Authority
JP
Japan
Prior art keywords
client
server
client device
voice
instructions
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008546387A
Other languages
English (en)
Other versions
JP5179375B2 (ja
Inventor
ナナバチ・アミット・アニル
ラジプート・ニテンドラ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2009520224A publication Critical patent/JP2009520224A/ja
Application granted granted Critical
Publication of JP5179375B2 publication Critical patent/JP5179375B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/01Assessment or evaluation of speech recognition systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)

Abstract

【課題】 所定の計算能力を示すデータを有するクライアント装置(10)及びサーバー(20)を備え音声アプリケーションを処理するシステムを提供する。
【解決手段】 システムは、ユーザとシステムとの間の音声ベースのダイアログにおいて行われるべきタスクを指定する複数のスクリプトをアクセスする。スクリプトは、ブラウザ・レベルで解釈されることできる。サーバー(20)は、上記データに基づいてクライアント装置(10)に対する適切なスクリプトを選択する。インタプリタ・レイヤは、選択されたスクリプトを処理して、ダイアログのためにクライアント装置(10)で行われるべき第1組の命令及びサーバー(20)で行われるべき第1組の命令を決定する。かくして、計算は、クライアント装置の計算能力に基づいてクライアント装置及びサーバーのあいだで共有される。
【選択図】 図1

Description

本発明は、クライアント−サーバー環境における音声アプリケーションの処理に関する。
近年、インターネットの幅広い使用から明らかなように、電子的に利用可能な情報及びサービスが著しく成長してきた。代表的には、ユーザーは、例えばキーボー若しくはタッチ・パネルを使用し、そしてビデオ表示装置上の結果を見ることのように、情報をタイプすることによりシステムに対してインタラクトする。しかしながら、ユーザーが言葉で情報を入力できる対話システムが、次第に利用可能となってきている。このシステムの出力は、聴覚的にユーザーに与えられることができる。このような対話システムにより、ユーザーは、動いている状態で手に他の仕事をさせながら情報及びサービスを容易に得ることができる。
対話システムは、ユーザーの言うことを理解するための音声認識及び情報を人間に似た声にする音声合成を必要とする。一般的には、このようなシステムは、クライアントの装置が例えば携帯端末のような電話装置である電話の構造的基盤において働く。初期には、このような対話システムは、対応能力のないダム型のクライアント装置を用いて働き、従って、全ての音声処理(認識及び合成)は、ダム型のクライアントと通信するサーバーにおいて行われていた。しかしながら、携帯型のクライアントの処理能力の増大により、音声処理(認識及び合成の両方)をクライアントの側で行うことが可能になった。
幾つかの対話システムにおいては、音声認識の一部がクライアント装置において処理される。用語「分散型音声認識」は、アプリケーションがクライアント装置でのローカルな音声処理をネットワークベースの音声サービスへのリモート・アクセスに組み合わせることができるシステムを指すために使用される。例えば、ノイズ・リダクション(ノイズ・カット)のような信号処理は、クライアント装置で行われることができ、次いで、クライアント装置は処理されたデータを回路網ベースの音声サービスに送る。次いで、音声サービスは、受け取った信号を処理してユーザーの要求を調べ、そして音声出力を使用してユーザーに応答する。
クライアント側の処理能力を使用する他の周知な技術は、音声合成の一部がクライアント側で行われる組込型の連接テキストの音声合成(eCTTS)である。音声セグメントは、圧縮されたフィーチャ・ベクトルとして維持され、これが音声に戻される。
他の周知な技術では、対話システムが完全にクライアント側にあり、そして全体的な音声認識プロセスがローカルに行われる。一般にクライアントの処理容量は限られているので、非常に小規模な対話システムだけがこのような装置で実施されることができる。
現状の技術があるにもかかわらず、音声アプリケーションを処理するための更に効率的で優れたシステムが絶えず必要とされている。
ダイアログに関する計算又は処理が、クライアントの計算能力又は処理能力に基づいてクライアントとサーバーとの間で共有される融通性のあるメカニズムが説明される。分散は、マークアップ・レベルで行われるのが好ましく、そしてこの方法は、クライアント装置により実行され得るスクリプトをイネーブルする。
本発明の第1の態様に従うと、クライアント−サーバー計算システム内のサーバーで音声アプリケーションを処理する方法が提供される。クライアントの計算又は処理能力を示すデータが受け取られる。この受け取られたデータに基づいて、ユーザー及び計算システムの間の音声ベース・ダイアログにおいてクライアントにより行われるべきタスクを指定する1組の命令が選択される。この1組の命令は、実行のためにクライアントに与えられる。
本発明の更に他の態様に従うと、クライアント−サーバー計算システムのクライアント装置上で音声アプリケーションを処理する方法が提供される。サーバーからスクリプトが受け取られ、このスクリプトは、クライアント装置の計算能力を示すデータに依存して選択される。このスクリプトは、ユーザー及びクライアント−サーバーシステムの間の音声ベース・ダイアログにおいてクライアントにより行われるべき1組の命令を決定するために解析される。これらの命令はクライアント装置において実行される。
本発明の更に他の態様に従うと、クライアント−サーバー計算システムにおいて音声アプリケーションを処理するサーバーが提供される。サーバーは、クライアントの計算能力を示すデータを受け取る手段を有する。又、サーバーは、ユーザー及び計算システムの間の音声ベースのダイアログにおいてクライアントにより行われるべきタスクを示す1組の命令を、上記受け取られたデータに基づいて選択する手段を有する。又、サーバーは、実行のためにクライアントにこの1組の命令を与える手段を有する。
本発明の更に他の態様に従うと、クライアント−サーバー計算システムにおいて音声アプリケーションを処理するクライアント装置が提供される。クライアント装置は、サーバーからスクリプトを受け取る手段を有し、そしてこのスクリプトは、クライアント装置の計算能力を示すデータに依存して選択される。更にクライアント装置は、ユーザー及びクライアント・サーバー計算システムの間のダイアログにおいてクライアント装置により行われるべき1組の命令を決定するためにスクリプトを解析する手段、並びにクライアント装置上でこれらの命令を実行する手段を有する。
本発明の更に他の態様に従うと、クライアント−サーバー計算システムにおいて音声アプリケーションを処理する方法を行うために、プログラム・コードを実行するサーバーの動作を制御するための、コンピュータ読み取り可能な記録媒体に記録されたコンピュータ読み取り可能なプログラム・コードからなるコンピュータ・プログラム製品が提供される。この方法は、上述のステップを含む。
本発明の更に他の態様に従うと、クライアント−サーバー計算システムにおいて音声アプリケーションを処理する方法を行うために、プログラム・コードを実行するクライアント装置の動作を制御するための、コンピュータ読み取り可能な記録媒体に記録されたコンピュータ読み取り可能なプログラム・コードからなるコンピュータ読み取り可能なプログラム製品が提供される。この方法は、上述のステップを含む。
本発明の更に他の態様に従うと、音声アプリケーションを処理するためのシステムが提供される。このシステムは、クライアント装置を有し、そしてこの装置にはこれの計算能力を示す関連するデータが関連づけられている。更にこのシステムは、ユーザー及びこのシステムの間の音声ベースのダイアログにおいて行われるべきタスクを指定する複数のスクリプトを記憶するデータ記憶装置を有する。更にシステムは、関連するデータに基づいてクライアント装置のための適切なスクリプトを選択するサーバーを有する。インタプリタ・レイヤは、ダイアログのためにクライアント装置で行われるべき第1組の命令、及びサーバーで行われるべき第2組の命令を決めるために、上記選択されたスクリプトを処理する。同期レイヤ(synchronization layer)は、第1組及び第2組の命令の実行を同期化する。
本明細書で説明する技術は、クライアンとサーバーとの間でダイアログ処理を共有するための融通性のあるメカニズムを提供する。クライアントにおいて実行され得るスクリプトがイネーブルされる。説明する構成においては、サーバーは、対応する装置(デバイス)にそれぞれが合わせられた種々なスクリプトのバージョンをアクセスする。
図1は、クライアント装置10及びサーバー20を有するシステム1を示す。図示のように、クライアント装置10は、携帯電話機である。しかしながら、クライアント装置10は、計算資源を有する任意の音声でイネーブルされる装置でよい。例えば、クライアント装置10は、マイクロフォン及び1つ以上のスピーカを備え、話し声の入力を検出し、そして音声出力を生じるようにコンピュータをイネーブルする汎用コンピュータ又は携帯情報端末でもよい。クライアント装置は、組込型音声認識エンジンを動作させるに十分な処理能力を有する。
クライアント装置10は、例えば携帯電話回路網を介して、情報12をサーバー20に送り、そしてサーバー20から情報14を受け取る。サイバー20及びクライアント装置10のハードウエア構造は、以下に図3を参照して説明する。
サーバー20は、音声サーバー24及び音声ブラウザ22を含む。音声サーバー24は、クライアント装置10のユーザーから受け取られた要求を、次の処理に適するフォーマットに変換する自動音声認識(ASR)を行う。クライアント装置10から受け取られたデータ12は、音声及び例えばデュアルトーンマルチ周波数(DTMF)のキー入力のようなオーディオ入力を含むことができる。
又、音声サーバー24は、テキスト音声(TTS)能力を使用して情報をオーディオ信号に変換する。オーディオ信号は、データ14としてクライアント装置10に送り返される。
音声ブラウザ22は、入力データ12を受け取り、そしてデータ14を出力する。図1と同様のアーキテクチャを使用する従来のシステムにおいては、音声ブラウザ22は、クライアント装置10と音声サーバー24との間の単なる通路(コンジット、conduit)である。しかしながら、説明中の本発明の構成においては、音声ブラウザ22は、クライアント装置10において行われるべきダイアログまたは音声処理あるいはその両方を指定する。クライアント装置10の能力(capability)に基づいて処理を適切に共有することにより、システム1は、サーバーのラウンドトリップ(roundtrips)を減少することにより効率を増大する。
サーバー20は、ハイパー・テキスト転送プロトコル設備(HTTP)26を使用して情報及びサービスをアクセスすることができる。図示のように、情報及びサービスは、データ記憶装置30から取り出される。しかしながら、実際には、システム1を使用してアクセス可能な多くのデータ及びサービスの源がある。HTTP設備26及びデータ記憶装置30の間の通信リンク28は、例えばインターネット又はローカル・エリア・ネットワーク(LAN)でもよい。リンク28は、単純なポイント・ツー・ポイント接続でも良い。
クライアント装置10から音声ブラウザ22に送られるデータ12は、音声、テキスト及びクライアント装置10のプロファイルを規定するパラメータを含む。音声ブラウザ22は、どの処理がクライアント装置10でなされるべきかを指定するスクリプト(“音声スクリプト”と呼ぶ)を選択する。かくして、クライアント装置10の能力及び音声スクリプトは、サーバー20及びクライアント装置10の間の処理の分割を決める。音声スクリプトの使用は、どのダイアログがクライアント装置10でローカルに処理されるか、そして音声処理のどの部分がサーバー20ではなくクライアント装置10で生じるかを決めることにおいて融通性を与える。
音声ブラウザ22からクライアント装置10に送られたデータ14は、音声スクリプト及び音声(speech)を含む。クライアント装置10は、音声スクリプトを実行する。音声サーバー24は、処理タスクをサーバー20及びクライアント装置10の間で分散することによる影響を受けない。
この構成において、音声スクリプトは、音声拡張可能なマーク付け言語(Voice Extensible Markup Language,VoiceXML)を使用して記述されることができる。VoiceXMLは、インタラクティブ音声イネーブルド・アップリケーションに対する標準としてアクセプタンスを得るXMLに基づくスクリプト言語である。VoiceXMLは、オーディオ・ダイアログに基づいて音声アプリケーションを記述するプラットフォームに依存しない言語を与える。2つの型のダイアログがある。フォームは、情報を提示しそして入力を集め、そしてメニューは1組の選択を提示する。
図2は、クライアント装置10とサーバー20との間で処理を融通性良く共用する方法のフロー・チャートである。ステップ202において、クライアント装置10は、サーバー20と通信し、クライアント装置10の能力を規定するパラメータを与える。サーバー20は、コール・セットアップ時間にクライアントの能力を知らされることができ、又はサーバー20は、クライアントの能力を予め知らされていても良い。例えば、情報は、電話番号に関連づけられることができ、されにより、この電話番号が特定な能力を有するクライアント装置により使用されていることをサーバー20に知らせることができる。
クライアントの能力を記述するパラメータは、利用可能なメモリー量、処理能力及びバッテリィのパワーを含む。或るハードウエアまたはソフトウエア資源(例えば、プログラム又はプロトコル)がクライアント上で利用可能であることを同定するデータを含む他のパラメータも又使用されることができる。
ステップ204において、サーバーは、クライアント装置10のプロファイルを調べるためにパラメータを使用する。ステップ206において、サーバー20は、適切な音声スクリプトを選択し、そして、この選択されたスクリプトをクライアント装置10に送る。サーバーは、或る特定な装置のプロファイルに合わせてそれぞれが作られている複数個の音声スクリプトをアクセスする。音声スクリプトは、クライアント装置10においてなされるべきダイアログまたは音声処理あるいはその両方を指定し、そして又、どの部分がサーバー20において行われるかを指定する。音声認識エンジンが、クライアント装置10に既にインストールされており、そしてスクリプトは、実行のために音声認識エンジンを使用する処理ステップを規定する。
ステップ208において、クライアント装置10が音声スクリプトを解析し、そしてステップ210において、クライアント装置10が音声スクリプトを全体的に又は部分的に実行する。クライアント装置10は、どのタスクがなされるべきか、そしてどの順番でなされるべきかを調べるためにスクリプトをインタープリート(解釈、interpret)する。次いで、クライアント装置10は、スクリプトにより要求されている指定された音声認識及び合成タスクを行う。例えば、音声スクリプトは、クライアント装置がプロンプトを合成し、そしてプロンプトをユーザーに対して再生(play)することを指定することができる。クライアント装置は、プロンプトを合成するために音声合成エンジンを呼び出す。次に、クライアント装置は、ユーザーからの話された応答を受け取り、そして、この応答を音声認識システムを使用して処理する。ユーザーからの予期される応答の文法(grammar)が、スクリプト内に与えられている。音声認識システムの出力は、音声スクリプト内に指定されているように、次に行うステップを決めるために使用される。
ランタイム(実行時間、runtime)の制約に基づいて、クライアント装置10が、音声スクリプトにより指定された計算をサポートできないことがある。次いでクライアント装置10は、ダム(dumb、非対応)クライアントになることを選択できる。この場合、クライアント−サーバー・エクスチェンジは、要求される多数のインタラクションをサポートする。
1つの構成において、音声スクリプトは、ダイアログ及び音声に対するJavascript(R)からなる。音声スクリプトは、クライアント装置10に、クライアント装置でできることは何かという内容(mention)を送る。音声スクリプトは、装置が感知できる構成要素(device sensitive construct)を含み、その結果、スクリプトを解析することにより、クライアントは、どの処理がクライアント上でなされることができるかを調べることができる。音声スクリプトは、ダイアログ処理のために要求される文法構成要素(grammar constructs)及び音声処理のために要求される音声構成要素(seech constructs)を含む。又、音声スクリプト構成要素は、“must have”又は“may have”として分類されるテキスト相互間を区別するための、そして“must have”として分類される音声を同定するための随意的なモダリティ(optional modality)を含む。(Java(登録商標)及び全てのJava(登録商標)ベースの商標及びロゴは、米国または他の国におけるSun Microsystems.Inc.の商標である。)
音声サーバーの言語は、サーバー20及びクライアント装置10の間で処理を分散するフィーチャをサポートするVXMLの拡張子(extension)である。言語は、VXMLで規定されておらず、そして、拡張されたVXMLからVXMLサーバー及びVXMLクライアントを発生するために解析手段により使用されるマークアップ・タグ(markup tags)を含む。幾つかの追加的なタグを以下に説明する。
1.<Block Process=“client/server”splitblock=“25”>
これは、もしも処理されるべき大きなブロックがあれば使用される。サーバー20又はクライアント装置10で大きなブロックを処理する代わりに、この拡張された言語は、ブロックを2つの部分に分割し、そして、2つの部分をクライアント及びサーバーのそれぞれで処理する特性(フィーチャ,feature)を与える。ここで、splitblock=“25”は、ブロックの最初の25文字がクライアント装置10で処理され、そして、残りがサーバー20で処理されることを意味する。
2.<merge source=“client”destination=“server”>
クライアント装置10によりプロンプトされなければならないかという幾つかの質問(questions)があるならば、これらの質問は、クライアントのプロファイルに依存してマージ(統合、merge)されることができる。クライアント装置10のプロファイルは、利用可能なメモリの量についての情報及びクライアント装置10のユーザーが急いでいるかどうかを含む。もしもユーザーが急いでいるならば、これらの質問は統合され、そして、規格(specification)に従ってクライアント又はサーバーにより質問されることができる。統合のための他の幾つかの基準がある。
<split source=“Client or Server” destination=“client”>
n回試みたがサーバー20又はクラインと装置10により認識されなかったという質問があるならば、この質問は互いに異なるプロンプトに分割される。この質問は、destination(宛先)で指定されるクライアント装置10又はサーバー10により尋ねられる。分割のための他の基準がある。質問のアンダーライイング文法(uderlying grammar)(ネストされた又はシーケンシャル)は、分割を決定するに当たってその役目を果たす。
ネストされた文法(nested grammar)の場合には、一般的に、全ての答え(answer)がプロンプトを分割するのではなくて、最後の答え(answer)は、サーバーに戻される必要がある。
ネストされた文法の例:

a. Which state?(どの州か?)
b. Which city?(どの市か?)
c. Which airport?(どの空港か?)
もしも答えが更に提示されなければならないならば、最後の答えが関心のある答えである。その理由は、目的はその空港かを決定することだからである。メモリの制約に基づいて、全体の質問は、3つの小さな文法(grammar)に分割された。
シーケンシャル文法(sequential grammar)の場合には、ユーザーは最後の答えに関心があるばかりでなく、全体の質問の各パートの答えにも関心がある。ある種の分割の後、各サブ・パートに関連する幾つかの答えは、文法全体をサーバー自身が認識したと同等の効果を生じるために、連接されそして最後に記憶される。
シーケンシャル文法の例:
a. What is the first name?(ファースト・ネームはなにか?)
b. What is the last name?(ラスト・ネームはなにか?)
c. What is the location?(場所はどこか?)
この場合、マージされた質問は、“Whose phone number do you want and at which locations?”(誰の電話番号が欲しいのか、そしてどの場所か)であり、これの答えは、例えば(オフィスにいるニテンドラ・ラジプート)であるので、完全な答えに関心がある。
分割及び統合(マージ)に関連する異なる可能性:
(1)全体的な質問は、サーバー20において認識され、そして質問に関連する全 体的に大きな文法(Big Grammar)は分割される必要はない。
(2)質問は幾つかの小さなパートに分割され、そして音声認識がクライアント側で行われる。プロンプトに関連する文法は、いつでもクライアント装置10に転送される。ネストされた文法の場合には、文法はユーザーにより与えられる答えに依存するが、シーケンシャル文法の場合には、転送された文法は、答えに依存しないか、又はユーザーにより与えられた前の答え(例えば、ブーリアンの答え(Boolean answers)に依存することがある。
(3)他の可能性は、幾つかの小さなパートのうち、複数のパートはサーバー20で認識され、そして他のパートはクライアント装置10で認識されることである。この構成において、クライアント装置10において認識されるべき質問に関する文法が、クライアントに転送される。
(4)文法を送ることにおいてポテンシャル問題がある。たとえクライアント装置10がサーバー20に何も戻さないとしても、クライアントはサーバーに戻らなければならず、その結果、サーバーは、前の答えに依存して適切な文法を送ることができる。これは、クライアント装置10の応答時間を増大する。そこで、もしもクライアントが全ての文法を処理するに十分なメモリを有するならば、全ての文法はクライアントに転送されるべきであり、これによりクライアントがサーバーに戻ってサーバーに適切な文法を送ることを防止する。
例:
a.Which state?(どの州?)
b.Which City?(どの市?)
この場合、第2の質問は第1の質問から独立している。従って、以前の質問に対する答えに基づいて第2の質問に対する適切な文法を転送する代わりに、(もしもクライアントの能力がこれを可能にするならば)全ての州の全ての市の文法をクライアント装置10に維持することができる。
(5)理想的な状態では、サーバー20のメモリは実質的に無限大であり、従って任意の数の質問がサーバー20でマージされることができる。しかしながら、クライアント装置10では、文法のマージはクライアント装置10のメモリの制約に基づいてなされる。プロンプトの組み合わせの幾つかのマージが可能である。このことは、もしも複数個の質問がマージのためにクライアント装置10に送られるならば、全ての質問がクライアントにおいてマージされ得ないことを意味する。
例:
a. What is your name?(あなたの名前は?)
b. What is your address?(あなたのアドレスは?)
c. What is your father‘s name?(あなたのお父さんの名前は?)
これらの3つの質問はクライアント装置10に送られてマージされる。しかしながら、クライアント装置10のメモリの制約を考慮して第1番目及び最後の質問だけがマージされることができる。
(6)分割/マージは、クライアント装置10のメモリ制約に基づいて行われるとは限らない。他に考えるべきことは、‘不一致(no match)’の数のカウント、又は‘入力なし(no input)’の数のカウントである。もしもユーザーが急いでいればマージがなされ、そしてもしもユーザーが大量の質問を取り扱えないがわずかな質問に答えることが望ましいならば、分割がなされ得る。分割は、ユーザーにより与えられる情報に基づいてなされることができる。例えば、もしもユーザーが対応するプロンプトにより要求されるよりも多くの情報を与えるならば、分割がなされ得る。
例:
a. What is your name?(あなたの名前は?)
b. What is your surname and date of birht?(あなたの姓は、そして誕生日は?)
もしも第1番目の質問に対するユーザーの答えが‘ニーラジ・チャンダハイ’であるならば、第2番目の質問は、2つのパートに分割され、そして質問“What is your date of birth?(あなたの誕生日は?)だけが問いかけられる。
付録Aは、拡張されたVXML言語のサンプル・プログラムを含む。ここに示すように、サンプル・プログラムは、サーバー20及びクライアント装置10のそれぞれで行われる2つの部分に分割されることができる。
通信レイヤ(同期化プロトコル):
図4は、クライアント装置10及びサーバー20で行われる処理を同期化するのに使用される通信レイヤを示す。音声スクリプト(即ち、VXMLextファイル)401は、分解手段(disintegrator)403及びインタプリタ(Interpreter)の1組の機能−特定モジュール(function−specific modules)405を含むVXNLextインタプリタ・レイヤにおいて処理される。インタプリタ・レイヤは、クライアント装置10及びサーバー20によりなされる解析の部分である。1つの構成において、インタプリタ・レイヤは、クライアント及びサーバーにある音声ブラウザ、即ち、クライアント音声ブラウザ及びサーバー音声ブラウザ22の部分でもよい。
機能−特定モジュール405の出力は、サーバー20で動いているサーバー・エンジン407及びクライアント装置10で動いているクライアント・エンジン409に与えられる。次いで、エンジン407及び409は、クライアント−サーバーのインタラクションを同期化する同期化手段411と通信する。同期化手段411は、サーバー20上で動いているブラウザ・コード413及びクライアント装置10上で動いているブラウザ・コード415とインタラクトする。同期化手段411及びブラウザ・コード413,415は共に通信レイヤを構成する。
‘destination(宛先)’内に1つ以上の値が指定されたならば(‘/’で分けて)最初の値が好ましい宛先である。もしもタグが第1番目の宛先において実行できないならば、次に指定された位置で実行がなされる。これらの主要な値の組み合わせであるこれらの値は、実行シーケンスにおいて次の意味を有する。
・client/server:
クライアントで実行。もしも実行が不成功ならば、サーバーで実行。
・client/partial/server:
クライアントで実行。もしも実行が不成功ならば、クライアントで部分的に実行、そして残りをサーバーで実行。もしもこれも不成功ならば、サーバーで実行。
・client/split:
クライアントで実行。もしも不成功ならば、ダイアログを複数のサブ・ダイアログに分割し。そしてクライアントで実行。
・client/split/server:
クライアントで実行。もしも不成功ならば、ダイアログをサブダイアログに分割し、そしてクライアントで実行。もしもこれも不成功ならば、ダイアログをサーバーで実行。
・client/server/split:
クライアントで実行。もしも不成功ならば、サーバーで実行。もしもこれも不成功ならば、ダイアログをサブダイアログに分割しそしてクライアントで実行。もしもこれも不成功ならば、サブダイアログをサーバーで実行。
・server/client:
この値は有効であるが、<merge(マージ)>及び<block(ブロック)>タグに対してのみ意味がある。<merge>と共に使用されるとき、統合されたダイアログがサーバーで実行され、そしてもしもこれが不成功ならば、ダイアログは分割され、次いでクライアントで実行される。
行き先の値が‘client/split/serber’である場合の同期化レイヤについて以下に説明する。クライアント装置10で処理が行われている間、サーバー20は待機モードにある。もしもこの処理が成功であるならば、クライアント装置10は、‘seccessful(成功)’メッセージを書き、そして又サーバー20に送るべきファイルに認識したストリングを書く。次いで、クライアント装置10は、次のダイアログに移り、そしてこれは、VXMLext(音声スクリプト)401で指定されるようにクライアント装置10又はサーバー20で行われる。
もしもクライアント装置10における処理が不成功ならば、クライアントは、クライアント上で動作している適切なモジュール405を使用して再びコール・フロー(call flow)を分割することにより、動作し続ける。サーバー20は、待機状態を続ける。もしもクライアント装置10において全てのステップが不成功ならば、最終的に‘unsuccessful(不成功)’メッセージがサーバー20に送られ、そして認識したストリングが無効ストリングにセットされる。次いで、処理は、クライアント装置10に比べて更に優れた認識精度及び処理能力を有するサーバー10で継続される。
もしも第1番目の試みが失敗すると、サーバー20は質問を分割する。この場合、クライアント装置10は、たとえ認識の試みがサーバー20で失敗したとしても、サーバーの現在のステータスが判るようにされる。この理由は、たとえ認識がサーバー20で行われていたとしても、クライアント装置10は、音声を認識し、音声をサーバー20に送りそして合成された音声を受け取り再生するというタスクを有するからである。
全ての処理がクライアント装置10で行われると、サーバー20は、何の役目をも果たさず、そして、タグ“destination”により許されるように全てがクライアント装置10で試みられ終わるまで、休止状態となる。
通信レイヤ(communication layer)は、認識されたストリングを転送するので、ストラテジィ(strategy)は、連接された、シーケンシャルなそしてネストされた(nested)コール・フローに対して変わる。
(a)連接された質問の場合には、全ての答えは、連接後に提示されなければならないことを思い出されたい。
例: What is your name?(あなたの名前は?)
次の3つのパートが連接される必要がある。
1. What is your first name?(あなたの名は?)
2. What is your middle name?(あなたのミドルネームは?)
3. What is your last name?(あなたの姓は?)
(b)ネストされたコール・フローの場合には、最後の質問の答えだけが提示される必要がある。
例:We are interested only in the airport(我々空港だけに興味がある)、しかしながら次のネストされた質問が尋ねられる。
Which state?(どの州?)
which city?(どの市?)
which airport?(どの空港?)
(c)シーケンシャルなコール・フローの場合には、最後の質問の答えが提示される必要がある。
例:We are interested only in the seat number(我々は座席番号のみに興味がある)
1.Tell me the seat number between 1 to 20, 21 to 40, 41 to 60, 61 to 80?(1から20,21から40,41から60,61から80の座席番号を教えてください?)
2.Tell me your seat number.(あなたの座席番号を教えてください)
クライアント装置10及びサーバー20を同期化するために行われる方法論(methodology)は、他の宛先値(server/client;server/client/split;client/server等)に対して同様であるが、イベントが起こるシーケンスは、宛先値に従って変わる。
コンピュータ・ハードウエア:
図3は、クライアント及びサーバーの間で音声アプリケーションの処理を共有するためにコンピュータ・ソフトウエアを実行するのに適する型のコンピュータ・システム300の概略図である。コンピュータ・ソフトウエアは、コンピュータ・システム300にインストールされている適切なオペレーティング・システムのもとに実行し、そして特定なステップを達成するための種々なソフトウエア・コード手段からなるとものとして考えることができる。コンピュータ・システム300は、サーバー20として使用されることができる。以下に説明する修正を行うことにより、コンピュータ・システム300の構成は、クライアント装置10において使用されることができる。
コンピュータ・システム300のコンポーネントは、コンピュータ320,キーボード310、マウス315及び表示装置390を含む。コンピュータ320は、プロセッサ340,メモリ350,入出力(I/O)インターフェイス360,365,ビデオ・インターフェイス345及び記憶装置355を含む。
プロセッサ340は、オペレーティング・システム及びこのオペレーティング・システムのもとではたらくコンピュータ・ソフトウエアを実行する中央処理ユニット(CPU)である。メモリ350は、ランダム・アクセス・メモリ(RAM)及び読み取り専用メモリ(ROM)を含み、そして、プロセッサ340の制御のもとで使用される。
ビデオ・インターフェイス345は、表示装置390に接続され、そして表示装置390上で表示する信号を与える。コンピュータ320を動作させるユーザー入力は、例えばキーボード310及びマウス315から与えられる。例えばマイクロフォンのような他の型の入力も又使用されることができる。又、信号は、1つ以上のスピーカ(図示せず)を使用して聴覚的に出力されることができる。記憶装置355は、ディスク・ドライブまたは他の適切な記憶装置を含むことができる。
コンピュータ320の各コンポーネントは、内部バス330に接続され、この内部バスは、コンピュータ320の各コンポーネントがバス330を介して互いに通信できるようにするためのデータ・バス、アドレス・バス及び制御バスを含む。
コンピュータ・システム300は、入出力(I/O)インターフェイス365,通信チャネル385及び図3でインターネット380として示されている回路網を介して、1つ以上の他の同様なコンピュータに接続されることができる。
コンピュータ・ソフトウエアは、携帯型の記憶媒体に記録されることができ、この場合には、コンピュータ・ソフトウエア・プログラムは、コンピュータ・システム300により記憶装置355からアクセスされることができる。これの代わりに、コンピュータ・ソフトウエアは、コンピュータ320によりインターネット380から直接的にアクセスされることができる。いずれの場合にも、ユーザーは、プログラムされたコンピュータ・ソフトウエアをコンピュータ上で実行させるために、例えばキーボード310及びマウス315を使用してコンピュータ300とインタラクトすることができる。
コンピュータ・システムの他の構成又は他の型のコンピュータ・システムが、本明細書で開示した本発明を実施するためのコンピュータ・ソフトウエアを実行するために同様に使用されることができる。更に、ディジタル信号プロセッサのようなカスタム・メイドの装置及び特別に構成されたハードウエアが本発明を実現するために使用されることができる。
携帯型のクライアント装置10は、図3に示した構成と同様のコンピュータ構成を有することができる。表示装置390およびキーパッドは、クライアンと装置10に一体的に形成され、但しマウス315を含まない。クライアント装置10のI/Oインターフェイス365は、携帯電話回路網を介して信号を送受信するトランシーバであり、そして更にクライアント装置10は、聴覚的入出力を処理するためのマイクロフォン及びスピーカを含む。
APPENDIX (付録) A:
VXMLEXTENDEDSAMPLE PROGRAM

<vxmlext>
<blockprocess=”client/server” splitblock=”25”>
………………………..
………………………..
</block>
<formid=”id_name”>
<mergesource=”client ” destination=” server” >
<fieldname=”…..” execute=”client”>
<prompt>………………. </prompt>
<grammarsrc=”……….”/>
</field>
<fieldname=”…..” execute=”client”>
<prompt>………………. </prompt>
<grammarsrc=”……….”/>
</field>
<p1>………………</p1>
<gotomerge/>
</merge>

<fieldname=”………” execute=”client/server”>
<prompt>……………………………………….</prompt>
<grammarsrc =”…………”/>
<nomatchcount=”n”> <gotosplit /></nomatch>

<splitSource=” client or server” destination= “ client”>
<p1>…………….</p1>
<p2>………………</p2>
<p3>……………….</p3>
<p4>……………….</p4>

</split>
</field>
</form>
</vxmlext>

Thisfile is fed to the parser, and the following ‘VXML server’ and ‘VXML client’files are generated and made to run on the server and client respectively.
VXMLSERVER GENERATED
<vxml>
<block>
<………… after 25 characters>
</block>
-----------------------------------Aftermerging----------------------
<formid=”…..”>
<fieldname= “………”>
<prompt>p1………</prompt>
<grammarsrc=”grammar destination after merging”/>
</field>
------------------------BeforeSplitting--------------------------------
<fieldname=” ……….”>
<prompt>………………………………..</prompt>
<grammarsrc=” grammar destination before splitting”/>
</field>
</form>
</vxml>

VXMLCLIENT GENERATED
<vxml>
<block>
first25 characters …………….
</block>
<formid=”……..”>
-----------------------------BeforeMerging----------------------------------------
<fieldname=”…..” >
<prompt>………………. </prompt>
<grammarsrc=”……….”/>
</field>
<fieldname=”…..” >
<prompt>………………. </prompt>
<grammarsrc=”……….”/>
</field>
---------------Beforesplitting----------------------------------------------------
<fieldname=” ……….”>
<prompt>………………………………..</prompt>
<grammarsrc=” grammar destination before splitting”/>
</field>
--------------------------------AfterSplitting------------------------------------------
<fieldname=p1>
<prompt>………………..</prompt>
<grammarsrc=”…….”/>
</field>
<fieldname=p2>
<prompt>………………..</prompt>
<grammarsrc=”…….”/>
</field>
<fieldname=p3>
<prompt>………………..</prompt>
<grammarsrc=”…….”/>
</field>
<fieldname=p4>
<prompt>………………..</prompt>
<grammarsrc=”…….”/>
</field>
</form>
</vxml>

TAGLIBRARY
1. merge
Attributes
Source
Destination
2. split
Attributes
Source
Destination
3. Block
NewAttributes
Process
Splitblock
4. Field
NewAttributes
execute
5.Gotomerge
7.Gotosplit
8.Vxmlext
This tagis inserted to differentiate the language from normal Vxml as it has
variousother features
Certaintags for merging and splitting prompts are also added (Syntax
<p(promptnumberafterp)>)
本明細書で説明した技術及び構成に対する種々な変更及び修正が可能であることは、当業者にとって明らかである。
本明細書で説明する技術を本発明の良好な実施例に従って実現するのに適するクライアント−サーバーの構成を概略的に示す図である。 本発明の良好な実施例に従ってクライアントとサーバーとの間で計算又は処理動作を融通的に分散させる方法のフローチャートである。 図1の構成において使用するに適する本発明の良好な実施例に従うコンピュータ・システムの概略図である。 クライアントとサーバーとの間の同期化を実現するための本発明の良好な実施例に従う通信レイヤの概略図である。
符号の説明
1 システム
10 クライアント装置
12,14 情報
20 サーバー
22 音声ブラウザ
24 音声サーバー
26 HTTP設備
28 通信リンク
30 データ記憶装置

Claims (26)

  1. クライアント−サーバー計算システムにおいて音声アプリケーションを処理する方法であって、
    前記サーバーが、
    前記クライアントの計算能力を示すデータを受け取るステップと、
    前記受け取られたデータに基づいて、ユーザーと前記計算システムとの間の音声ベースのダイアログにおいて前記クライアントにより行われるべきタスクを指定する1組の命令を選択するステップと、
    前記1組の命令を実行のために前記クライアントに与えるステップとを行う、方法。
  2. もしも1つ以上のタスクが前記クライアントで成功裏に実行されなければ、前記1つ以上のタスクを実行するステップを含む、請求項1に記載の方法。
  3. 前記データを受け取るステップが、
    前記クライアントを同定するステップと、
    前記同定されたクライアントの前記計算能力の予め規定されたプロフィルを検索するステップとを含む、請求項1又は請求項2に記載の方法。
  4. 前記データを受け取るステップが、前記音声ベースのダイアログのランタイムに前記データを受け取る、請求項1又は請求項2に記載の方法。
  5. 前記データが、
    前記クライアントの利用可能なメモリ容量と、
    前記クライアントの利用可能なバッテリィ・パワーと、
    前記クライアントの処理能力と、
    前記クライアントで利用可能な1つ以上の資源を同定する情報とのうち少なくとも1つを含む、請求項1乃至4のいずれか1項に記載の方法。
  6. クライアント装置−サーバー計算システムにおいて音声アプリケーションを処理する方法であって、
    前記クライアント装置が、
    前記クライアント装置の計算能力を示すデータに依存して選択されたスクリプトを前記サーバーから受け取るステップと、
    ユーザーと前記計算システムとの間の音声ベースのダイアログにおいて前記クライアント装置により行われるべき1組の命令を決定するために前記スクリプトを解析するステップと、
    前記命令を実行するステップとを行う、方法。
  7. 前記クライアント装置から前記サーバーへ前記計算能力を示すデータを送るステップを含む、請求項6に記載の方法。
  8. 前記命令の少なくとも1つが前記クライアント装置で成功裏に実行されなかったことを前記サーバーに知らせるステップを含む、請求項6又は請求項7に記載の方法。
  9. 前記ダイアログは、前記ユーザーに対して再生されるべきプロンプト及び前記プロンプトに対する予期される応答の対応する文法を有し、更に、
    前記クライアント装置の計算能力に基づいて、少なくとも1つの前記プロンプト及び対応する文法を複数のプロンプト及び対応する文法に分割するステップを含む、請求項6,請求項7又は請求項8に記載の方法。
  10. 前記スクリプトが、前記複数のプロンプト及び文法が前記サーバー又は前記クライアント装置のどちらで実行されるべきかを指定する1つ以上の宛先パラメータを有する、請求項9に記載の方法。
  11. 前記ダイアログが、前記ユーザーに対して再生されるべきプロンプト及び予期される応答の対応する文法を有し、そして前記複数のプロンプト及び対応する文法が、前記クライアント装置の計算能力に基づいて、単一のプロンプト及び対応する文法に統合される、請求項6,請求項7又は請求項8に記載の方法。
  12. クライアント−サーバー計算システムにおいて音声アプリケーションを処理するサーバーであって、
    前記クライアントの計算能力を示すデータを受け取る手段と、
    前記受け取られたデータに基づいて、ユーザーと前記計算システムとの間の音声ベースのダイアログにおいて前記クライアントにより行われるべきタスクを指定する1組の命令を選択する手段と、
    前記1組の命令を実行のために前記クライアントに与える手段とを備える、サーバー。
  13. もしも1つ以上のタスクが前記クライアントで成功裏に実行されなければ、前記1つ以上のタスクを実行する手段を備える、請求項12に記載のサーバー。
  14. 前記データを受け取る手段が、
    前記クライアントを同定する手段と、
    前記同定されたクライアントの前記計算能力の予め規定されたプロフィルを検索する手段とを備える、請求項12又は請求項13に記載のサーバー。
  15. 前記データを受け取る手段が、前記音声ベースのダイアログのランタイムに前記データを受け取る、請求項12又は請求項13に記載のサーバー。
  16. 前記データが、
    前記クライアントの利用可能なメモリ容量と、
    前記クライアントの利用可能なバッテリィ・パワーと、
    前記クライアントの処理能力と、
    前記クライアントで利用可能な1つ以上の資源を同定する情報とのうちの少なくとも1つを含む、請求項12乃至15のいずれか1項に記載のサーバー。
  17. クライアント装置−サーバー計算システムにおいて音声アプリケーションを処理するクライアント装置であって、
    前記クライアント装置の計算能力を示すデータに依存して選択されたスクリプトをサーバーから受け取る手段と、
    ユーザーと前記計算システムとの間の音声ベースのダイアログにおいて前記クライアント装置により行われるべき1組の命令を決定するために前記スクリプトを解析する手段と、
    前記命令を実行する手段とを備える、クライアント装置。
  18. 前記クライアント装置から前記サーバーへ前記計算能力を示すデータを送る手段を備える、請求項17に記載のクライアント装置。
  19. 前記命令の少なくとも1つが前記クライアント装置で成功裏に実行されなかったことを前記サーバーに知らせる手段を備える、請求項17又は請求項18に記載のクライアント装置。
  20. 前記ダイアログは、前記ユーザーに対して再生されるべきプロンプト及び前記プロンプトに対する予期される応答の対応する文法を有し、更に、
    前記クライアント装置の計算能力に基づいて、少なくとも1つの前記プロンプト及び対応する文法を複数のプロンプト及び対応する文法に分割する手段を備える、請求項17,請求項18又は請求項19に記載のクライアント装置。
  21. 前記スクリプトが、前記複数のプロンプト及び文法が前記サーバー又は前記クライアント装置のどちらで実行されるべきかを指定する1つ以上の宛先パラメータを有する、請求項20に記載のクライアント装置。
  22. 前記ダイアログが、前記ユーザーに対して再生されるべきプロンプト及び予期される応答の対応する文法を有し、そして前記複数のプロンプト及び対応する文法が、前記クライアント装置の計算能力に基づいて、単一のプロンプト及び対応する文法に統合される、請求項17,請求項18又は請求項19に記載のクライアント装置。
  23. 音声アプリケーションを処理するクライアント−サーバー計算システムのサーバーに、
    前記クライアントの計算能力を示すデータを受け取る手順と、
    前記受け取られたデータに基づいて、ユーザーと前記計算システムとの間の音声ベースのダイアログにおいて前記クライアントにより行われるべきタスクを指定する1組の命令を選択する手順と、
    前記1組の命令を実行のために前記クライアントに与える手順とを実行させるためのプログラムを記憶したコンピュータ読み取り可能な記録媒体。
  24. 音声アプリケーションを処理するクライアント装置−サーバー計算システムのクライアント装置に、
    前記クライアント装置の計算能力を示すデータに依存して選択されたスクリプトを前記サーバーから受け取る手順と、
    ユーザーと前記計算システムとの間の音声ベースのダイアログにおいて前記クライアント装置により行われるべき1組の命令を決定するために前記スクリプトを解析する手順と、
    前記命令を実行する手順とを実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
  25. 音声アプリケーションを処理するシステムであって、
    自身の計算能力を示す関連するデータを有するクライアント装置と、
    ユーザーと前記システムとの間の音声ベースのダイアログにおいて行われるべきタスクを指定する複数のスクリプトを記憶するデータ記憶手段と、
    前記関連するデータに基づいて前記クライアント装置に対するスクリプトを選択するサーバーと、
    前記ダイアログのために前記クライアント装置で行われるべき第1組の命令、及び前記ダイアログのために前記サーバーで行われるべき第2組の命令を決定するために、前記選択されたスクリプトを処理するインタプリタ・レイヤと、
    前記第1組の命令及び前記第2組の命令の実行を同期化する同期化レイヤとを備えるシステム。
  26. 音声アプリケーションを処理するクライアント装置−サーバー計算システムのサーバー又はクライアント装置に、請求項1乃至11のいずれか1項に記載の手順を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2008546387A 2005-12-20 2006-12-13 クライアント−サーバー計算システムにおいて音声アプリケーションを処理する方法及びサーバー Expired - Fee Related JP5179375B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/312,300 US9330668B2 (en) 2005-12-20 2005-12-20 Sharing voice application processing via markup
US11/312,300 2005-12-20
PCT/EP2006/069664 WO2007071602A2 (en) 2005-12-20 2006-12-13 Sharing voice application processing via markup

Publications (2)

Publication Number Publication Date
JP2009520224A true JP2009520224A (ja) 2009-05-21
JP5179375B2 JP5179375B2 (ja) 2013-04-10

Family

ID=38098609

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008546387A Expired - Fee Related JP5179375B2 (ja) 2005-12-20 2006-12-13 クライアント−サーバー計算システムにおいて音声アプリケーションを処理する方法及びサーバー

Country Status (5)

Country Link
US (1) US9330668B2 (ja)
JP (1) JP5179375B2 (ja)
CN (1) CN101341532B (ja)
TW (1) TW200809769A (ja)
WO (1) WO2007071602A2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009244432A (ja) * 2008-03-29 2009-10-22 Kddi Corp 携帯端末の音声認識装置、方法、プログラム
WO2011148594A1 (ja) * 2010-05-26 2011-12-01 日本電気株式会社 音声認識システム、音声取得端末、音声認識分担方法および音声認識プログラム
KR101786533B1 (ko) * 2013-07-17 2017-10-18 삼성전자주식회사 멀티 레벨 음성 인식

Families Citing this family (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100166161A1 (en) * 2005-09-01 2010-07-01 Vishal Dhawan System and methods for providing voice messaging services
US20070047719A1 (en) * 2005-09-01 2007-03-01 Vishal Dhawan Voice application network platform
US9313307B2 (en) * 2005-09-01 2016-04-12 Xtone Networks, Inc. System and method for verifying the identity of a user by voiceprint analysis
US9253301B2 (en) * 2005-09-01 2016-02-02 Xtone Networks, Inc. System and method for announcing and routing incoming telephone calls using a distributed voice application execution system architecture
US11102342B2 (en) 2005-09-01 2021-08-24 Xtone, Inc. System and method for displaying the history of a user's interaction with a voice application
US11153425B2 (en) * 2005-09-01 2021-10-19 Xtone, Inc. System and method for providing interactive services
US20100158217A1 (en) 2005-09-01 2010-06-24 Vishal Dhawan System and method for placing telephone calls using a distributed voice application execution system architecture
US9456068B2 (en) * 2005-09-01 2016-09-27 Xtone, Inc. System and method for connecting a user to business services
US9799039B2 (en) 2005-09-01 2017-10-24 Xtone, Inc. System and method for providing television programming recommendations and for automated tuning and recordation of television programs
US9426269B2 (en) 2005-09-01 2016-08-23 Xtone Networks, Inc. System and method for performing certain actions based upon a dialed telephone number
US8964960B2 (en) * 2005-09-01 2015-02-24 Xtone Networks, Inc. System and method for interacting with a user via a variable volume and variable tone audio prompt
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
DE102008040721A1 (de) * 2008-07-25 2010-01-28 Robert Bosch Gmbh Emulationssystem und -verfahren für einen nicht mehr lieferbaren Mikrocontroller
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
JP6078964B2 (ja) 2012-03-26 2017-02-15 富士通株式会社 音声対話システム及びプログラム
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
DE102012218151B4 (de) * 2012-10-04 2024-02-01 Bayerische Motoren Werke Aktiengesellschaft Dialogführungsvorrichtung für ein Fahrzeug
KR20240132105A (ko) 2013-02-07 2024-09-02 애플 인크. 디지털 어시스턴트를 위한 음성 트리거
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
KR101772152B1 (ko) 2013-06-09 2017-08-28 애플 인크. 디지털 어시스턴트의 둘 이상의 인스턴스들에 걸친 대화 지속성을 가능하게 하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
DE112014003653B4 (de) 2013-08-06 2024-04-18 Apple Inc. Automatisch aktivierende intelligente Antworten auf der Grundlage von Aktivitäten von entfernt angeordneten Vorrichtungen
US9449602B2 (en) * 2013-12-03 2016-09-20 Google Inc. Dual uplink pre-processing paths for machine and human listening
US20150248730A1 (en) * 2014-02-28 2015-09-03 Pilot Catastrophe Services, Inc. Insurance adjuster claim scoping
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
CN110797019B (zh) 2014-05-30 2023-08-29 苹果公司 多命令单一话语输入方法
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
CN105118507B (zh) * 2015-09-06 2018-12-28 上海智臻智能网络科技股份有限公司 声控系统及其控制方法
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
DK201770428A1 (en) 2017-05-12 2019-02-18 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770411A1 (en) 2017-05-15 2018-12-20 Apple Inc. MULTI-MODAL INTERFACES
DK179549B1 (en) 2017-05-16 2019-02-12 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
EP3496090A1 (en) * 2017-12-07 2019-06-12 Thomson Licensing Device and method for privacy-preserving vocal interaction
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
CN111048078A (zh) * 2018-10-15 2020-04-21 阿里巴巴集团控股有限公司 语音复合指令处理方法和系统及语音处理设备和介质
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11227599B2 (en) 2019-06-01 2022-01-18 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
US11038934B1 (en) 2020-05-11 2021-06-15 Apple Inc. Digital assistant hardware abstraction
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11810578B2 (en) 2020-05-11 2023-11-07 Apple Inc. Device arbitration for digital assistant-based intercom systems
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
US12021806B1 (en) 2021-09-21 2024-06-25 Apple Inc. Intelligent message delivery

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003169329A (ja) * 1996-08-07 2003-06-13 Matsushita Electric Ind Co Ltd 画像音声符号化復号化装置
JP2004213570A (ja) * 2003-01-08 2004-07-29 Sony Corp 情報提供方法
JP2005055607A (ja) * 2003-08-01 2005-03-03 Toyota Motor Corp サーバ、情報処理端末、音声合成システム

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6600737B1 (en) 1999-02-11 2003-07-29 Mediaring Ltd. Bandwidth protection for voice over IP
US20050261907A1 (en) * 1999-04-12 2005-11-24 Ben Franklin Patent Holding Llc Voice integration platform
US7330815B1 (en) * 1999-10-04 2008-02-12 Globalenglish Corporation Method and system for network-based speech recognition
US9076448B2 (en) * 1999-11-12 2015-07-07 Nuance Communications, Inc. Distributed real time speech recognition system
US6738743B2 (en) 2001-03-28 2004-05-18 Intel Corporation Unified client-server distributed architectures for spoken dialogue systems
EP1410381A4 (en) 2001-05-04 2005-10-19 Unisys Corp DYNAMIC GENERATION OF VOICE APPLICATION INFORMATION FROM A WEB SERVER
US20020178182A1 (en) * 2001-05-04 2002-11-28 Kuansan Wang Markup language extensions for web enabled recognition
US7203643B2 (en) * 2001-06-14 2007-04-10 Qualcomm Incorporated Method and apparatus for transmitting speech activity in distributed voice recognition systems
US7242752B2 (en) 2001-07-03 2007-07-10 Apptera, Inc. Behavioral adaptation engine for discerning behavioral characteristics of callers interacting with an VXML-compliant voice application
US7609829B2 (en) * 2001-07-03 2009-10-27 Apptera, Inc. Multi-platform capable inference engine and universal grammar language adapter for intelligent voice application execution
US7013275B2 (en) * 2001-12-28 2006-03-14 Sri International Method and apparatus for providing a dynamic speech-driven control and remote service access system
US6804330B1 (en) 2002-01-04 2004-10-12 Siebel Systems, Inc. Method and system for accessing CRM data via voice
US7016849B2 (en) * 2002-03-25 2006-03-21 Sri International Method and apparatus for providing speech-driven routing between spoken language applications
JP2003295890A (ja) * 2002-04-04 2003-10-15 Nec Corp 音声認識対話選択装置、音声認識対話システム、音声認識対話選択方法、プログラム
AU2002253334A1 (en) 2002-04-26 2003-11-10 Fluency Voice Technology Limited A system and method for creating voice applications
FR2840484B1 (fr) 2002-05-28 2004-09-03 France Telecom Protocole de communication entre un module d'application vocale et une plate-forme vocale dans un serveur vocal
AU2002345308A1 (en) * 2002-07-17 2004-02-02 Nokia Corporation Mobile device having voice user interface, and a methode for testing the compatibility of an application with the mobile device
TW567465B (en) * 2002-09-02 2003-12-21 Ind Tech Res Inst Configurable distributed speech recognition system
US7571100B2 (en) * 2002-12-03 2009-08-04 Speechworks International, Inc. Speech recognition and speaker verification using distributed speech processing
US8311835B2 (en) * 2003-08-29 2012-11-13 Microsoft Corporation Assisted multi-modal dialogue
US8589156B2 (en) * 2004-07-12 2013-11-19 Hewlett-Packard Development Company, L.P. Allocation of speech recognition tasks and combination of results thereof
US7792254B2 (en) * 2004-10-19 2010-09-07 Genesys Telecommunications Laboratories, Inc. System for distributing VXML capabilities for execution on client devices
US7548977B2 (en) * 2005-02-11 2009-06-16 International Business Machines Corporation Client / server application task allocation based upon client resources
US8023937B2 (en) * 2005-03-04 2011-09-20 Qualcomm Incorporated Apparatus and methods for determining voice and/or data processing performance of a wireless device
US8041570B2 (en) * 2005-05-31 2011-10-18 Robert Bosch Corporation Dialogue management using scripts
US7716671B2 (en) * 2005-07-07 2010-05-11 Cisco Technology, Inc. Method for coordinating a set of related tasks and events by reducing duplicated effort

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003169329A (ja) * 1996-08-07 2003-06-13 Matsushita Electric Ind Co Ltd 画像音声符号化復号化装置
JP2004213570A (ja) * 2003-01-08 2004-07-29 Sony Corp 情報提供方法
JP2005055607A (ja) * 2003-08-01 2005-03-03 Toyota Motor Corp サーバ、情報処理端末、音声合成システム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009244432A (ja) * 2008-03-29 2009-10-22 Kddi Corp 携帯端末の音声認識装置、方法、プログラム
WO2011148594A1 (ja) * 2010-05-26 2011-12-01 日本電気株式会社 音声認識システム、音声取得端末、音声認識分担方法および音声認識プログラム
KR101786533B1 (ko) * 2013-07-17 2017-10-18 삼성전자주식회사 멀티 레벨 음성 인식

Also Published As

Publication number Publication date
CN101341532A (zh) 2009-01-07
TW200809769A (en) 2008-02-16
WO2007071602A2 (en) 2007-06-28
WO2007071602A3 (en) 2007-08-30
US9330668B2 (en) 2016-05-03
JP5179375B2 (ja) 2013-04-10
CN101341532B (zh) 2013-03-06
US20070143113A1 (en) 2007-06-21

Similar Documents

Publication Publication Date Title
JP5179375B2 (ja) クライアント−サーバー計算システムにおいて音声アプリケーションを処理する方法及びサーバー
US8005683B2 (en) Servicing of information requests in a voice user interface
US8868425B2 (en) System and method for providing network coordinated conversational services
US7590542B2 (en) Method of generating test scripts using a voice-capable markup language
CN100397340C (zh) 以对话为目的的应用抽象
US7269562B2 (en) Web service call flow speech components
US20060276230A1 (en) System and method for wireless audio communication with a computer
MX2007013015A (es) Metodo para operar un servicio de reconocimiento automatico de voz accesible en forma remota por el cliente sobre una red en paquetes.
CA2345661A1 (en) Conversational browser and conversational systems
US20050043953A1 (en) Dynamic creation of a conversational system from dialogue objects
US7171361B2 (en) Idiom handling in voice service systems
US20100094635A1 (en) System for Voice-Based Interaction on Web Pages
US20200211560A1 (en) Data Processing Device and Method for Performing Speech-Based Human Machine Interaction
US7451086B2 (en) Method and apparatus for voice recognition
US20220046127A1 (en) Interactive voice response (IVR) for text-based virtual assistance
JP2005536909A (ja) 統合tcapおよびisupインターフェースを有する音声ブラウザ
Demesticha et al. Aspects of design and implementation of a multi-channel and multi-modal information system
EP1564659A1 (en) Method and system of bookmarking and retrieving electronic documents
Rudžionis et al. Investigation of voice servers application for Lithuanian language
Hocek VoiceXML and Next-Generation Voice Services
Rudžionis et al. Balso serverių taikymo lietuvių kalbai tyrimas.

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090917

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111011

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120116

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120228

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120517

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121218

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130109

R150 Certificate of patent or registration of utility model

Ref document number: 5179375

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees