LoginSignup
1
2

DataStaxによる生成AIへのアプローチ

Last updated at Posted at 2023-07-13

はじめに

現在、生成AIをめぐる状況は、目まぐるしく動いています。

ここでは、DataStax社による(Apache Cassandraデータベースを中心とした)生成AIへのアプローチに関する情報を、日本語による最速のアップデートを意図して、整理します。本稿については、できるだけ最新の情報を迅速に提供することを目的として、初回の発表以降も、適宜アップデートを予定しています。

TL;DR (一言で言えばどういうことなのか)

長すぎる(Too Long)記事など読みたくない(Don't Read)という方は、以下の3点、特に、3段論法の結論部分、が本項の趣旨となります。

  • LLMモデルはステートレス
    • Retrieval Augmented Generation (RAG) について、思い出して(学んで)みよう(下記、参考情報もご参照ください)
  • LLMを活用した生成AIをビジネスに活用するためには、企業独自、かつ最新(リアルタイム)データの活用には、オンラインデータストア/データベースの活用が必須
  • 大規模データのミッションクリティカル利用に秀でたApache Cassandraデータベースを生成AIアプリケーションに利用するための拡張が行われている

以下は、上記の(二つの)前提に関する図示です。

image.png

そして、以下が、(三つ目の)結論について、DataStaxが提示するものの概略です。

image.png

DataStaxによる、上記の結論に示された活動は、目まぐるしく発展する技術領域に対する、進行中の取り組みであると言えます。その意味で、ここでは技術の「成熟度」よりも、「Timeliness(いかにタイムリーか)」が重要となる状況だと言えます。

以下にその具体的な取り組みについての一端を示します。

CassIO: LangChainをはじめとするフレームワークへのアプローチ

CassIO の目的は、GenerativeAI やその他の機械学習ワークロードの一般的なニーズに合わせて Cassandra データベースにアクセスする詳細を抽象化し、Cassandra をシームレスに統合するためツール セットを提供することです。

LangChain は、LLM(大規模言語モデル)の管理と対話を自動化するそうしたフレームワークの一つです。

CassIO は LangChain とシームレスに統合した Cassandra 固有のツールを提供します。

image.png

CassIOとLangChainとを使ったアプリケーションの詳細に関するビデオが公開されています。
ご興味のある方は、本項最後に紹介している、Agent Xイベントのランディングページからオンデマンドでいつでもご覧いただくことが可能です。

ベクトル検索

Cassandraにベクトル検索の機能を追加する提案がなされています。

この拡張は、DataStaxがApache Cassandraに提案しリードしています。

そのための具体的な拡張として、新たなデータ型としてVECTOR型の導入があります。
この型に対して、インデックスを定義することで、ベクトル検索が可能になります。
そして、CQLクエリの拡張として「ANN OF」というベクトル検索のためのオペレーターが導入されます。
このANNは、approximate nearest neighbor 、つまり、近似最近傍探索を意味します。

image.png

CREATE TABLE products(
  id UUID PRIMARY KEY,
  name varchar,
  description varchar,
  item_vector VECTOR<float, 3>
);
CREATE CUSTOM INDEX item_ann_index ON product(item_vector) 
USING 'VectorMemtableIndex';
SELECT * FROM product WHERE item_vector ANN OF [3.4, 7.8, 9.1] LIMIT 3

DataStaxのCassandraマネージドサービス(DBaaS)であるAstra DBでは、今すぐ、このベクトル計算の機能を試してみることができます。

image.png

以下に、AstraDBのベクトル検索機能を利用するJupyterノートブックを公開しています。

DATASTAXが公開している関連情報

以下、DataStaxから公開されている各種情報(ビデオ、スライド、ソースコード等)の情報を掲載します。

Agent X

以下のランディングページから、以下の4つのセッションのレコーディングを見ることができます。

  • The Generative AI Stack
  • Building the Astra Assistant : Architecting an AI Agent
  • Vector Search: Under the Hood
  • Agents in Production: Best Practices and Issues in Deploying AI Agents

スライドPDF

Real-time Data Pipelines: Astra - Ethereum Database to Model Training

Github

NFT Webinar

Beyond GPT: Hands on with vector embeddings

Real-Time E-Commerce Product Recommendations using Vector Search and Apache CassandraⓇ

ホワイトペーパー:Vector Search for Generative AI Apps

参考情報

Retrieval-Augumented Generation

RAGの基本。

下記記事からの引用

高度な RAG 技術には、より厳しいレイテンシー要件が必要です。Chain-of-Thought、ReAct、およびFLARE では、LLM とベクトル データベースの両方に対する複数のクエリが必要です。各 LLM 呼び出しは、後続の LLM およびプロンプト構築呼び出しで使用できるようにメモリに保存する必要もあります。これにより、ベクトルストアに対する高速な読み取りと書き込みの必要性が高まります。

上記引用で触れられている「高度なRAG技術」

ベクトルデータベース

Pinecone

Weaviate

Chroma

ベクトル検索機能

MongoDB

LangChain

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2