サーチボード(文書検索タイプ)ヘルプ

Search Board Help

GCP サービスアカウント設定

このステップ(画面)は、セルフサービスプランのみの機能です。フルサービスプランでは、このステップ(画面)は、ありません。

この画面では、Google Cloud Platform(GCP)のサービスアカウントの選択と、ボードの作成に必要な Google の各種 API を有効にします。

GCP サービスアカウント選択

サーチボード(文書検索タイプ)は、お客さまの GCP プロジェクトに、BLOCKS が環境を自動で構築し運用します。BLOCKS から GCP プロジェクトを操作するためには、そのプロジェクトに対してオーナー権限を持つ GCP サービスアカウントが必要です。

ここでは、GCP プロジェクトに対してオーナー権限を持つ GCP サービスアカウントを選択してください。

GCP サービスアカウントの作成については、基本操作ガイドの「Google Cloud Platform のサービスアカウントキーを作成する」を参考にしてください。このページの作成例では、編集権限を指定していますが、その部分でオーナー権限を指定してください。

API の有効化

確認]ボタンの前にチェックマーク()が付いていない API がある場合は、以下の操作を行います。

  1. が付いていない API 名横の をクリックします。
  2. 別タブに GCP コンソールの画面が開きます。
  3. GCP コンソール画面内の[有効にする]ボタンをクリックします。
  4. API が有効化されたら、GCP コンソールの画面を閉じて、BLOCKS の画面に戻ります。

すべての API について、上記操作が終わったら、[ 確認]ボタンをクリックします。[ 確認]ボタンの前に が付くことを確認してください。

もし、 が付かない場合は、しばらく時間をおいてから[ 確認]ボタンをクリックしてください。状況によっては、すぐには が付かない場合もあります。その場合は、 が付くまで、以下の操作を繰り返してください。

  1. しばらく時間をおく
  2. 確認]ボタンをクリックする

error_outline が表示され続ける原因としては、API が有効化されていないことの他に、以下のことが考えられます。

  • GCP サービスアカウントの役割に[編集者]権限が付与されていない。

    GCP コンソールのメニュー(GCP コンソール左上の )の[IAM と管理]をクリックし、[IAM]で確認します。もし、役割が[編集者]となっていない場合は、[編集者]を選択します。

  • 対象の GCP プロジェクトの課金が有効になっていない。

    GCP コンソールのメニュー(GCP コンソール左上の )の[お支払い]で確認します。もし、課金が有効になっていない場合は、課金を有効にします。

オプション設定

この画面では、Google Cloud Platform(GCP)上に構築する検索エンジン用のマシンスペックや簡易検索アプリの利用有無などが設定できます。

ボード識別子設定

BLOCKS が自動で構築する GCP 上の各種リソースに付与する識別子を設定します。管理しやすいように、わかりやすい名前を付けてください。なお、省略はできません。

識別子の入力規則は、以下のとおりです。

  • 英小文字と数字のみ
  • 1 文字以上 14 文字以内

マシン設定

以下の説明を参考に各値を設定してください。

項目 説明
ノード数

マシン数を 1 以上の奇数数(1, 3, 5, 7, . . .)で設定します。

開発時やお試し時は、ノード数 1 で構いませんが、本運用時はシステムの可用性を高めるためにノード数 3 以上を推奨します。

マシンタイプ

メモリサイズや仮想 CPU 数などの仮想マシンの構成を選択します。

マシンタイプについて詳しくは、Google のマシンタイプについてのドキュメント を参照願います。

Google のマシンタイプについてのドキュメント で紹介されている f1-micro / g1-small / n1-highcpu-2 は選択できません(マシンタイプの選択リストにありません)。

ディスクサイズ

ディスクサイズを 10 から 65536 の範囲の整数で設定してください。単位は、ギガバイト(GB)です。

ゾーン

検索エンジン用仮想マシンのゾーンを設定します。ゾーンについて詳しくは、Google のゾーンについてのドキュメント を参照願います。

現時点では、自作アプリから検索エンジンへのアクセスは、内部向けロードバランサー(Internal LB)経由となります。このため、自作アプリと検索エンジンは、同一ネットワーク・同一リージョン内のゾーンに配置されなければなりません。この点に留意して、ゾーンを選択してください。将来的には、HTTP(S)ロードバランサー経由でのアクセスが可能となるため、この限りではありません。

