SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

自然言語対話エンジン「Answers Anywhere」で実現する使いやすいUI(AD)

対話しながら検索できるコンシェルジェ風アプリの実装

自然言語対話エンジン「Answers Anywhere」で実現する使いやすいUI 第3回

  • このエントリーをはてなブックマークに追加

5. エージェント・ネットワークの構築

新規プロジェクト作成

 それではエージェント・ネットワークの構築を始めます。Windowsの[スタート]メニュー-[すべてのプログラム]-[Answers Anywhere Platform 5.2.0]-[Agent Network Development Environment]の順に選択し、Answers Anywhereの開発環境であるANDEを起動します。

 まず新規のプロジェクトを作成します。メニューの[File]-[New]-[Project]の順に選択すると「New Project」ダイアログが表示されます(図3)。

図3 新規プロジェクト作成ダイアログ
図3 新規プロジェクト作成ダイアログ

 以下の項目を入力し[OK]を押すと指定したフォルダ以下にプロジェクト名と同名のフォルダが作成され、そこにエージェント・ネットワークのファイルが保存されます。

  • Project Name:RestaurantSearch
  • Project Folder:任意の保存先フォルダ

 ANDEの画面上には図4の初期エージェント・ネットワークが表示されます。

図4 初期エージェント・ネットワーク
図4 初期エージェント・ネットワーク

 次にエージェント・ネットワークで日本語が使えるようにする設定をします(注1)。メニューから [Edit]-[Set Locale]を選択すると「Set Network Locale」ダイアログが表示されます(図5)。Default Locale を ja_JP に変更し[OK]を押します。この設定により、単語最小長、文字コード範囲、単語分割モードなどが日本語処理に適した値に調節されます。ここまではエージェント・ネットワークを初期構築する場合の共通手順となります。

図5 ロケールの設定ダイアログ
図5 ロケールの設定ダイアログ

注1

 バージョン5.2の場合、New Project ダイアログで選んだロケールが効かないという問題があるのでこの設定が必要です。

エージェントの配置

 エージェント・ネットワークの編集画面の上で右クリックし[New agent]を選択すると新規エージェント作成のダイアログが表示されます。「Name」にエージェント名を指定して[OK]を押すとエージェントが配置されます。

図6 新規エージェントの配置
図6 新規エージェントの配置

 この手順を繰り返し、リスト2で決めた処理の最小単位をすべてエージェントとして配置します。配置後のエージェント・ネットワークを図7に示します。

図7 エージェントを配置したネットワーク
図7 エージェントを配置したネットワーク

エージェントの役割を決める

 配置したエージェントは何も定義を持たない空のエージェントです。次のステップではこれらに役割を与えます。リスト2ではCommandやObjectなどの区分を決めて分割しましたが、この区分が役割に相当します。「検索」エージェントを右クリックしてサブメニューを出し、[Apply Template]を選択してください。「開く」ダイアログが開くので、command.templateを選択し[開く]を押します。最後に「Template Editor」ダイアログが開くので[了解]を押すと「検索」エージェントにCommandという役割が与えられ、というアイコンで表示されます。

図8 エージェントへの役割設定(ポリシーテンプレートの設定)
図8 エージェントへの役割設定(ポリシーテンプレートの設定)

 同様に、「レストラン」エージェントにはobject.templateを選択してObjectの役割、「エリア」「ジャンル」「星」にはfield.templateを選択してFieldの役割を与えます。それぞれアイコンはになります。どのエージェントがどの役割を持っているのか視覚的に分かりやすいですね。

図9 エージェントに役割を設定したネットワーク
図9 エージェントに役割を設定したネットワーク

次のページ
エージェントのパラメータ設定

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
自然言語対話エンジン「Answers Anywhere」で実現する使いやすいUI連載記事一覧

もっと読む

この記事の著者

アイエニウエアソリューションズ株式会社 伊藤 純一(イトウ ジュンイチ)

アイエニウェア・ソリューションズ株式会社 シニアエンジニア。8ビットの時代からコンピュータに触りはじめBASIC、アセンブラ、C言語などを独習。サンマイクロシステムズ入社の年にJavaが発表され、そこでJavaによる金融系、官公庁系のシステム開発を中心に手がける。その後外資系ベンチャーのデジマ・ジャ...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/4446 2009/10/16 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング