Download presentation
Presentation is loading. Please wait.
Published byふじきみ ひでやま Modified 約 7 年前
1
担当:西本卓也(東京大学) 2009年8月 nishi@hil.t.u-tokyo.ac.jp
実習:音声対話 担当:西本卓也(東京大学) 2009年8月 説明する。動作確認。 演習課題の説明。演習。途中で1回説明をはさむ。
2
演習の流れ 音声入出力に関する準備 対話マネージャの基本操作 対話シナリオの変更・拡張 片付け(必須) ヘッドセットマイク
サンプル対話の実行 対話シナリオの変更・拡張 VXMLファイルのコピー・編集・実行 片付け(必須) 一時ファイルの消去
3
ヘッドセットの準備 ヘッドセットマイクの接続 音量の設定 音声の取り込みテスト [音量コントロール] $ wavesurfer
赤帽子 - [サウンドとビデオ] にある 音声の取り込みテスト $ wavesurfer
4
実習:手順1 Galatea Dialog Studioの実行 終了(メニューからは終了できない)
$ cd /n/media/sp/galatea/DM $ ./galatea tests/vxml/form.vxml 対話例は後述(マイクOFFのまま) 終了(メニューからは終了できない) ターミナルにフォーカス指定して Ctrl+C
5
Dialog Studioの操作(1) アドレスボックス / [Go] [Validate] 実行中のファイル名または URL を表示
実行中の対話があれば終了して実行 [Validate] ファイル内容の文法などをチェック ただし実行時エラーはチェックできない 実行中の対話に影響を与えない
6
Dialog Studioの操作(2) [Pause] [Run] 実行中の対話を一時中断・再開
発話中の場合は、現在出力中の音声などを 出力し終えてから待機 注意:すぐに止まらないことがある [Run] 中断中の対話の再開
7
Dialog Studioの操作(3) [File] - [Open Local File...]
ダイアログからファイルを指定して実行 [Face] - [AgentEnable]/[AgentDisable] エージェントを一時的に表示・非表示 [Face] - [Texture]/[Wireframe]/... エージェントの表示方法を切替 [Mask] 顔と声を同時に切替える 制約:組み合わせは固定
8
Dialog Studioの操作(4) [Auto] - [AutoMove ON/OFF]
顔の制御を実行・停止 [Auto] - [AutoGaze ON/OFF] 視線の制御を実行・停止 [Auto] - [EmotionSpeak ON/OFF] 感情切替による声の制御を有効化・無効化 [Expression] 感情を切替(AutoMove ONにて有効)
9
Dialog Studioの操作(5) [Demo] - [Nod]/[Say Hello]
うなずく動作や音声合成のデモ [Demo] - [Demo1]/[Demo2] 定義済み対話デモ 内容を閲覧するには 新しいターミナルを開いて... $ less tests/vxml/kani.vxml $ less tests/vxml/form.vxml
10
実習:手順2 マイクをONにする アドレスボックスを確認 [Go]を押して対話
/n/media/sp/galatea/DM/tests/vxml/form.vxml [Go]を押して対話
11
実習:手順3 対話例(form.vxml) ガラティアカフェにようこそ テイクアウトですか? お飲み物は何になさいますか?
「はい」「いいえ」 お飲み物は何になさいますか? 「コーヒー」「紅茶」 参考:「コーヒーのホット」なども受理可能 ホットとアイスのどちらがいいですか? 「ホット」「アイス」
12
実習:手順4 ファイルの実行(演習課題1) 修正するための準備(演習課題2・3)
$ ./galatea tests/vxml/ticket.vxml 修正するための準備(演習課題2・3) $ cd tests/vxml $ mkdir ~/dm $ cp ticket.vxml ~/dm/ticket2.vxml $ chmod 755 ~/dm/ticket2.vxml $ cp ticket.vxml ~/dm/ticket3.vxml $ chmod 755 ~/dm/ticket3.vxml
13
実習:手順5 演習課題1=ticket.vxml(元ファイル) 演習課題2=ticket2.vxml(コピー)
動作確認(さまざまな駅名や枚数で) grammar要素の確認 演習課題2=ticket2.vxml(コピー) 席種を尋ねる対話とその確認対話を追加 グリーン車、指定席、自由席 演習課題3=ticket3.vxml(コピー) 出発駅と到着駅が同じでないようにチェック
14
実習:手順6 ticket2.vxmlの編集(3も同様) 修正したファイルの実行 $ gedit geditの文字コード設定
[編集] - [Preferences] → [保存] 可能な場合は元のファイルのエンコーディング(s) 可能な場合は現在のロケール(r) 修正したファイルの実行 $ ./galatea ~/dm/ticket2.vxml
15
注意事項(1) 日本語入力 XMLの規則(HTMLより厳しい) [Shift]+[スペース]で切替 タグの入れ子構造
大文字小文字、全角半角の区別 属性の値は""で囲む [Validate]で確認できる
16
注意事項(2) XMLを読みやすくするために Dialog Studioが不正終了したら
<!-- と --> ではさまれた部分はコメント ただし入れ子にはできない 改行や空行・字下げは自由に行ってよい Dialog Studioが不正終了したら 不要プロセスが残る場合がある 不要プロセスの消去: $ ./fin
17
ヒント field要素のname属性と一致させるもの 出力の<prompt>要素を省略できない場合
token要素のslot属性(grammar) value要素のexpr属性(prompt) 出力の<prompt>要素を省略できない場合 <field>の中で用いる場合 属性指定:<prompt bargein="false">など 読み上げ方を指定する要素を含む場合 GalateaTalk(JEIDA)およびW3Cに準拠
18
演習課題2の回答例 <!-- 演習2:field "num" の後に追加 -->
<field name="type"> <prompt>席種をどうぞ</prompt> <grammar version="1.0" root="#seat"> <rule id="seat"> <one-of> <item> <token sym="ぐりーんしゃ" slot="type"> グリーン車 </token> </item> <item> <token sym="していせき" slot="type"> 指定席 </token> </item> <item> <token sym="じゆうせき" slot="type"> 自由席 </token> </item> </one-of> </rule> </grammar> </field> <field name="confirm"> <prompt> <value expr="source"/>駅から <value expr="dest"/>駅まで <value expr="type"/>を <!-- 演習2:この行を追加 --> <value expr="num"/>枚ですね。 よろしいですか </prompt>
19
演習課題3の回答例 <filled> <!-- 演習3:filledに追加(ここから) -->
<if cond="source == dest"> 不適切な入力です。 <clear namelist="source dest"/> </if> <!-- 追加(ここまで) --> <if cond="confirm == 'y'"> 御購入ありがとうございました。 <else/> もうしわけありません。最初からやりなおして下さい。 <clear/> </filled>
20
実習:手順7(最後) ログアウトする前に実行してください プロセスの終了 一時ファイルの消去 シャットダウンしてください
$ ./fin 一時ファイルの消去 $ ./deltmp シャットダウンしてください ヘッドセットを回収します
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.