Google App Engine(GAE)上で動くアプリと連携させる場合(簡易検索アプリも含む)は、上記に加えて以下の点に注意してください。

  • GAE が使用できるゾーン(GAE アイコンが記されたゾーン)を選択してください。
  • GCP プロジェクト内に、すでに GAE で動くアプリがある場合は、そのアプリと同一リージョン内のゾーンを選択してください。

簡易検索アプリは GAE 上で動作するため、簡易検索アプリを利用する場合は上記の点に注意願います。

簡易検索アプリ設定

簡易検索アプリの設定を行います。

簡易検索アプリは、入力された質問を検索エンジンに問い合わせて、その結果を表示するだけのシンプルなアプリです。データさえあれば、自作アプリを用意せずに、検索性能や検索精度などを簡単に確認できます。

この簡易検索アプリを利用したい場合は、[GAE を利用する]のチェックボックスにチェックを付けます。

簡易検索アプリは、自由なタイミングで起動・終了ができます。サーチボード(文書検索タイプ)の作成と同時に簡易検索アプリを起動しておきたい場合は、[簡易検索アプリを起動する]のチェックボックスにもチェックを付けます。

簡易検索アプリの起動・終了は、サーチボード(文書検索タイプ)詳細の[簡易検索アプリ]でできます。

チェックボックスにチェックを付けた場合は、パスワードも設定します。このパスワードは、簡易検索アプリを利用するときに必要です。

データの関連付けのタイプが、「多 対 1」および「多 対 多」のケースには、対応していません。データの関連付けのタイプについては、「データ登録」の項を参照してください。

サーチボード詳細

この画面では、サーチボード(文書検索タイプ)の文書の登録・更新やボード設定情報の確認、ボードの削除などができます。

インデックス一覧

ボード(検索エンジン)には、下図の概念図のように複数のインデックスが作れます。

インデックス概略図

インデックスは、検索対象の文書(質問データ回答データ)と検索精度を高めるための辞書(ユーザー辞書同義語辞書除外ワード辞書)で構成されます。

インデックス一覧では、このインデックスの作成やインデックスごとに以下の操作ができます。

  • ステータスを確認する。

    インデックスのステータスが確認できます。ステータスの種類と意味は以下のとおりです。

    ステータス 説明
    作成中

    インデックスの作成中です。インデックスの作成が始まると、このステータスになります。作成処理が完了するまで、しばらくお待ちください。

    作成済み

    インデックスの作成が完了しました。このステータスになると、データの登録や簡易検索アプリを開くことができます。

    作成失敗

    インデックスの作成に失敗しました。失敗の原因を取り除き、インデックスを削除してから、インデックスを再度作成してください。

    失敗の原因としては、以下のいずれかが考えられます。

    • 辞書のパスが不正
    • 辞書の内容が不正
    • BLOCKS の障害

    BLOCKS の障害の可能性が高い場合は、辞書はそのままにしてインデックスを削除後、インデックスを再度作成してください。

    投入中

    データ(質問データ・回答データ)の登録中です。データの登録が始まると、このステータスになります。データ登録の完了まで、しばらくお待ちください。

    投入成功

    データの登録が完了しました。このステータスになると、登録したデータによる検索ができます。

    投入失敗

    データの登録に失敗しました。失敗の原因を取り除き、データを再度登録してください。

    失敗の原因としては、以下のいずれかが考えられます。

    • データのパスが不正
    • データの内容が不正
    • BLOCKS の障害

    インデックス詳細の更新履歴で、データ登録時のログが確認できます。原因究明時の参考にしてください。

    BLOCKS の障害の可能性が高い場合は、データを再度登録してください。

    削除中

    インデックスの削除中です。インデックスの削除が始まると、このステータスになります。削除処理が完了するまで、しばらくお待ちください。

    削除失敗

    インデックスの削除に失敗しました。しばらく時間をおいてから再度削除ボタンをクリックしてください。

  • 簡易検索アプリを開く。

    開く ]リンクをクリックすると、別タブで簡易検索アプリの画面が開きます。

  • インデックスの詳細を確認する。

    詳細を見る]リンクをクリックすると、インデックスの詳細が確認できます。詳しくは、「インデックス詳細」の項で解説しています。

  • 検索対象の文書の登録する。

    データを登録する]リンクをクリックすると、検索対象となる文書の登録・更新ができます。詳しくは、「データ登録」の項で解説しています。

  • インデックスを削除する。

    削除]ボタンをクリックすると、削除の確認のあと、このインデックスが即刻削除されます。削除後のインデックスの復元はできません。

