Assessing Task-based Chatbots: Snapshot and Curated Datasets for Dialogflow
本論文は、実証研究のための精選されたリソースの不足に対処するため、それぞれ1,788個および185個のDialogflowチャットボットで構成される2つのデータセットであるTOFU-DとCODを紹介するが、予備的な分析では、テストの網羅性における重大な欠落や頻発するセキュリティ脆弱性が明らかになっており、これらはチャットボットの品質とセキュリティに関する体系的なマルチプラットフォーム研究の必要性を強調している。
原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む
チャットボットの世界を、巨大で賑やかな都市として想像してみてください。長い間、より優れた、より安全で、より信頼性の高いチャットボットを構築する方法を研究している研究者たちは、この都市をナビゲートしようとしてきましたが、非常に不完全な地図を使って作業してきました。彼らは主に、いくつかの小さなオープンソースの街区(例えば「Rasa」地区)ばかりを見ており、重厚な業務レベルのチャットボットが存在する、大規模な商業中心街については、ほとんど探索してきませんでした。
この論文は、ようやくその商業中心街全体のスナップショットを撮ることに決めた、都市計画チームのようなものです。彼らが何を行ったのかを、簡単に説明します。
1. 大規模なスナップショット (TOFU-D)
研究者たちは、GitHub(人々がコードを保存する巨大なオンラインライブラリ)へ行き、「Dialogflow」とラベル付けされたものをすべて探しました。Dialogflowは、企業がチャットボットを構築するために使用する、Google製の人気のある商用ツールです。
- 探索: 彼らは12,000を超える潜在的な「建物」(リポジトリ)からスタートしました。
- フィルタリング: 彼らは、その多くが単なる空き地や建設現場であり、実際のチャットボットではないことに気づきました。ノイズを取り除いた結果、1,788個の実際の、動作するチャットボットの「建物」を見つけ出しました。
- 結果: 彼らは TOFU-D と呼ばれるデータセットを作成しました。これは、特定の日にその地区で見つかったすべてのチャットボットの、巨大で未編集の写真アルバムだと考えてください。それは生の現実を示しています。あるものは小さく、あるものは巨大で、あるものは乱雑であり、またあるものは素晴らしいものです。
2. キュレーションされたツアー (COD)
1,788個ものチャットボットを見るのは圧倒される作業ですし、その多くは単なる「おもちゃ」の例や壊れたプロトタイプに過ぎません。真剣な研究に役立てるために、チームは COD という、より小規模な第2のデータセットを作成しました。
- 選定: 彼らは美術館のキュレーターのように振る舞いました。単にランダムにチャットボットを選んだのではなく、実際に何か興味深いことを行っているものを選びました。彼らが注目したのは、以下のようなチャットボットです:
- 本物の会話を行っているもの(単なるあらかじめ書かれた回答のリストではなく)。
- 外部サービスに接続しているもの(例えば、レストランのボットが実際にメニューのデータベースをチェックしているなど)。
- 英語で書かれているもの(研究者が理解できるようにするため)。
- GitHubのページに「スター」が付いているほど人気があるもの。
- 結果: 彼らは 185個の高品質なチャットボット に辿り着きました。これは彼らの「殿堂入り」コレクションであり、ボットがどのように機能し、どこで失敗するかを研究するための完璧なテスト対象となるよう設計されています。
3. 都市で見つけたこと
研究者たちがこれらのチャットボットの中を歩き回ったとき、この都市の「建築」について興味深いことに気づきました。
- 言語の混在: ほとんどのチャットボットは英語を話しますが、この都市は驚くほど多様です。オープンソースの街区では誰もが主にPythonを使っていますが、この中のコードは多くの異なる言語(JavaScript、Python、Javaなど)で書かれています。
- 複雑性: キュレーションされたチャットボット(COD)は、はるかに複雑でした。それらは単に「こんにちは」や「さようなら」と言っているだけではありません。実際にタスクを実行し、クラウドサービスに接続し、実際のユーザーデータを処理していました。
- 「Google」との接続: 多くのこれらのチャットボットは、Google独自のツール、例えばGoogleアシスタントとシームレスに連携するように構築されています。これは、オープンソースの街区ではあまり見られない機能です。
4. 安全性検査(「Bandit」と「Botium」によるチェック)
これらのチャットボットが安全で信頼できるかどうかを確認するために、研究者たちは、建築検査員や品質管理マネージャーのように、2つの素早いテストを実行しました。
- 品質チェック (Botium): 彼らは、テストケースを自動生成しようと試みました(チャットボットが壊れないかを確認するためにロボットが話しかけるようなテストです)。その結果、テストが不足していることが多いことが分かりました。チャットボットは単純な質問に答えるのは得意ですが、ユーザーが「こんにちは」と言ったり、予期しないことを言おうとしたり、あるいは以前言ったことを覚えておく必要がある場合に、しばしば失敗しました。それは、直線道路では素晴らしい走行性能を見せるものの、最初の停止標識でエンストしてしまう車を見つけるようなものでした。
- セキュリティチェック (Bandit): 彼らは、コード内のセキュリティ上の欠陥を探しました。彼らは、多くのチャットボットに「開いたドア」があることを発見しました。例えば:
- 一部のチャットボットは、本来の接続先だけでなく、あらゆるネットワークからの接続を待ち受けていました。
- 一部は、実行されるべきではないコードの実行を許可していました。
- また、リクエストのタイムアウト設定を忘れる(システムをフリーズさせる可能性がある)ことや、脆弱な乱数生成器を使用することといった、よくあるミスも見つかりました。
結論
この論文の要点は、研究者はもはや単純なチャットボットだけを研究していてはならないということです。チャットボットの世界は巨大で多様です。これら2つの新しいデータセット、すなわち大規模なスナップショット (TOFU-D) と高品質なキュレーションリスト (COD) を提供することで、著者たちは研究コミュニティに対して、より優れた地図と、より優れたテスト対象を提供しています。
彼らはこれらのチャットボットが完璧だと言っているのではありません。実際、彼らのテストは、テストとセキュリティにおいて重大な欠陥があることを示しています。しかし、明確で、大規模で、多様な実例のコレクションを持つことで、研究者たちは、少数の小さな例に基づいて推測するのではなく、それらの欠陥を体系的に修正し始めることができるようになるのです。
自分の分野の論文に埋もれていませんか?
研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。