Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

使いたくなる検索システムのUIをSlackBotで実現する

Elasticsearchと対話Botによる対話型の検索システム 第4回

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2017/01/27 14:00

 前回はElasticsearchへ大量のデータを効率よく登録できる並列処理を紹介しました。今回はElasticsearchから少し離れて、検索システムを提供する際に重要となるUIについて説明します。そして、開発者で愛用者が多いSlackを用いて単純な返答を行うシステムを作成します。

目次

対象読者

  • 現場の技術者で、自社や自身のプロジェクトで検索システムを作成する必要がある方
  • 環境差異の少ない検索システムを作成したい方

検証環境

  • 使用言語とバージョン:Python 3.5.0
  • 対応OS(バージョン): Mac、Windows、Linux(Vagrantが動作する環境)
  • 開発環境:Vagrant 1.8.5、Ubuntu Trusty 14.04(LTS)、Docker 1.12

検索システムにおけるUIの重要性について

 優秀な検索結果を出すシステムを作成しても、ユーザーに使ってもらわないとその検索結果は有効活用されません。また、ユーザーからのフィードバックを受けて改善することも難しくなります。適切なUIを提供することは、システムの有効活用および運用において重要となります。

図1 検索UIの比較
図1 検索UIの比較

 上図のようにSlackを使用すると気軽に検索でき、なおかつ検索結果にも余分な情報が入らないので分かりやすくなります。

Slackについて

 Slackは開発者の間で人気があるチャットツールです。以下のような特徴があります。

  • チームでも1対1でもストレスのないリアルタイムコミュニケーションが可能
  • 過去のやり取りを保存して検索が可能
  • 画像などさまざまな種類のファイルを気軽に共有できる
  • 他のサービスと連携することが可能
  • カスタマイズで絵文字を追加することができる

 今回はこのSlackのBotを用いて検索システムを使いやすくするUIを作成します。Slackを利用するメリットは以下の通りです。

  • 常時使用しているので好きな時に検索できる
  • 検索のためのコマンドを入力する必要がない
  • 開発者のためのAPIが多数用意されている

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

著者プロフィール

  • WINGSプロジェクト 大串 正矢(オオグシ マサヤ)

    <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂...

  • 山田 祥寛(ヤマダ ヨシヒロ)

    静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for ASP/ASP.NET。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「入門シリーズ(サーバサイドAjax/XMLD...

バックナンバー

連載:Elasticsearchと対話Botによる対話型の検索システム
All contents copyright © 2005-2018 Shoeisha Co., Ltd. All rights reserved. ver.1.5