> Discover all available pages from the documentation index: https://mastra.zisheng.pro/ja/llms.txt # Embed Mastra は AI SDK の `embed` 関数と `embedMany` 関数を使用して、テキスト入力のベクトル埋め込みを生成し、類似度検索や RAG ワークフローを実現します。 ## 単一の埋め込み `embed` 関数は、単一のテキスト入力に対するベクトル埋め込みを生成します。 ```typescript import { embed } from 'ai' import { ModelRouterEmbeddingModel } from '@mastra/core/llm' const result = await embed({ model: new ModelRouterEmbeddingModel('openai/text-embedding-3-small'), value: 'Your text to embed', maxRetries: 2, // optional, defaults to 2 }) ``` ### パラメーター **model** (`EmbeddingModel`): 使用する埋め込みモデル(例: openai.embedding('text-embedding-3-small')) **value** (`string | Record`): 埋め込むテキストコンテンツまたはオブジェクト **maxRetries** (`number`): 埋め込み呼び出しごとの最大再試行回数。再試行を無効にするには 0 を設定します。 (Default: `2`) **abortSignal** (`AbortSignal`): リクエストをキャンセルするためのオプションの中断シグナル **headers** (`Record`): リクエストに追加する HTTP ヘッダー(HTTP ベースの Provider のみ) ### 戻り値 **embedding** (`number[]`): 入力に対する埋め込みベクトル ## 複数の埋め込み 複数のテキストを一度に埋め込むには、`embedMany` 関数を使用します。 ```typescript import { embedMany } from 'ai' const result = await embedMany({ model: new ModelRouterEmbeddingModel('openai/text-embedding-3-small'), values: ['First text', 'Second text', 'Third text'], maxRetries: 2, // optional, defaults to 2 }) ``` ### パラメーター **model** (`EmbeddingModel`): 使用する埋め込みモデル(例: openai.embedding('text-embedding-3-small')) **values** (`string[] | Record[]`): 埋め込むテキストコンテンツまたはオブジェクトの配列 **maxRetries** (`number`): 埋め込み呼び出しごとの最大再試行回数。再試行を無効にするには 0 を設定します。 (Default: `2`) **abortSignal** (`AbortSignal`): リクエストをキャンセルするためのオプションの中断シグナル **headers** (`Record`): リクエストに追加する HTTP ヘッダー(HTTP ベースの Provider のみ) ### 戻り値 **embeddings** (`number[][]`): 入力値に対応する埋め込みベクトルの配列 ## 使用例 ```typescript import { embed, embedMany } from 'ai' // Single embedding const singleResult = await embed({ model: new ModelRouterEmbeddingModel('openai/text-embedding-3-small'), value: 'What is the meaning of life?', }) // Multiple embeddings const multipleResult = await embedMany({ model: new ModelRouterEmbeddingModel('openai/text-embedding-3-small'), values: [ 'First question about life', 'Second question about universe', 'Third question about everything', ], }) ``` Vercel AI SDK の埋め込みの詳細については、以下を参照してください。 - [AI SDK の埋め込みの概要](https://sdk.vercel.ai/docs/ai-sdk-core/embeddings) - [embed()](https://sdk.vercel.ai/docs/reference/ai-sdk-core/embed) - [embedMany()](https://sdk.vercel.ai/docs/reference/ai-sdk-core/embed-many)