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

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

Avatar for DATASTAX JAPAN DATASTAX JAPAN
September 04, 2023

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

Avatar for DATASTAX JAPAN

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 利用