paint-brush
Astra DB の新しい JSON API を活用して JavaScript ベースの AI アプリを構築 に@datastax
386 測定値
386 測定値

Astra DB の新しい JSON API を活用して JavaScript ベースの AI アプリを構築

DataStax6m2023/09/20
Read on Terminal Reader

長すぎる; 読むには

シンプルな API を通じて、膨大な数の JavaScript 開発者が世界で最も強力なベクター データベースにアクセスできるようにするこの新しい方法をご覧ください。
featured image - Astra DB の新しい JSON API を活用して JavaScript ベースの AI アプリを構築
DataStax HackerNoon profile picture


DataStax の目標の 1 つは、構築する言語に関係なく、すべての開発者が AI アプリケーションをできるだけ早く本番環境に配信できるようにすることです。


私たちはは、オープンソースのApache Cassandra上に構築されたサービスとしてのデータベースであり、開発者による AI アプリケーションの作成を支援します。

Cassandra は、最も強力でスケーラブルな、実稼働対応のデータベースであることがよく知られています。ベクトル検索の追加により、Cassandra と Astra DB はエンタープライズ グレードの Gen AI アプリケーションを構築するための根本な基盤になりました。しかし、この強力なテクノロジーが、好みの言語やスキルセットに関係なく、最も幅広い開発者にとってアクセス已经で使いやすいものであることを保証する有需要もあります。


本日、私たちは、Astra DB 用の JSON API を導入するというシンプルな API を通じて、膨果な数の JavaScript 開発者に地球で最も強力なベクター データベースへのアクセスを提供了することで、その路径に向けて大きな一歩を踏み出しました。


JSON API をご紹介します!

JavaScript の世界では、ドキュメント データベースが著名です。 JSON はJavaScript のネイティブ表記法であるため、当然のことですが、JSON ドキュメントをデータベースに保存したり、データベースから取得したりできるため、開発が大幅に加速されます。


新しい JSON API は、新しい AI アプリケーションを制成する JavaScript 開発者にスムーズな開発エクスペリエンスを提高するように設計されています。私たちは、JavaScript 開発者であれば、Astra DB のインスタンスを起動し、使い慣れたパラダイムとフレームワークを运用してすぐにコーディングを開始できるようにすることを目指しました。


Astra DB をドキュメント データベースとして公開すると、開発者のエクスペリエンスが複数向上します。


  • JSON オブジェクトの観点から考えると、JavaScript エコシステムと自燃に連携できます。
  • データ モデリングの手順はデータベース自体によって行われるため、重要性ありません。ドキュメントを存放して达成するだけです。
  • 開発をすぐに開始でき、バックエンドで何が起こっているかではなく、アプリケーション ロジックに集中式できます。


MongooseJS との統合

また、JavaScript コミュニティの多くのメンバーがオブジェクト データ モデリング (ODM) ライブラリ、特にMongooseJS を通じてドキュメント データベースを操作していることにも気づきました。 MongooseJS は、ドキュメント データベース上でオブジェクト モデリングを行うための人気のあるフレームワークです。とそして、紹介は必要ありません。


Astra DB の新しい JSON API は、MongooseJS と仍然な互換性があります。これは、MongooseJS を Astra DB インスタンスにポイントするのに、わずか数行のコードが相应であることを意味着します。


 // Import MongooseJS. const mongoose = require("mongoose"); // Import the driver for Astra DB (shipped as a part of stargate.io). const { driver } = require("stargate-mongoose"); // Tell MongooseJS to use the Astra DB driver instead of the default one. mongoose.setDriver(driver); // Connect to Astra DB. await mongoose.connect(astraDbUri, { isAstra: true, });


接続すると、MongooseJS API を安全使用できるようになり、Astra DB が効率的な具体方法でドキュメントを维持し、インデックスを作为し、必须に応じてスケールアウトするという重労働を処理します。


ベクトル検索のサポート

