SHOEISHA iD

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

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

Developers Summit 2023 Summer セッションレポート(AD)

大規模言語モデル(LLM)をアプリケーション開発で活用するには? グーグル・クラウドが基礎から解説

【A-2】大規模言語モデル(LLM)を機械学習アプリケーションで活用するための基礎知識と現実的なアプローチ

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

Q&Aシステムで理解する「埋め込み表現」と「ベクトル検索」

 たとえば、膨大な製品カタログの情報から、製品に関するQ&Aシステムを実現するシステムを作るには「埋め込み表現(エンベッディング)」や「ベクトル検索」といった技術と組み合わせるパターンがよく紹介されているという。中井氏は、その身近な例としてGoogle検索のふるまいを紹介した。

 現在のGoogle検索にLLMは組み込まれていないが「クラウドの特徴」と検索すると、その質問に対する明確な答えの文章がハイライトされて表示される。以前の検索は単語レベルのマッチングだったが、今は検索の意図や意味にあった情報を探し出すことができるようになっている。

 Google検索の仕組みは公開されていないが、中井氏は「エンベッディングやベクトル検索が使われていることが想像できる」と語る。

 質問したい人が検索キーワードを入力すると、エンベッディングを経てコンテキストを解析し、ベクトルに変換する。そしてベクトル検索を用い、関連性の高い単語が含まれている部分をユーザーに提示する。この2つの技術を活用すれば、LLMを使わなくてもQ&Aシステムを実現することができる。

製品カタログQ&AはLLMなしでも実現可能
製品カタログQ&AはLLMなしでも実現可能

 これにLLMを追加すれば、チャットボットと会話しながらより自然に回答を得られるシステムが考えられる。会話文からLLMが検索したい内容をまとめて、エンベッディング処理に渡す。そしてベクトル検索の処理で返ってきたカタログの情報をLLMがまとめて自然な文章として回答するような仕組みだ。このように、LLMは人と自然言語でやりとりするインタフェースをより使いやすくするために利用できるのだ。中井氏は、Google Cloudでも、今回の要求のような製品カタログをベースにした製品Q&Aの実装が可能だという。

 続いて下田氏は、LLMの部分に使える「PaLM for Text and Chat」を紹介した。プロンプトエンジニアリングを通じてPaLM 2モデルを使ったチャットボットのようなものが作れる。自社のデータを使った固有のチューニングも可能となる。チューニングにはコストと精度のバランスの取れた比較的軽量な仕組みを提供しているという。

グーグル・クラウド・ジャパン合同会社 Google Cloud Japan AI/ML 事業開発部長
グーグル・クラウド・ジャパン合同会社 Google Cloud Japan AI/ML 事業開発部長

 エンベッディングを行うサービスが「Embeddings API」だ。テキストや画像を入力すると、そのデータの持つ「意味」を抽出できる。また、意味の近いものを高速に探すベクトル検索には「Vertex AI Matching Engine」というサービスがある。下田氏は、メルカリUSから提供された商品データカタログで、テキストや画像を用いて人の感覚で「似ている」と感じるような商品を検索できるシステムのデモンストレーションを行った。

 「T shirts」と入力すると、Tシャツの画像が並び、その後「With Dancing People」と入れると、踊っている人の柄のTシャツが並んだ。「T shirts」を「cups」に変えると、踊っている人の柄のカップが表示された。

メルカリUSの商品データ検索デモのアーキテクチャー
メルカリUSの商品データ検索デモのアーキテクチャー

 「このデモのポイントは2点あります。メルカリのサービスの性質上ですね、いわゆる商品マスターみたいなものがなく、出品ユーザーが必ず商品情報を記述しているわけではない条件でもこれらの情報を見た目でヒットさせたことが1つ。もう1つは、100万点ぐらいあるベクトルに対してかなり速いレスポンスで返ってくることです」(下田氏)

 このデモでは、データがテキストであれ画像であれ、一度その意味を抽象的な埋め込みベクトルに変換すると、そこから先はベクトルマッチングのシステムを用いて同様の処理が可能となった。中井氏は、LLMに固執すると、扱えるデータは自然言語に限られ、画像処理ができないことを指摘し、なんでもLLMで処理しようとせず、既存の技術を組み合わせることの重要性をあらためて強調した。

 Google CloudのAI/MLソリューションは、SaaS、PaaS、IaaSの層でさまざまなものが展開されている。フルスクラッチで独自のシステムを作ることもできれば、決まった用途ならSaaSで対応も可能だ。下田氏は、その代表として「Generative AI App builder(Enterprise Search)」を紹介した。Google Cloudのサービスを組み合わせてカタログ検索をするには、ベクトルの長さやカタログ情報の分割など変動する部分が存在し、調整が難しい。Enterprise Searchであれば、生成AIのテクノロジーを組み込み、スケーラブルな検索システムを手軽に作れるという。

 下田氏は「典型的なユースケースとして、検索や会話が頭にも浮かぶと思います。こういったものをマネージドサービスという形で提供しています。ユーザーの皆様がやっていただくのは、データを入れて、少し設定するだけでご利用いただけます。よりアプリケーション開発に集中できようになります」

 中井氏はLLMの技術はまだ黎明期にあり、さまざまな技術と組み合わせたアーキテクチャーのパターンが考えられるため「現在は失敗を経験しながら知見をためていく段階」であるとし、最後にGoogle Cloudの利用と、メンバー限定のウェビナーなどが配信されるプログラム「Google Cloud Innovators」への参加を促した。

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

  • X ポスト
  • このエントリーをはてなブックマークに追加
Developers Summit 2023 Summer セッションレポート連載記事一覧

もっと読む

この記事の著者

丸毛 透(マルモ トオル)

インタビュー(人物)、ポートレート、商品撮影、料理写真をWeb雑誌中心に活動。

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

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

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

森 英信(モリ ヒデノブ)

就職情報誌やMac雑誌の編集業務、モバイルコンテンツ制作会社勤務を経て、2005年に編集プロダクション業務やWebシステム開発事業を展開する会社・アンジーを創業。編集プロダクション業務においては、IT・HR関連の事例取材に加え、英語での海外スタートアップ取材などを手がける。独自開発のAI文字起こし・...

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

提供:グーグル・クラウド・ジャパン合同会社

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

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

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/18138 2023/09/08 12:00

おすすめ

アクセスランキング

アクセスランキング

イベント

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

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

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

メールバックナンバー

アクセスランキング

アクセスランキング