Upgrade to Pro — share decks privately, control downloads, hide ads and more …

いまだから「検索」を語ろう! SharePoint FAST Search から Micros...

いまだから「検索」を語ろう! SharePoint FAST Search から Microsoft Search セマンティックインデックスまで / Let's talk about search now

Takashi Shinohara

December 12, 2023
Tweet

More Decks by Takashi Shinohara

Other Decks in Technology

Transcript

  1. 自己紹介 篠原 敬志 (Takashi Shinohara) アバナード株式会社 グループ マネージャー Power Platform

    ソリューション アーキテクト & スクラム マスター Microsoft MVP for M365 (M365 Development) FY23 Microsoft Top Partner Engineer Award (Biz Apps) Japan M365 Dev User Group 運営
  2. RAG (Retrieval Augmented Generation) User Application AI Search Storage Account

    OpenAI Service Response Search Chat Completion Crawl Request
  3. 単純な検索 (SQL LIKE 文) の流れ AI に関する情報が知りたい… SELECT * FROM

    documents WHERE content LIKE '%AI%' id content 2 生成 AI の活用方法教えます!… 5 Airbnb を使った宿泊施設の予約方法… 7 ハイチ共和国 (Haiti) はカリブ海…
  4. 単純な検索 (SQL LIKE 文) の問題点 パフォーマンス インデックスが使用されない フルスキャンとなりとてつもなく時間がか かる 負荷

    フルスキャンであればサーバーも高負荷 となりほかのクエリにも影響が出る 最悪の場合はシステムが止まる 精度 条件一致したものをすべて返すのでど れが求める情報かがわからない 全然関係のない内容でもキーワードさ え入ってれば引っかかってしまう 検索としては使えない
  5. フルテキスト検索 (全文検索) パフォーマンス 負荷 精度 検索データベース もとのデータベースとは別に検索に特化 したデータベースを作成する 定期または即時のタイミングでデータを 同期

    (クロール) する 検索エンジン テキストをそのまま扱うのではなく事前 に分割して検索しやすくする 形態素解析や N-gram など スコアリング 検索キーワードが出現する頻度など関 連性の高いテキストが優先的に検索 結果として出てくるようにする
  6. SharePoint における検索の歴史 MOSS 2007 • Microsoft Search Server (MSS) を使

    用したエンタープライ ズ検索 SharePoint 2010 • Microsoft FAST Search Server for SharePoint (FS4SP) の導入 • 現在に至るまでの SharePoint 検索の 基礎 SharePoint 2013 • FAST Search が SharePoint の標準 機能に SharePoint Online • SharePoint Online からオンプレミスの SharePoint を検 索 (クラウド ハイブ リッド検索) できるよ うに Microsoft Search • Microsoft 365 全 体の検索サービスに • 外部データを検索す ることも可能に (Microsoft Graph コネクタ)
  7. SharePoint 検索: クロール フル クロール 対象のデータソースをすべてクロールする 時間がかかる & 負荷がかかるので夜間や土日にスケジュールすることが多い 増分クロール

    フル クロールの間の差分を更新するクロール (既定は 4 時間) 継続的クロール SharePoint 2013 から追加された機能 増分クロールよりも短い間隔 (既定は 15 分) でクロールする セキュリティ クロール インデックスの ACL を更新するクロール (増分クロール時に実施)
  8. SharePoint 検索: 管理プロパティ リストのすべての列は自動的にクロールされたプロパティとして管理される 検索対象にするにはクロールされたプロパティと管理プロパティをマッピングする 特徴 説明 検索可能 プロパティのフルテキスト検索を可能にする クエリ可能

    プロパティのクエリ検索 (KQL または FQL) を可能にする 取得可能 プロパティの検索結果としての表示を可能にする 絞り込み可能 プロパティの Web パーツからの絞り込みを可能にする 並べ替え可能 プロパティの並べ替えを可能にする
  9. SharePoint 検索: 未使用の管理プロパティ 種類 複数 クエリ 検索 取得 絞り込み 並べ替え

    名前の範囲 日付 X Date00 ~ Date09 X X X X X RefinableDate00 ~ RefinableDate19 X X X X RefinableDateInvariant00 ~ RefinableDateInvariant01 X X X X RefinableDateSingle00 ~ RefinableDateSingle04 10 進数 X Decimal00 ~ Decimal09 X X X X X RefinableDecimal00 ~ RefinableDecimal09 倍精度浮動小数点数 X Double00 ~ Double09 X X X X X RefinableDouble00 ~ RefinableDouble09 整数 X Int00 ~ Int49 X X X X X RefinableInt00 ~ RefinableInt49 文字列 X X X X X RefinableString00 ~ RefinableString199 X X X X X RefinableStringFirst00 ~ RefinableStringFirst39 X X X X X RefinableStringLn00 ~ RefinableStringLn09 X X X X RefinableStringWbOff00 ~ RefinableStringWbOff49 X X X X X RefinableStringWbOffFirst00 ~ RefinableStringWbOffFirst49
  10. SharePoint 検索: KQL KQL = キーワード クエリ 言語 構文 返される値

    author:"John Smith" John Smith によって作成されたコンテンツ項目を返します filetype:docx ファイルの種類が Microsoft Word (docx) であるコンテンツ項目を返します filename:budget.xlsx budget.xlsx というファイル名を持つコンテンツ項目を返します
  11. SharePoint 検索: FQL FQL = FAST クエリ言語 構文 返される値 body:string("hello

    world", mode="and") 本文に hello かつ world が含まれるコンテンツ項目を返します
  12. SharePoint 検索から Microsoft Search への進化 Microsoft 365 のあらゆるものを検索 ドキュメント、メール、チャット、ニュース、ビデオの検索 個人に最適化された検索

    Microsoft Graph の分析情報を使用して関連性の高い情報を表示 Microsoft Bing との統合 Microsoft Bing からの社内情報の検索
  13. Azure AI Search (Azure Cognitive Search) ノーコードで検索機能を構築できる (インデックス、インデクサ、スキル セット) セマンティック

    ランカーによるフルテキスト検索の精度向上 ハイブリッド検索のサポート API 経由でのアクセス (データベースにはアクセスできない) プラン (SKU) の変更ができない
  14. Azure Cosmos DB for MongoDB vCore Microsoft Ignite 2023 で一般提供開始

    似たような名前の Azure Cosmos DB for MongoDB RU ではベクトル検索はできない 低レイヤーなのでプログラミングは必須
  15. Semantic Index for Copilot Copilot for Microsoft 365 を持つ組織向けに Microsoft

    Search でセマンティック インデックス が作成される見込み