インデックス作成

インデックスの作成では、[インデックス作成]ボタンをクリックして、インデックス名と同時に辞書の登録も行います。

  • インデックス名の規則
    • 半角英数字とハイフン(-)のみ
    • 先頭は英数字のみ
  • 辞書
    • 辞書の種類は、ユーザー辞書同義語辞書除外ワード辞書の 3 種類(フォーマットは後述)
    • 登録はいずれの辞書も任意
    • Google Cloud Storage(GCS)上の所定の場所(バケットおよびフォルダー)へ事前にアップロードしておく
      バケット

      ボード詳細の「このボードで使用しているリソース」の「Cloud Storage」の項目で示されているバケット。

      フォルダー

      analysis(固定)

      バケットは自動で作成されますが、フォルダーは自動で作成されません。この名称でフォルダーを作成してから、このフォルダーの直下へ各辞書をアップロードしてください。

ユーザー辞書

ユーザー辞書は、標準の辞書では正しく認識されない単語を登録するための辞書です。

たとえば、「コールセンター」という単語は、「コール」と「センター」に分割されます。これを「コールセンター」として 1 つの単語として認識させて検索したいときに使用します。また、1 つの単語を複数の単語に分割させて認識させたいときにも使用します。

ユーザー辞書のフォーマットは、以下のとおりです。

  • ファイル名はアスキー(ASCII)文字のみ指定可能
  • テキストファイル
  • 文字コードは、UTF-8 のみ
  • 改行コードは、CR+LF と LF に対応
  • 1 行で 1 つの単語について定義
  • 行フォーマット:
    複合語,複合語を分割した単語を列挙,分割後の各単語のフリガナを列挙,品詞
    
    • 複合語を分割した単語を列挙では、各単語を空白で区切って列挙
    • 分割後の各単語のフリガナを列挙も、同様に空白で区切って列挙
  • 使用例
    • 単語を分割させない例:
      コールセンター,コールセンター,コールセンター,カスタム名詞
      
    • 単語を分割させる例:
      バズマーケティング,バズ マーケティング,バズ マーケティング,カスタム名詞
      
同義語辞書

同義語辞書は、あいまい検索のための辞書です。

たとえば、「検索エンジン」と「サーチエンジン」という単語は別の語句です。どちらの単語を指定しても、双方の単語とマッチさせたいときに使用します。

同義語辞書のフォーマットは、以下のとおりです。

  • ファイル名はアスキー(ASCII)文字のみ指定可能
  • テキストファイル
  • 文字コードは、UTF-8 のみ
  • 改行コードは、CR+LF と LF に対応
  • 1 行で 1 つの同義語について定義
  • 行フォーマット:
    同義語 => 単語
    
    • 同義語は、複数指定できます。複数指定する場合は、カンマ(,)区切りで列挙します。
    • 単語も複数指定できます。複数指定する場合は、カンマ(,)区切りで列挙します。
  • 使用例
    • 「日本経済新聞」を「日経新聞」「日経」でマッチさせる例:
      日経新聞,日経 => 日本経済新聞
      
除外ワード辞書

除外ワード辞書は、検索の対象としない語句を登録するための辞書です。

除外ワード辞書のフォーマットは、以下のとおりです。

  • ファイル名はアスキー(ASCII)文字のみ指定可能
  • テキストファイル
  • 文字コードは、UTF-8 のみ
  • 改行コードは、CR+LF と LF に対応
  • 1 行に 1 つの除外ワードを定義
  • 以下の品詞は検索対象から外れてるため、この辞書での設定は不要
    • 接続詞
    • 助詞
    • 助詞-格助詞
    • 助詞-格助詞-一般
    • 助詞-格助詞-引用
    • 助詞-格助詞-連語
    • 助詞-接続助詞
    • 助詞-係助詞
    • 助詞-副助詞
    • 助詞-間投助詞
    • 助詞-並立助詞
    • 助詞-終助詞
    • 助詞-副助詞/並立助詞/終助詞
    • 助詞-連体化
    • 助詞-副詞化
    • 助詞-特殊
    • 助動詞
    • 記号
    • 記号-一般
    • 記号-読点
    • 記号-句点
    • 記号-空白
    • 記号-括弧開
    • 記号-括弧閉
    • その他-間投
    • フィラー
    • 非言語音
  • 使用例
    東京
    福岡
    