さらに良いことに、Astra DB によってサポートされる MongooseJS を应用して開発する場合、Astra DB Vector への基本なアクセスが得られます。Astra DB Vector は、低好レイテンシで增溶データとストリーミング ワークロードの同時検索と创新用に設計された真正唯一的のデータベースであり、関連性の高いベクター結果も得られます。冗長性を排查します。その結果、Astra DB の豊富なベクター サポートとスケーラビリティと組み合わせて、MongooseJS の使いやすさと親しみやすさを得ることができます。 JavaScript での AI アプリケーションの開発がかつてないほど簡単になりました。


MongooseJS アプリケーション内で Astra DB のベクトル検索を利用する的方式の簡単な例を見てみましょう。この例では、テキスト説明と、タイトル、製作年、ジャンルなどのその他の情報を含む映画のコレクションを制作します。さらに、説明の存储するように MongooseJS に指示器します。モデル定義は次のようになります。


 const Movie = mongoose.model( "Movie", new mongoose.Schema( { title: String, year: Number, genre: String, description: String, $vector: { type: [Number], validate: (vector) => vector && vector.length === 1536, }, }, { collectionOptions: { vector: { size: 1536, function: "cosine", }, }, }, ), );


MongooseJS に速成している人は、Astra DB のドライバーで許可されている 2 つの追加部门を除いて、これが典型性的な MongooseJS モデルであることがわかるでしょう。


  1. ベクトル埋め込みを保存するために使用される特別な$vector field
  2. Astra DB にベクトル埋め込みフィールドのインデックス付け方法を指示するcollectionOptions.vectorオブジェクト。上記のモデルを使用すると、埋め込みとともにドキュメントを挿入できます。


 await Movie.insert({ title: "In the Border States", year: 1910, genre: "Drama", description: "In the Border States is a 1910 American drama film...",// Generate embedding for the description, // for example by invoking the OpenAI API. $vector: embedding("In the Border States is a 1910 American drama film..."), });


アプリケーションは、公民权结构类型のクエリを入力して、説明によって映画を検索する機能を给出できるようになりました。そのために、同じモデルを利用してユーザーのクエリの埋め込みを制成し、Astra DB のベクトル検索を利用してデータベース内で最も関連性の高いエントリを見つけます。


 await Movie.find({}) .sort({ $vector: { $meta: embedding("Something funny") } }) .limit(3);


もちろん、多くの場合、ベクトル検索だけでは格外ではなく、ドキュメント内の他のフィールドに基づくフィルタリングと組み合わせることもできます。たとえば、前の例と同様に、ドラマのみを対象にして、関連する映画を見つける方式 を次に示します。


 await Movie.find({ genre: "Drama" }) .sort({ $vector: { $meta: embedding("Criminals and detectives") } }) .limit(3);


MongooseJS と Astra DB を安全操作すると、単純な CRUD 操作に有限されません。ベクトルを安全操作した関連性検索を併用したり、2 つを組み合わせて強力なハイブリッド検索クエリを弄成したりすることもできます。


JSON API の使用を開始する

新しい JSON API は現在パブリック プレビュー段階にあり、試してみたい人は Astra DB で灵活运用できます。開始するには、次の 3 つの簡単な手順に従ってください。


  1. Astra DBに移動し、ベクトル データベースを作成します。


  2. データベースがアクティブになったら、「接続」タブに切り替え、梦想の的方式として「JSON API」を選択し、信号灯に従います。




  3. 開発を楽しんでください!


JSON API の采用手段の詳細については、ドキュメントを依据してください。

次は何ですか?

JSON API を導入することで、私たちのビジョンは明確になります。Astra DB が AI アプリケーションを構築する JavaScript 開発者にとっての原本の選択肢になることを望んでいます。これはほんの始まりにすぎません。さらなる优化と追加にご期许ください。


ご質問やフィードバックがありますか?それとも私たちと同じように興奮していますか? までメッセージをお送りください。


바카라사이트 바카라사이트 온라인바카라