DataStaxが生成AI開発を強化する新しいデータAPIを発表
DataStaxは、開発者が生成AIのリトリーバル強化生成(RAG)アプリケーションを簡単に構築できるように設計された新しいデータAPIを導入しました。オープンソースのApache Cassandraデータベースの主要な提供者であるDataStaxは、この技術を活用してAstraDBクラウドデータベースをサービスとして提供しています。2023年には、ベクトルデータベース機能をプラットフォームに追加し、この分野の主要プレーヤーと肩を並べる立場に立ちました。最近のイベントで、DataStaxのCEOはCassandraを「生成AIに最適なデータベース」と自信を持って述べました。
ベクトルデータベースの力を解放する
RAGアプリケーションには、正確でカスタマイズされた出力を生成するために、大規模言語モデル(LLM)とデータプラットフォームを活用するベクトルデータベース機能が不可欠です。DataStaxは2023年7月からAstraDBにベクトル機能を提供していますが、従来はCassandraクエリ言語(CQL)を通じてデータを呼び出す必要がありました。新たに発表されたデータAPIは、この状況を改善し、開発者はPythonやJavaScriptを使用してデータベースにアクセスできるようになります。このアップデートにより、DataStaxは、最近サーバーレス機能を導入したPineconeのような特化型ベクトルデータベースにさらに近づきました。
DataStaxのチーフプロダクトオフィサー、エド・アナフ氏は、「ネイティブベクトルデータベースはベクトルクエリのみをサポートし、ハイブリッドデータベースはクエリモデルに優れた特性を持っています。私たちの目的はそのギャップを埋めることであり、データAPIがその役割を果たします」と語りました。
RAGアプリケーション開発の変革
新しいAPIはAstraDBに新たなベクトル機能を追加するわけではありませんが、開発プロセスを効率化します。アナフ氏によると、ベクトル機能の導入以来、新しいAstraDBユーザーの約半数が生成AIアプリケーションに注力していますが、彼らは主にPythonやJavaScriptを使用しており、AstraDBデータへの直接的なアクセスには対応していませんでした。
APIの導入前は、AIアプリケーションの構築にはCQLの深い知識が必要で、複雑なデータモデリングが求められました。このため、RAGアプリケーションの開発には不向きでした。また、クエリもベクトルデータの取得には最適化されていませんでした。
新しいデータAPIは、ベクトル化を自動管理し、PythonやJavaScriptでのユーザーフレンドリーなインターフェースを提供し、ベクトルデータを効率的に保存しインデックス化することでパフォーマンスを向上させます。これにより学習曲線が緩和され、既存のCassandra APIを利用する場合に比べて性能が向上します。
データベースとのインタラクションを現代化する
従来のデータベースAPIは、PythonやJavaScriptのようなプログラミング言語をデータベースのクエリ言語に翻訳することが一般的でしたが、これは古いオブジェクトリレーショナルマッピング(ORM)メソッドに似ています。DataStaxのデータAPIは、Cassandraの独自のアーキテクチャを利用し、データベース内でのより深い接続を促進し、クエリパフォーマンスを改善します。
アナフ氏は、「データAPIは開発者にシンプルなJSONベースのデータフォーマットを提供します。JSONで表現できるものはすべて、データベースに送信し、そこから取得できます」と説明しました。「私たちはこれをCassandra内で効率的に保存し、最適なパフォーマンスを維持します。」
JVectorによるベクトル検索の強化
DataStaxのベクトルデータベースの進展における重要な要素は、AstraDBに組み込まれたオープンソースツールであるJVector検索エンジンです。アナフ氏は、JVectorがディスク最適化版の近似最近傍(ANN)検索アルゴリズムであるDiskANNを採用していることを強調しました。この戦略は、特に大規模なデータセットでの取得性能を大幅に向上させます。
DataStaxは、JVectorエンジンが他のベクトルデータベースと比べてAstraDBの関連性と再現性を向上させることを主張しています。DataStaxの進行中のベクトル開発は、JVectorや新しいデータAPIを含め、CassandraコミュニティおよびAstraDBの顧客向けにオープンソースとして提供されています。
アナフ氏は、「私たちはオープンソースエコシステムに資源を提供することに強くコミットしています。私たちの目標は、開発者がクラウドサービスを選択する際に最も容易な道を提供することです」と述べました。