インデックス詳細

インデックス一覧の[詳細を見る]ボタンをクリックすると表示される画面です。インデックスの詳細が確認できます。

インデックス詳細の画面では、以下の情報が確認できます。

  • 基本情報
    • 簡易検索アプリ URL
      簡易検索アプリの URL が確認できます。URL をクリックすると別タブで簡易検索アプリの画面が開きます。
    • インデックス名
      インデックス名が確認できます。
    • ユーザー辞書
      登録したユーザー辞書の GCS URL が確認できます。
    • 同義語辞書
      登録した同義語辞書の GCS URL が確認できます。
    • 除外ワード辞書
      登録した除外ワード辞書の GCS URL が確認できます。
  • データ更新履歴
    データ更新履歴では、データの登録・更新の日時と、データ登録・更新時のログが確認できます。ログは、[ログを表示]リンクをクリックすると、確認できます。
  • 作成ログ
    インデックス作成時のログが確認できます。
  • 削除ログ
    インデックス削除時のログが確認できます。削除ログの確認は、インデックスの削除中とインデックスの削除に失敗した時のみ確認できます。

データ登録

データを登録する]リンクをクリックして、検索対象の文書(データ)を登録します。

登録するデータは、GCS 上の所定のバケット内へ事前にアップロードしておく必要があります。所定のバケットは、ボード詳細の「このボードで使用しているリソース」の「Cloud Storage」の項目で確認できます。

登録するデータは、バケット内にフォルダーを作成し、その中にアップロードできます。その場合、フォルダー名は、アスキー(ASCII)文字のみとしてください。

サーチボード(文書検索タイプ)では、検索対象となる文書を過去の質問と回答のデータに分けておき、これらを関連付けて管理する方式をとっています。なお、データを分けずに、すべての文書を回答データにまとめての登録もできます。

通常のケース
データを分けないケース

質問データと回答データの関連付けは、関連付け方によって以下のタイプに分けられます。

関連付けのタイプ 説明
1 対 0

回答データのみのため、関連はない。

1 対 1

双方のデータが 1 対 1 に対応している。

1 対 多

回答データは複数の質問に関連する可能性があるが、質問データは 1 件の回答にのみ関連する。

多 対 1

回答データは 1 件の質問にのみ関連するが、質問データは複数の回答に関連する可能性がある。

多 対 多

回答データは複数の質問に関連する可能性があり、質問データも複数の回答に関連する可能性がある。

質問データ

質問データのフォーマットは、以下のとおりです。

  • ファイル名はアスキー(ASCII)文字のみ指定可能
  • CSV 形式のテキストファイル
  • 文字コードは、UTF-8 のみ
  • 改行コードは、CR+LF と LF に対応
  • 各レコード(行)は、3 つのフィールドで構成
    フィールド 省略 説明
    質問 ID 不可

    質問を特定するための識別子です。

    識別子に指定できる文字は、半角英数字・ハイフン(-)・アンダースコア(_)です。

    文章 不可

    質問の文章です。空文字の指定は可能です。

    関連する回答 ID 不可

    質問に関連する回答データの回答 ID を指定します。

    複数の回答 ID に関連する場合は、コロン(:)区切りで ID を列挙します(例:a1:a3:a5)。

  • ファイルの先頭にヘッダ行が必要
    • 関連付けのタイプが「多 対 1」もしくは「多 対 多」の場合:
      id,body,target_ids
      
    • 関連付けのタイプが上記以外の場合:
      id,body,target_id
      
  • 例:
    • 関連付けのタイプが「多 対 1」もしくは「多 対 多」の場合:
      id,body,target_ids
      q1,"回答 ID a1 への質問文章その 1",a1
      q2,"回答 ID a1 への質問文章その 2",a1
      q3,"回答 ID a2 への質問文章",a2
      q4,"回答 ID a3, a4, a5 への質問文章",a3:a4:a5
      
    • 関連付けのタイプが上記以外の場合:
      id,body,target_id
      q1,"回答 ID a1 への質問文章その 1",a1
      q2,"回答 ID a1 への質問文章その 2",a1
      q3,"回答 ID a2 への質問文章",a2
      q4,"回答 ID a3 への質問文章",a3
      
