
AI.js 、node.jsアプリにAIテキスト、画像、埋め込み、ベクトル検索を追加する最も簡単な方法です。
await AI ( "the color of the sky is" ) ; // blue
await AI . Image ( "a red rose" ) ; // <image buffer: red rose>
await AI . Image . Concept ( "a red rose" ) ; // {prompt: a red rose in realist style, watercolor ...", <image buffer>}
await AI . Embeddings ( "hello world" ) ; // Array(384)
const db = new AI . VectorDB ( ) ;
await db . add ( "red" ) ;
await db . add ( "blue" ) ;
await db . search ( "redish" ) // redフードの下AI.js 、簡単に使用できるローカルおよびリモートAPIをシームレスに統合します
GPT-4 、 Gemini 、 Claude 、 Mistral 、またはLLaMaを使用していますStable Diffusionと、 ReplicateやStability AIなどのリモートサービスをサポートしていますlocal 、 OpenAI 、またはMistral埋め込みを作成しますNPM経由でAI.jsをインストールします
npm install @themaximalist/ai.js環境API_KEYを設定することにより、少なくとも1つのサービスを有効にします
export OPENAI_API_KEY=sk-...
export ANTHROPIC_API_KEY=sk-ant-...
export GOOGLE_API_KEY=sk-ant-...
export STABILITY_API_KEY=sk-...
export REPLICATE_API_KEY=sk-....
export MISTRAL_API_KEY=...デフォルトのインターフェイスはテキストです。 AI.jsでは、1回限りのリクエストを送信したり、大規模な言語モデル(LLM)で複雑なメッセージ履歴を構築できます。
const AI = require ( "@themaximalist/ai.js" ) ;
await AI ( "what is the codeword?" ) ; // i don't know any codewords
const ai = new AI ( "the codeword is blue" ) ;
await ai . chat ( "what is the codeword?" ) ; // blueデフォルトのAI.jsモードはLLMで、LLM.JSの上で実行されています。 AI.jsにも適用される完全なドキュメントについては、そのサイトをご覧ください。
ストリーミング、JSONサポート、MAX_TOKENS、温度、シードなど、多数の人気モデルでサポートされている多くの機能があります。
AI.js 、 Automatic1111 、 StabilityAI 、 Replicateを通じて強力な画像生成関数を提供します。ローカルで実行されるか有効な環境変数のいずれかで、必要に応じて各サービスセットアップがあることを確認してください。
const image = await AI . Image ( "a red rose" ) ;
fs . writeFileSync ( "rose.png" , image ) ;すべての画像ジェネレーターのドキュメントについては、Imagine.jsを参照してください。
AI.js 、コンセプトジェネレーターも提供します。これは、LLMを画像ジェネレーターと一緒に使用する方法です。
const { prompt , buffer } = await AI . Image . Concept ( "a red rose" ) ;
console . log ( prompt ) ; // a red rose in realist style, watercolor ..."
fs . writeFileSync ( "complex-rose.png" , buffer ) ;これにより、 LLMプロバイダーがヒットし、画像生成サービスに送信する前に複雑な画像プロンプトを生成します。
AI.js Embeddings.jsを使用して、ローカルまたはリモートの埋め込みを簡単に生成してください。
const embeddings = await AI . Embeddings ( "hello world" ) ; // embedding array地元の埋め込み、Openai、Mistralで動作します。
埋め込みは、Pinecone、Chroma、PG Vectorなどの任意のベクターデータベースで使用できます。
すべてのオプションについては、embeddings.jsを参照してください。
AI.jsベクトルデータベースを使用して、同様のテキスト文字列をすばやく見つけることができます。
インメモリを実行し、 AI.jsの埋め込みを使用できます。
同様の文字列を見つけるには、データベースにいくつか追加してから検索します。
const db = new AI . VectorDB ( ) ;
await db . add ( "orange" ) ;
await db . add ( "blue" ) ;
const result = await db . search ( "light orange" ) ;
// [ { input: 'orange', distance: 0.3109036684036255 } ]完全なドキュメントについては、vectordb.jsを参照してください。
AI.jsにはこれらのサブプロジェクトが含まれています。
完全なAPIドキュメントについては、個々のプロジェクトをご覧ください。
それらは、 AI.jsのように個別にまたは一緒に使用できます。
AI.js 、すべてのサブプロジェクトでdebug NPMモジュールを使用します。
名前空間は、プロジェクト名の小文字バージョンです。
DEBUG環境変数を設定して、デバッグログを表示します。
> DEBUG=llm.js *
> node src/run_ai.js
# debug logs複数のログとコンマを組み合わせることができます。
> DEBUG=llm.js * ,imagine.js * ,embeddings.js * ,vectordb.js *
> node src/run_ai.js
# debug all logs AI.jsは現在、次のプロジェクトで使用されています。
mit
Maximalistによって作成されたオープンソースプロジェクトをご覧ください。