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

DataStaxの生成AIへのアプローチと顧客のAI活用事例

 DataStaxの生成AIへのアプローチと顧客のAI活用事例

DATASTAX JAPAN

September 04, 2023
Tweet

More Decks by DATASTAX JAPAN

Other Decks in Technology

Transcript

  1. ©2023 DataStax. – All rights reserved
 DataStaxの 生成AIへのアプローチと 顧客のAI活用事例 


    河野泰幸<[email protected]> - プリセールスアーキテクト
 
 
 【DataStax Japan Webinar】 2023年8月31日

  2. ©2023 DataStax. – All rights reserved
 2
 はじめに:本ウェビナーについて 本ウェビナーは、録画されたビデオの配信となります。
 


    
 8/31 オンラインで参加の方々へ
 
 ご覧のプラットフォームの「Ask Question」からご質問いただくことが可能です。 
 ご覧の全ての方々へ
 
 ご質問・デモ・ご商談のご依頼は、[email protected]へお問合せください。
  3. ©2023 DataStax. – All rights reserved
 DataStaxのご紹介 本社
 
 Santa

    Clara, CA
 
 2010年4月創業
 
 Santa Clara • London • Paris • 
 Singapore • Tokyo •
 Sydney • Wellington
 
 
 
 
 オープンソースを基盤とした
 テクノロジースタックを
 エンタープライズ向けソリューション
 として提供
 DATASTAX JAPAN 2017年法人設立
  4. ©2023 DataStax. – All rights reserved
 Apache Cassandra オープンソース NoSQLデータベース


    分散アーキテクチャ
 ワイド カラム データ モデル
 低レイテンシ/ 無限のスケール
 単一障害点のない高可用性 

  5. ©2023 DataStax. – All rights reserved
 Apache Pulsar オープンソース
 メッセージング/ストリーミング


    ミドルウェア
 分散アーキテクチャ
 クラウドネイティブ設計
 保証されたメッセージ配信 
 軽量サーバーレス関数フレームワーク 
 階層型ストレージオフロード 

  6. ©2023 DataStax. – All rights reserved
 サンプルアプリ 9
 https://github.com/YoshiyukiKono/semantic-text-search Astra

    DBとColaboratory (※)の組み合わせのみ で実行可能
 
 ※ Colaboratory (Colab): Googleの提供する、環境構築なしでブラウザ上で、 Pythonを記述・実行できる環境。 

  7. ©2023 DataStax. – All rights reserved
 ©2023 DataStax. – All

    rights reserved
 アジェンダ Cassandraの機械学習活用事例
 DataStax顧客のAI活用事例
 生成AIを企業の活動に活用する方法
 DataStaxによる生成AIへのアプローチ

  8. ©2023 DataStax. – All rights reserved
 リアルタイム AI を活用するリーダー企業 •

    ドライバー、パートナー、顧客のデータを統合して予測を 推進
 • ドライバーの供給と乗客の需要に合わせた動的な価格 設定
 • 生成AI を活用アプリ内コミュニケーション
 
 • ヒストリカル情報とリアルタイム情報を組み合わ せて、継続的なエンゲージメントを推進 
 • リアルタイムのユーザーの行動をコンテンツの提 示に活用
 • ベクトル検索を活用したレコメンデーション
 Apache CassandraⓇ を使用してAIを実現

  9. ©2023 DataStax. – All rights reserved
 Uber:CassandraをMLプラットフォームに活用 13
 https://www.uber.com/en-JP/blog/michelangelo-machine-learning-platform/ Cassandra

    フィーチャーストア Cassandra モデルレポ • バッチ(OFFLINE)とリアルタイム(ONLINE)、 2つ のデータ処理パイプラインを備えた Lambda アーキテクチャ
  10. ©2023 DataStax. – All rights reserved
 Netflix: Cassandraをアノテーション管理に活用 14
 https://netflixtechblog.com/scalable-annotation-service-marken-f5ba9266d428

    https://www.infoq.com/news/2023/02/netflix-annotations-cassandra/ ElasticSearch • 全文検索 • 地理検索 • セマンティクス検索 Cassandra アノテーションの シングル・ソース・オブ ・トゥルース
  11. ©2023 DataStax. – All rights reserved
 小売 / 電子商取引 DataStax

    AI エンゲージメント 輸送 / 物流 フィンテック / 決済 金融業 通信会社 / 政府 テクノロジー / 分析 私たちは、多くのお客様が AI を使用してビジネスを変革することを支援しています。
  12. ©2023 DataStax. – All rights reserved
 17
 リアルタイムの会話から感情を特定し、サービス エージェントや営業担当者が個々の顧客のニーズに適切かつ効果的に対応 https://jp.uniphore.com/

    https://www.datastax.com/jp/enterprise-success/uniphore 同社システムは AWS上で運営されていますが、Amazon Keyspaces は、実行可能な選択肢でなかったと、いいます。 「Amazon Keyspacesは Cassandra ではありません。DynamoDB ストレージ エンジン上の CQL レイヤーです」 同社は、AstraDBを選択しました。 「私たちが生成するデータ量が大きい ため、これは私たちにとって適切 なソリューションではありませんでした。 Cassandra が提供するストレージの最適化とパーティショニングが必 要でした。」
  13. ©2023 DataStax. – All rights reserved
 18
 https://www.datastax.com/jp/enterprise-success/digital-river • グローバルなeコマース、支払い、マーケティングサービスを提供

    • 請求の最適化と不正行為の防止に機械学習を活用 https://www.digitalriver.com/ Digital River は、Cassandra を直接管理していた場合と比較 して、総所有コストを全体で 60% 削減しました。 Astra DB は使用量モデルに基づいて価格設定されているた め、Digital River はトラフィックに基づいて支払います。 「Astra DB は、コスト削減、管理性、サポート性の観点から総 合的に有利」
  14. ©2023 DataStax. – All rights reserved
 19
 https://www.datastax.com/blog/dataworkz-enabling-customer-360-in-minutes-with-vector-search-and-llms https://www.datastax.com/jp/enterprise-success/dataworkz https://www.datastax.com/enterprise-success/dataworkz/dataworkz-optimizes-its-startup-resources-with-ast

    ra-db • Dataworkz開発チームは経験豊富な Apache Cassandra開発者を要しており、高性能でスケーラビリティの高いアクティ ビティストリーム モジュールを構築するために、 Cassandra を選択するのは自然でした。 • Dataworkz チームは、DataStaxのAstra DBが、要件をすべて満たしていると判断しました。 https://www.dataworkz.com/ AIに基づく分析の複雑さは、平均的なビジネス ユーザーにとって必 ずしも簡単に習得できるわけではありません。 Dataworkz は、AI を統合するノーコードの高性能クラウド サービス のユーザー インターフェイスをビジネス ユーザーに提供すること で、この状況を変えようとしています。
  15. ©2023 DataStax. – All rights reserved
 20
 https://www.datastax.com/resources/whitepaper/generative-ai-you-can-t-afford-to-wait 「SkyPoint Cloud

    Inc. は、Astra DB をベクトル データベースとして使用し、高齢者向け医療業界の変革を支援しています。同社は生成 AI を使用して、医 療データと、そこから得られる洞察へのシームレスなアクセスを実現しました。『これは本質的に、HIPAA に完全準拠の高齢者向け医療データの ChatGPT に相当するものです』と SkyPoint の CEO Tisson Mathewは述べています。彼はさらに、AstraDBのベクトル検索の高速さが決めてとなった、他 のベクトルストアは遅すぎて SkyPoint の要件を満たすことができなかった、と述べています。」 (DataStaxホワイトペーパー『Generative AI - You Can't Afford to Wait』) AstraDBのベクトル検索によって実現されたもの: • Astra DB をベクトル データベースとして使用 し、高齢者向 け医療業界の変革を支援 • 生成 AI を使用して、医療データと、そこから得られる洞察 へのシームレスなアクセスを実現 • 『HIPAA 完全準拠の医療データの ChatGPT に相当』 AstraDBのベクトル検索を選択した理由: • AstraDBのベクトル検索の高速さ が決めて • 他のベクトルストアは遅すぎて 要件を満たすことができな かった 画像は、skypointcloud Inc. HP(https://skypointcloud.com) より

  16. ©2023 DataStax. – All rights reserved
 承前:予測AIと生成AI 23
 予測AI
 •

    素早い決断
 • 正確な予測
 • 積極的な行動
 生成AI
 • 自然言語応答
 • パーソナライズされた エクスペリエンス
 • カスタマイズされたコ ンテンツ
 インタラクティブな、
 コンテキストに基づく
 エクスペリエンス
 スマートな、
 自動化された
 オペレーション
 Predictive AI 動的な価格設定
 リアルタイム取引
 予知保全
 在庫の最適化
 対話 (チャットボット /
 仮想エージェント
 集合知の活用(公開およ び非公開テキスト情報)
 コンテキスト(AIの役 割)の指示
 
 テキスト生成 (文章 / コード) 
 Generative AI /Gen AI
  17. ©2023 DataStax. – All rights reserved
 生成AI / LLM (大規模言語モデル)

    24
 LLM:大量のテキストデータ(数十億語)を使ってトレーニングされた自然言語処理のモデル トレーニング時に与えられた言語情報に基づき、 質疑応答、テキスト分類、感情分析、文章要約のような言語の意味的理解に基づくタスク を行う 「ChatGPT」(2022年12月発表):2022年初頭にトレーニングされた「 GPT-3.5シリーズ」を元に、 チャット向けにファインチューニング 『2022年初頭移行の情報は含まれていない』一方で ... 『2022年以前の公開情報について、(ほとんど)あらゆる知識を持つ(かのよう)』
  18. ©2023 DataStax. – All rights reserved
 「AI」 の変化 25
 データ量の変化


    予測AI
 生成AI
 LLM
 
 コンテクスト:
 構造化データ
 特徴量
 
 コンテンツ:
 非構造化データ
 ベクトルデータ
 ディープラーニング(深層学習)による 画像認識(自動運転の礎) GAN(Generative Adversarial Network):敵対的生成ネットワーク による画像「生成」 リカレントニューラルネットワーク (RNN) によるシーケンシャルデータに対するアプ ローチ Transformerによる自然言語処理 (NLP)
  19. ©2023 DataStax. – All rights reserved
 ユーザー 入力
 LLM
 データ

    データ システムからの
 応答
 プロンプト
 強化された
 応答
 生成AI活用 アプリ
 
 ステートレス 
 コンテクスト 
 応答

  20. ©2023 DataStax. – All rights reserved
 ユーザー 入力
 データ 企業保有


    データ
 LLM
 データ システムからの
 応答
 強化された
 応答
 生成AI活用 アプリ
 
 増強されたLLM

  21. ©2023 DataStax. – All rights reserved
 ユーザー 入力
 データ 企業保有


    データ
 LLM
 データ システムからの
 応答
 強化された
 応答
 生成AI活用 アプリ
 
 増強されたLLM
 ファインチューニング
 A社のための LLM
 A社のための LLM
 再トレーニング

  22. ©2023 DataStax. – All rights reserved
 ユーザー 入力
 データ ユーザー入力+


    企業保有データ
 LLM
 データ システムからの
 応答
 生成AI活用 アプリ
 
 増強されたLLM
 プロンプト・エンジニアリング
 / コンテキスト・インジェスチョン (Context Ingestion)
 LLMへのリクエスト: 「・・・というユーザーのリクエストに答えよ。 その際、以下の関連するデータを活用せよ・・・」 企業の保有する大量のデータから関連するデータ(非 構造)を素早く見つけることが重要 

  23. ©2023 DataStax. – All rights reserved
 プロンプトエンジニアリング解説 31
 日本語版 :https://www.promptingguide.ai/jp

    Prompt Engineering Guide DAIR.AIがオープンソースとして公開 https://www.promptingguide.ai/ • Zero-Shotプロンプティング • Few-Shotプロンプティング • Chain-of-Thoughtプロンプティング
  24. ©2023 DataStax. – All rights reserved
 何が使えるか?:ファインチューニング〜LLM 32
 https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard オープンLLMリーダーボード


    ファインチューニング には、
 オープンソースLLMを使う他、
 LLMプロバイダーのサービス として、 ユーザーのデータを用いたファイン チューニングを特定の LLMに対して
 提供しているケースがある 

  25. ©2023 DataStax. – All rights reserved
 RAG:Retrieval Augmented Generation 34


    https://arxiv.org/abs/2005.11401 Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks RAG(検索拡張生成)とは: • ユーザからの質問に回答するために必要な内容が書かれた文章を検索(ベクトル検索が有効) • 検索した文章をLLMへの入力(プロンプト)に渡す LLMが学習していない内容について回答を行わせることができる
  26. ©2023 DataStax. – All rights reserved
 ベクトルとは何か? 35
 DataStaxブログ「What is

    a Vector Database?」 https://www.datastax.com/guides/what-is-a-vector-database コンピューター/プログラミング:
 ベクターは、通常「動的」配列 
 
 数学(一般的):
 ベクトル空間の元(ベクトル空間に配置しうる) 
 
 
 ベクトル検索の文脈では以下のように考えることができる 
 • ベクトルは多次元データ 
 • 固定長配列として表現 
 • ベクトル同士の比較には以下が重要 
 ◦ 多次元 = 配列は同じ長さ
 ◦ 多次元 = 要素の「意味合い」が等しい(縦横高さ) 
 
 
 

  27. ©2023 DataStax. – All rights reserved
 ベクトル化・エンベディング 36
 DataStaxブログ「What is

    a Vector Database?」 https://www.datastax.com/guides/what-is-a-vector-database エンベディング:非構造化データのベクトル化。 
 エンベディングでは、元の情報のセマンティクス(意味)が保存される。 
 
 さまざまなエンベディングモデル( API)が存在する。
 • 共通のモデル/ロジックで多次元データ化されているデータはお互いに比較可能 
 • ベクトル同士の比較が目的、複合化が目的ではない
  28. ©2023 DataStax. – All rights reserved
 ベクトル検索とは何か? 39
 
 Googleいわく、「あらゆるデータ」を「瞬時に」アクセス(つまり検索)する技術


    
 https://cloud.google.com/blog/ja/topics/developers-practitioners/find-anything-blazingly-fast-googles-v ector-search-technology?hl=ja
 
 
 
 
 
 
 
 
 (非構造化)データのベクトル化 (Embedding) ベクトル同士の類似性を検出する (数学的)アルゴリズム Cassandraのカバーする範囲

  29. ©2023 DataStax. – All rights reserved
 CEP-30:ベクトル検索 (Cassandra 5.0プロポーザル) 41


    新たなデータ型 VECTORの導入 近似最近傍探索を実装 approximate nearest neighbor (ANN) インデックスを定義 Storage Attached Index 新たなオペレーター ANN OFの導入
  30. ©2023 DataStax. – All rights reserved
 CassIO 45
 https://cassio.org/ CassIO

    の目的は、生成AIの一般的なニーズに合わせて Cassandra データベースにアクセスする詳細を抽象化す ることです。 CassIO は CassandraをLangChain やLlamaIndexとシームレスに統合 https://docs.langchain.com/docs/
  31. ©2023 DataStax. – All rights reserved
 ユーザー 入力
 データ LLM


    データ システムからの
 応答
 生成AI活用 アプリ
 
 エージェント
 キャッシュ
 企業の
 プロプライエタリ データ

  32. ©2023 DataStax. – All rights reserved
 LangChain: LLM回答のキャッシュ 47
 import

    langchain from langchain.cache import InMemoryCache langchain.llm_cache = InMemoryCache() import langchain from langchain.cache import CassandraCache from cqlsession import getCQLSession, getCQLKeyspace cqlMode = 'astra_db' # 'astra_db'/'local' session = getCQLSession(mode=cqlMode) keyspace = getCQLKeyspace(mode=cqlMode) langchain.llm_cache = CassandraCache( session=session, keyspace=keyspace, ) メモリ利用
 Cassandra/Astra 利用