回答データ

回答データのフォーマットは、以下のとおりです。

  • ファイル名はアスキー(ASCII)文字のみ指定可能
  • CSV 形式のテキストファイル
  • 文字コードは、UTF-8 のみ
  • 改行コードは、CR+LF と LF に対応
  • 各レコード(行)は、2 つのフィールドで構成
    フィールド 省略 説明
    回答 ID 不可

    回答を特定するための識別子です。

    識別子に指定できる文字は、半角英数字・ハイフン(-)・アンダースコア(_)です。

    文章

    回答の文章です。

    省略された場合は、空文字として扱います。

  • ファイルの先頭にヘッダ行が必要
    id,body
    
  • 例:
    id,body
    a1,"回答文章その 1"
    a2,"回答文章その 2"
    a3,"回答文章その 3"
    a4,"回答文章その 4"
    a5,"回答文章その 5"
    

接続情報

検索エンジンにアクセスするための IP アドレスが表示されます(ポート番号は、9200 固定)。

IP アドレス横の をクリックすると、IP アドレスがクリップボードへコピーされます。

この IP アドレスは、内部向けロードバランサー(Internal LB)のアドレスです。このため、検索エンジンへのアクセスは、同一ネットワーク・同一リージョン内からのみ可能です。

簡易検索アプリ

簡易検索アプリの情報が確認できます。

簡易検索アプリの有効・無効の切り替えもできます。

  • 簡易検索アプリが有効の状態では、[簡易検索アプリを無効にする]をクリックすると、簡易検索アプリを無効にできます。

  • 簡易検索アプリが無効の状態では、[簡易検索アプリを有効にする]をクリックすると、簡易検索アプリを有効にできます。

    簡易検索アプリを有効にする場合は、必ずパスワードの設定を求められます。一度、パスワードを設定していた場合でも、あらためて設定しなければなりません。

簡易検索アプリのパスワードを忘れた場合は、簡易検索アプリをいったん無効化して再び有効化することで、パスワードの再設定ができます。

ステータス欄で、簡易検索アプリの有効・無効の状態が確認できます。ステータスの種類と意味は以下のとおりです。

ステータス 説明
有効にしています

簡易検索アプリを有効にしている最中です。簡易検索アプリの有効化が始まると、このステータスになります。

有効

簡易検索アプリが利用可能です。

有効化に失敗しました

簡易検索アプリの有効化に失敗しました。以下の手順で、簡易検索アプリの有効化をやり直してください。

  1. 簡易検索アプリを無効にする]をクリックします
  2. ステータスが[無効]になるまで待つ
  3. 簡易検索アプリを有効にする]をクリックします
無効化しています

簡易検索アプリを無効にしている最中です。簡易検索アプリの無効化が始まると、このステータスになります。

無効 簡易検索アプリは利用できません。
無効化に失敗しました

簡易検索アプリの無効化に失敗しました。以下の手順で、簡易検索アプリの無効化をやり直してください。

  1. 簡易検索アプリを無効にする]をクリックします
  2. ステータスが[無効]になるまで待つ

設定情報

ボード作成時の設定情報が確認できます。

ボード名については、[ボード名を変更する]をクリックして、名称の変更ができます。

このボードで使用しているリソース

このボードで使用している GCP 上のリソースが確認できます。

これらのリソースは、お客さまの GCP プロジェクト上に作成されています。

これらのリソースは削除しないでください。削除するとサーチボード(文書検索タイプ)が機能しなくなります。

ボード削除

ボードを削除する]をクリックすると、削除の確認のあと、このボードが即刻削除されます(関連するリソースも削除されます)。削除後のボードは復元できません。

削除は、簡易検索アプリの有効化・無効化中にはできません。

削除にはしばらく時間がかかります。削除が完了するまで、BLOCKS の操作はできません。削除が完了するまで、そのままお待ちください。