@mastra/mcp-docs-server 1.0.0-beta.9 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.docs/organized/changelogs/%40internal%2Fchangeset-cli.md +3 -1
- package/.docs/organized/changelogs/%40internal%2Fexternal-types.md +3 -1
- package/.docs/organized/changelogs/%40internal%2Fplayground.md +60 -0
- package/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +15 -15
- package/.docs/organized/changelogs/%40internal%2Ftypes-builder.md +3 -1
- package/.docs/organized/changelogs/%40mastra%2Fagent-builder.md +287 -287
- package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +302 -302
- package/.docs/organized/changelogs/%40mastra%2Fastra.md +53 -53
- package/.docs/organized/changelogs/%40mastra%2Fauth.md +38 -0
- package/.docs/organized/changelogs/%40mastra%2Fchroma.md +66 -66
- package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +522 -212
- package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +239 -239
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +439 -234
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +450 -211
- package/.docs/organized/changelogs/%40mastra%2Fcodemod.md +202 -0
- package/.docs/organized/changelogs/%40mastra%2Fconvex.md +448 -22
- package/.docs/organized/changelogs/%40mastra%2Fcore.md +348 -348
- package/.docs/organized/changelogs/%40mastra%2Fcouchbase.md +60 -60
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +287 -287
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +106 -106
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +90 -90
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +86 -86
- package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +221 -221
- package/.docs/organized/changelogs/%40mastra%2Fduckdb.md +70 -0
- package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +403 -225
- package/.docs/organized/changelogs/%40mastra%2Felasticsearch.md +72 -0
- package/.docs/organized/changelogs/%40mastra%2Fevals.md +145 -145
- package/.docs/organized/changelogs/%40mastra%2Ffastembed.md +54 -0
- package/.docs/organized/changelogs/%40mastra%2Flance.md +456 -226
- package/.docs/organized/changelogs/%40mastra%2Flibsql.md +625 -229
- package/.docs/organized/changelogs/%40mastra%2Floggers.md +71 -71
- package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +245 -245
- package/.docs/organized/changelogs/%40mastra%2Fmcp-registry-registry.md +28 -28
- package/.docs/organized/changelogs/%40mastra%2Fmcp.md +281 -281
- package/.docs/organized/changelogs/%40mastra%2Fmemory.md +354 -156
- package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +545 -212
- package/.docs/organized/changelogs/%40mastra%2Fmssql.md +481 -202
- package/.docs/organized/changelogs/%40mastra%2Fopensearch.md +194 -194
- package/.docs/organized/changelogs/%40mastra%2Fpg.md +781 -235
- package/.docs/organized/changelogs/%40mastra%2Fpinecone.md +198 -198
- package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +282 -282
- package/.docs/organized/changelogs/%40mastra%2Fqdrant.md +163 -163
- package/.docs/organized/changelogs/%40mastra%2Frag.md +310 -310
- package/.docs/organized/changelogs/%40mastra%2Freact.md +328 -237
- package/.docs/organized/changelogs/%40mastra%2Fs3vectors.md +64 -0
- package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +160 -0
- package/.docs/organized/changelogs/%40mastra%2Fserver.md +230 -230
- package/.docs/organized/changelogs/%40mastra%2Fturbopuffer.md +57 -57
- package/.docs/organized/changelogs/%40mastra%2Fupstash.md +479 -232
- package/.docs/organized/changelogs/%40mastra%2Fvectorize.md +53 -53
- package/.docs/organized/changelogs/%40mastra%2Fvoice-azure.md +45 -45
- package/.docs/organized/changelogs/%40mastra%2Fvoice-cloudflare.md +45 -45
- package/.docs/organized/changelogs/%40mastra%2Fvoice-deepgram.md +47 -47
- package/.docs/organized/changelogs/%40mastra%2Fvoice-elevenlabs.md +110 -110
- package/.docs/organized/changelogs/%40mastra%2Fvoice-gladia.md +15 -0
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google-gemini-live.md +98 -0
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google.md +54 -54
- package/.docs/organized/changelogs/%40mastra%2Fvoice-murf.md +46 -46
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai-realtime.md +93 -93
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai.md +47 -47
- package/.docs/organized/changelogs/%40mastra%2Fvoice-playai.md +45 -45
- package/.docs/organized/changelogs/%40mastra%2Fvoice-sarvam.md +45 -45
- package/.docs/organized/changelogs/%40mastra%2Fvoice-speechify.md +45 -45
- package/.docs/organized/changelogs/create-mastra.md +219 -219
- package/.docs/organized/changelogs/mastra.md +276 -276
- package/.docs/organized/code-examples/a2a.md +2 -2
- package/.docs/organized/code-examples/agent-v6.md +221 -0
- package/.docs/organized/code-examples/agui.md +4 -4
- package/.docs/organized/code-examples/ai-elements.md +3 -3
- package/.docs/organized/code-examples/ai-sdk-useChat.md +2 -2
- package/.docs/organized/code-examples/ai-sdk-v5.md +3 -3
- package/.docs/organized/code-examples/assistant-ui.md +5 -5
- package/.docs/organized/code-examples/bird-checker-with-express.md +1 -1
- package/.docs/organized/code-examples/bird-checker-with-nextjs-and-eval.md +2 -2
- package/.docs/organized/code-examples/bird-checker-with-nextjs.md +3 -3
- package/.docs/organized/code-examples/client-side-tools.md +4 -4
- package/.docs/organized/code-examples/crypto-chatbot.md +5 -5
- package/.docs/organized/code-examples/experimental-auth-weather-agent.md +1 -1
- package/.docs/organized/code-examples/fireworks-r1.md +2 -2
- package/.docs/organized/code-examples/heads-up-game.md +7 -7
- package/.docs/organized/code-examples/inngest.md +1075 -0
- package/.docs/organized/code-examples/mcp-configuration.md +1 -1
- package/.docs/organized/code-examples/mcp-server-adapters.md +2 -2
- package/.docs/organized/code-examples/memory-per-resource-example.md +3 -3
- package/.docs/organized/code-examples/memory-todo-agent.md +1 -1
- package/.docs/organized/code-examples/memory-with-context.md +1 -1
- package/.docs/organized/code-examples/memory-with-processors.md +1 -1
- package/.docs/organized/code-examples/openapi-spec-writer.md +3 -3
- package/.docs/organized/code-examples/quick-start.md +1 -5
- package/.docs/organized/code-examples/server-app-access.md +2 -2
- package/.docs/organized/code-examples/server-express-adapter.md +1 -1
- package/.docs/organized/code-examples/server-fastify-adapter.md +83 -0
- package/.docs/organized/code-examples/server-hono-adapter.md +2 -2
- package/.docs/organized/code-examples/server-koa-adapter.md +94 -0
- package/.docs/organized/code-examples/stock-price-tool.md +21 -2
- package/.docs/organized/code-examples/workflow-ai-recruiter.md +1 -1
- package/.docs/organized/code-examples/workflow-with-inline-steps.md +1 -1
- package/.docs/organized/code-examples/workflow-with-memory.md +1 -1
- package/.docs/organized/code-examples/workflow-with-separate-steps.md +1 -1
- package/.docs/organized/code-examples/workflow-with-suspend-resume.md +1 -1
- package/.docs/raw/agents/adding-voice.mdx +24 -6
- package/.docs/raw/agents/agent-approval.mdx +209 -12
- package/.docs/raw/agents/agent-memory.mdx +36 -32
- package/.docs/raw/agents/guardrails.mdx +105 -56
- package/.docs/raw/agents/network-approval.mdx +281 -0
- package/.docs/raw/agents/networks.mdx +69 -13
- package/.docs/raw/agents/overview.mdx +43 -25
- package/.docs/raw/agents/processors.mdx +234 -17
- package/.docs/raw/agents/structured-output.mdx +78 -8
- package/.docs/raw/agents/using-tools.mdx +67 -6
- package/.docs/raw/course/01-first-agent/07-creating-your-agent.md +1 -2
- package/.docs/raw/course/01-first-agent/12-connecting-tool-to-agent.md +1 -1
- package/.docs/raw/course/01-first-agent/16-adding-memory-to-agent.md +1 -2
- package/.docs/raw/course/02-agent-tools-mcp/05-updating-your-agent.md +1 -1
- package/.docs/raw/course/02-agent-tools-mcp/10-updating-agent-instructions-zapier.md +1 -1
- package/.docs/raw/course/02-agent-tools-mcp/16-updating-agent-instructions-github.md +1 -1
- package/.docs/raw/course/02-agent-tools-mcp/21-updating-agent-instructions-hackernews.md +1 -1
- package/.docs/raw/course/02-agent-tools-mcp/27-updating-agent-instructions-filesystem.md +1 -1
- package/.docs/raw/course/02-agent-tools-mcp/31-enhancing-memory-configuration.md +3 -3
- package/.docs/raw/course/03-agent-memory/04-creating-basic-memory-agent.md +1 -2
- package/.docs/raw/course/03-agent-memory/07-understanding-memory-threads.md +35 -0
- package/.docs/raw/course/03-agent-memory/08-configuring-conversation-history.md +1 -2
- package/.docs/raw/course/03-agent-memory/13-vector-store-configuration.md +1 -1
- package/.docs/raw/course/03-agent-memory/16-configuring-semantic-recall.md +4 -5
- package/.docs/raw/course/03-agent-memory/18-advanced-configuration-semantic-recall.md +1 -1
- package/.docs/raw/course/03-agent-memory/21-configuring-working-memory.md +3 -4
- package/.docs/raw/course/03-agent-memory/22-custom-working-memory-templates.md +3 -4
- package/.docs/raw/course/03-agent-memory/25-combining-memory-features.md +3 -4
- package/.docs/raw/course/03-agent-memory/27-creating-learning-assistant.md +3 -4
- package/.docs/raw/course/04-workflows/11-creating-an-ai-agent.md +2 -3
- package/.docs/raw/deployment/cloud-providers.mdx +22 -0
- package/.docs/raw/deployment/mastra-server.mdx +140 -0
- package/.docs/raw/deployment/monorepo.mdx +106 -42
- package/.docs/raw/deployment/overview.mdx +35 -48
- package/.docs/raw/deployment/web-framework.mdx +17 -19
- package/.docs/raw/deployment/workflow-runners.mdx +16 -0
- package/.docs/raw/evals/built-in-scorers.mdx +2 -0
- package/.docs/raw/evals/custom-scorers.mdx +60 -12
- package/.docs/raw/evals/overview.mdx +6 -6
- package/.docs/raw/evals/running-in-ci.mdx +4 -2
- package/.docs/raw/getting-started/manual-install.mdx +20 -20
- package/.docs/raw/getting-started/mcp-docs-server.mdx +59 -2
- package/.docs/raw/getting-started/project-structure.mdx +2 -2
- package/.docs/raw/getting-started/start.mdx +17 -1
- package/.docs/raw/getting-started/studio.mdx +6 -35
- package/.docs/raw/guides/agent-frameworks/ai-sdk.mdx +23 -33
- package/.docs/raw/guides/build-your-ui/ai-sdk-ui.mdx +1034 -80
- package/.docs/raw/guides/build-your-ui/assistant-ui.mdx +8 -8
- package/.docs/raw/guides/build-your-ui/copilotkit.mdx +32 -11
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/amazon-ec2.mdx +9 -9
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/aws-lambda.mdx +13 -16
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/azure-app-services.mdx +5 -7
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/cloudflare-deployer.mdx +8 -5
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/digital-ocean.mdx +18 -23
- package/.docs/raw/guides/deployment/index.mdx +32 -0
- package/.docs/raw/guides/deployment/inngest.mdx +673 -0
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/netlify-deployer.mdx +7 -3
- package/.docs/raw/{deployment/cloud-providers → guides/deployment}/vercel-deployer.mdx +8 -5
- package/.docs/raw/guides/getting-started/astro.mdx +292 -451
- package/.docs/raw/guides/getting-started/express.mdx +72 -153
- package/.docs/raw/guides/getting-started/hono.mdx +227 -0
- package/.docs/raw/guides/getting-started/next-js.mdx +173 -61
- package/.docs/raw/guides/getting-started/nuxt.mdx +505 -0
- package/.docs/raw/guides/getting-started/quickstart.mdx +5 -5
- package/.docs/raw/guides/getting-started/sveltekit.mdx +238 -409
- package/.docs/raw/guides/getting-started/vite-react.mdx +317 -147
- package/.docs/raw/guides/guide/ai-recruiter.mdx +10 -10
- package/.docs/raw/guides/guide/chef-michel.mdx +9 -11
- package/.docs/raw/guides/guide/notes-mcp-server.mdx +15 -15
- package/.docs/raw/guides/guide/research-assistant.mdx +20 -20
- package/.docs/raw/guides/guide/stock-agent.mdx +5 -5
- package/.docs/raw/guides/guide/web-search.mdx +38 -38
- package/.docs/raw/guides/guide/whatsapp-chat-bot.mdx +7 -7
- package/.docs/raw/guides/index.mdx +0 -1
- package/.docs/raw/guides/migrations/ai-sdk-v4-to-v5.mdx +2 -2
- package/.docs/raw/guides/migrations/upgrade-to-v1/agent.mdx +105 -4
- package/.docs/raw/guides/migrations/upgrade-to-v1/cli.mdx +15 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/client.mdx +170 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/deployment.mdx +42 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/mastra.mdx +0 -35
- package/.docs/raw/guides/migrations/upgrade-to-v1/memory.mdx +40 -3
- package/.docs/raw/guides/migrations/upgrade-to-v1/overview.mdx +17 -2
- package/.docs/raw/guides/migrations/upgrade-to-v1/processors.mdx +11 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/rag.mdx +47 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/storage.mdx +271 -25
- package/.docs/raw/guides/migrations/upgrade-to-v1/tracing.mdx +72 -17
- package/.docs/raw/guides/migrations/upgrade-to-v1/vectors.mdx +46 -1
- package/.docs/raw/guides/migrations/upgrade-to-v1/workflows.mdx +50 -7
- package/.docs/raw/guides/migrations/vnext-to-standard-apis.mdx +21 -23
- package/.docs/raw/index.mdx +2 -2
- package/.docs/raw/mastra-cloud/deployment.mdx +86 -0
- package/.docs/raw/mastra-cloud/observability.mdx +43 -0
- package/.docs/raw/mastra-cloud/overview.mdx +31 -0
- package/.docs/raw/mastra-cloud/setup.mdx +64 -0
- package/.docs/raw/mastra-cloud/studio.mdx +35 -0
- package/.docs/raw/mcp/overview.mdx +60 -25
- package/.docs/raw/mcp/publishing-mcp-server.mdx +7 -4
- package/.docs/raw/memory/memory-processors.mdx +17 -12
- package/.docs/raw/memory/message-history.mdx +72 -0
- package/.docs/raw/memory/overview.mdx +38 -76
- package/.docs/raw/memory/semantic-recall.mdx +65 -52
- package/.docs/raw/memory/storage.mdx +248 -0
- package/.docs/raw/memory/working-memory.mdx +24 -13
- package/.docs/raw/observability/logging.mdx +16 -15
- package/.docs/raw/observability/overview.mdx +27 -7
- package/.docs/raw/observability/tracing/bridges/otel.mdx +7 -4
- package/.docs/raw/observability/tracing/exporters/arize.mdx +61 -24
- package/.docs/raw/observability/tracing/exporters/braintrust.mdx +32 -22
- package/.docs/raw/observability/tracing/exporters/cloud.mdx +24 -5
- package/.docs/raw/observability/tracing/exporters/datadog.mdx +175 -0
- package/.docs/raw/observability/tracing/exporters/default.mdx +28 -7
- package/.docs/raw/observability/tracing/exporters/laminar.mdx +89 -0
- package/.docs/raw/observability/tracing/exporters/langfuse.mdx +31 -22
- package/.docs/raw/observability/tracing/exporters/langsmith.mdx +33 -3
- package/.docs/raw/observability/tracing/exporters/otel.mdx +194 -22
- package/.docs/raw/observability/tracing/exporters/posthog.mdx +32 -22
- package/.docs/raw/observability/tracing/exporters/sentry.mdx +198 -0
- package/.docs/raw/observability/tracing/overview.mdx +388 -108
- package/.docs/raw/observability/tracing/processors/sensitive-data-filter.mdx +27 -7
- package/.docs/raw/rag/chunking-and-embedding.mdx +22 -33
- package/.docs/raw/rag/graph-rag.mdx +223 -0
- package/.docs/raw/rag/overview.mdx +6 -3
- package/.docs/raw/rag/retrieval.mdx +53 -57
- package/.docs/raw/rag/vector-databases.mdx +55 -31
- package/.docs/raw/reference/agents/agent.mdx +17 -14
- package/.docs/raw/reference/agents/generate.mdx +172 -44
- package/.docs/raw/reference/agents/generateLegacy.mdx +5 -3
- package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +5 -3
- package/.docs/raw/reference/agents/getDefaultOptions.mdx +5 -3
- package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +5 -3
- package/.docs/raw/reference/agents/getDescription.mdx +3 -1
- package/.docs/raw/reference/agents/getInstructions.mdx +5 -3
- package/.docs/raw/reference/agents/getLLM.mdx +5 -3
- package/.docs/raw/reference/agents/getMemory.mdx +5 -3
- package/.docs/raw/reference/agents/getModel.mdx +5 -3
- package/.docs/raw/reference/agents/getTools.mdx +4 -2
- package/.docs/raw/reference/agents/getVoice.mdx +4 -2
- package/.docs/raw/reference/agents/listAgents.mdx +4 -2
- package/.docs/raw/reference/agents/listScorers.mdx +5 -3
- package/.docs/raw/reference/agents/listTools.mdx +4 -2
- package/.docs/raw/reference/agents/listWorkflows.mdx +4 -2
- package/.docs/raw/reference/agents/network.mdx +113 -1
- package/.docs/raw/reference/ai-sdk/chat-route.mdx +6 -3
- package/.docs/raw/reference/ai-sdk/handle-chat-stream.mdx +4 -2
- package/.docs/raw/reference/ai-sdk/handle-network-stream.mdx +4 -2
- package/.docs/raw/reference/ai-sdk/handle-workflow-stream.mdx +5 -3
- package/.docs/raw/reference/ai-sdk/network-route.mdx +6 -3
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-stream.mdx +10 -6
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-v4-messages.mdx +130 -0
- package/.docs/raw/reference/ai-sdk/to-ai-sdk-v5-messages.mdx +110 -0
- package/.docs/raw/reference/ai-sdk/with-mastra.mdx +122 -0
- package/.docs/raw/reference/ai-sdk/workflow-route.mdx +7 -4
- package/.docs/raw/reference/auth/auth0.mdx +5 -3
- package/.docs/raw/reference/auth/clerk.mdx +5 -3
- package/.docs/raw/reference/auth/firebase.mdx +6 -5
- package/.docs/raw/reference/auth/jwt.mdx +5 -3
- package/.docs/raw/reference/auth/supabase.mdx +5 -3
- package/.docs/raw/reference/auth/workos.mdx +5 -3
- package/.docs/raw/reference/cli/create-mastra.mdx +12 -10
- package/.docs/raw/reference/cli/mastra.mdx +63 -15
- package/.docs/raw/reference/client-js/agents.mdx +77 -35
- package/.docs/raw/reference/client-js/error-handling.mdx +3 -3
- package/.docs/raw/reference/client-js/logs.mdx +2 -0
- package/.docs/raw/reference/client-js/mastra-client.mdx +4 -2
- package/.docs/raw/reference/client-js/memory.mdx +43 -1
- package/.docs/raw/reference/client-js/observability.mdx +2 -0
- package/.docs/raw/reference/client-js/telemetry.mdx +2 -0
- package/.docs/raw/reference/client-js/tools.mdx +2 -0
- package/.docs/raw/reference/client-js/vectors.mdx +2 -0
- package/.docs/raw/reference/client-js/workflows.mdx +47 -3
- package/.docs/raw/reference/configuration.mdx +761 -0
- package/.docs/raw/reference/core/addGateway.mdx +2 -0
- package/.docs/raw/reference/core/getAgent.mdx +3 -1
- package/.docs/raw/reference/core/getAgentById.mdx +3 -1
- package/.docs/raw/reference/core/getDeployer.mdx +3 -1
- package/.docs/raw/reference/core/getGateway.mdx +2 -0
- package/.docs/raw/reference/core/getGatewayById.mdx +2 -0
- package/.docs/raw/reference/core/getLogger.mdx +3 -1
- package/.docs/raw/reference/core/getMCPServer.mdx +3 -1
- package/.docs/raw/reference/core/getMCPServerById.mdx +3 -1
- package/.docs/raw/reference/core/getMemory.mdx +7 -3
- package/.docs/raw/reference/core/getScorer.mdx +2 -0
- package/.docs/raw/reference/core/getScorerById.mdx +2 -0
- package/.docs/raw/reference/core/getServer.mdx +6 -4
- package/.docs/raw/reference/core/getStorage.mdx +5 -3
- package/.docs/raw/reference/core/getStoredAgentById.mdx +6 -4
- package/.docs/raw/reference/core/getTelemetry.mdx +3 -1
- package/.docs/raw/reference/core/getVector.mdx +3 -1
- package/.docs/raw/reference/core/getWorkflow.mdx +3 -1
- package/.docs/raw/reference/core/listAgents.mdx +3 -1
- package/.docs/raw/reference/core/listGateways.mdx +2 -0
- package/.docs/raw/reference/core/listLogs.mdx +3 -1
- package/.docs/raw/reference/core/listLogsByRunId.mdx +3 -1
- package/.docs/raw/reference/core/listMCPServers.mdx +3 -1
- package/.docs/raw/reference/core/listMemory.mdx +8 -4
- package/.docs/raw/reference/core/listScorers.mdx +2 -0
- package/.docs/raw/reference/core/listStoredAgents.mdx +7 -5
- package/.docs/raw/reference/core/listVectors.mdx +3 -1
- package/.docs/raw/reference/core/listWorkflows.mdx +3 -1
- package/.docs/raw/reference/core/mastra-class.mdx +27 -20
- package/.docs/raw/reference/core/mastra-model-gateway.mdx +2 -0
- package/.docs/raw/reference/core/setLogger.mdx +3 -1
- package/.docs/raw/reference/core/setStorage.mdx +6 -4
- package/.docs/raw/reference/deployer/cloudflare.mdx +22 -53
- package/.docs/raw/reference/deployer/deployer.mdx +2 -1
- package/.docs/raw/reference/deployer/netlify.mdx +4 -1
- package/.docs/raw/reference/deployer/vercel.mdx +5 -4
- package/.docs/raw/reference/evals/answer-relevancy.mdx +4 -1
- package/.docs/raw/reference/evals/answer-similarity.mdx +4 -1
- package/.docs/raw/reference/evals/bias.mdx +4 -1
- package/.docs/raw/reference/evals/completeness.mdx +4 -1
- package/.docs/raw/reference/evals/content-similarity.mdx +4 -1
- package/.docs/raw/reference/evals/context-precision.mdx +4 -1
- package/.docs/raw/reference/evals/context-relevance.mdx +2 -0
- package/.docs/raw/reference/evals/create-scorer.mdx +11 -3
- package/.docs/raw/reference/evals/faithfulness.mdx +4 -1
- package/.docs/raw/reference/evals/hallucination.mdx +4 -1
- package/.docs/raw/reference/evals/keyword-coverage.mdx +4 -1
- package/.docs/raw/reference/evals/mastra-scorer.mdx +2 -0
- package/.docs/raw/reference/evals/noise-sensitivity.mdx +2 -0
- package/.docs/raw/reference/evals/prompt-alignment.mdx +9 -7
- package/.docs/raw/reference/evals/run-evals.mdx +3 -1
- package/.docs/raw/reference/evals/scorer-utils.mdx +3 -0
- package/.docs/raw/reference/evals/textual-difference.mdx +4 -1
- package/.docs/raw/reference/evals/tone-consistency.mdx +4 -1
- package/.docs/raw/reference/evals/tool-call-accuracy.mdx +25 -23
- package/.docs/raw/reference/evals/toxicity.mdx +4 -1
- package/.docs/raw/reference/index.mdx +2 -1
- package/.docs/raw/reference/logging/pino-logger.mdx +10 -8
- package/.docs/raw/reference/memory/clone-utilities.mdx +345 -0
- package/.docs/raw/reference/memory/cloneThread.mdx +237 -0
- package/.docs/raw/reference/memory/createThread.mdx +6 -4
- package/.docs/raw/reference/memory/deleteMessages.mdx +4 -2
- package/.docs/raw/reference/memory/getThreadById.mdx +3 -1
- package/.docs/raw/reference/memory/listThreads.mdx +187 -0
- package/.docs/raw/reference/memory/memory-class.mdx +27 -20
- package/.docs/raw/reference/memory/recall.mdx +6 -4
- package/.docs/raw/reference/observability/tracing/bridges/otel.mdx +6 -2
- package/.docs/raw/reference/observability/tracing/configuration.mdx +51 -0
- package/.docs/raw/reference/observability/tracing/exporters/arize.mdx +25 -6
- package/.docs/raw/reference/observability/tracing/exporters/braintrust.mdx +23 -2
- package/.docs/raw/reference/observability/tracing/exporters/cloud-exporter.mdx +10 -0
- package/.docs/raw/reference/observability/tracing/exporters/console-exporter.mdx +3 -0
- package/.docs/raw/reference/observability/tracing/exporters/datadog.mdx +172 -0
- package/.docs/raw/reference/observability/tracing/exporters/default-exporter.mdx +10 -0
- package/.docs/raw/reference/observability/tracing/exporters/laminar.mdx +139 -0
- package/.docs/raw/reference/observability/tracing/exporters/langfuse.mdx +26 -4
- package/.docs/raw/reference/observability/tracing/exporters/langsmith.mdx +10 -0
- package/.docs/raw/reference/observability/tracing/exporters/otel.mdx +51 -34
- package/.docs/raw/reference/observability/tracing/exporters/posthog.mdx +25 -4
- package/.docs/raw/reference/observability/tracing/exporters/sentry.mdx +224 -0
- package/.docs/raw/reference/observability/tracing/instances.mdx +2 -0
- package/.docs/raw/reference/observability/tracing/interfaces.mdx +20 -0
- package/.docs/raw/reference/observability/tracing/processors/sensitive-data-filter.mdx +2 -0
- package/.docs/raw/reference/observability/tracing/spans.mdx +2 -0
- package/.docs/raw/reference/processors/batch-parts-processor.mdx +4 -2
- package/.docs/raw/reference/processors/language-detector.mdx +6 -3
- package/.docs/raw/reference/processors/message-history-processor.mdx +5 -2
- package/.docs/raw/reference/processors/moderation-processor.mdx +6 -4
- package/.docs/raw/reference/processors/pii-detector.mdx +6 -4
- package/.docs/raw/reference/processors/processor-interface.mdx +326 -23
- package/.docs/raw/reference/processors/prompt-injection-detector.mdx +5 -3
- package/.docs/raw/reference/processors/semantic-recall-processor.mdx +7 -2
- package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +5 -3
- package/.docs/raw/reference/processors/token-limiter-processor.mdx +62 -19
- package/.docs/raw/reference/processors/tool-call-filter.mdx +5 -3
- package/.docs/raw/reference/processors/unicode-normalizer.mdx +6 -3
- package/.docs/raw/reference/processors/working-memory-processor.mdx +6 -3
- package/.docs/raw/reference/rag/chunk.mdx +7 -6
- package/.docs/raw/reference/rag/database-config.mdx +8 -6
- package/.docs/raw/reference/rag/document.mdx +2 -0
- package/.docs/raw/reference/rag/embeddings.mdx +2 -0
- package/.docs/raw/reference/rag/extract-params.mdx +57 -3
- package/.docs/raw/reference/rag/graph-rag.mdx +2 -0
- package/.docs/raw/reference/rag/metadata-filters.mdx +27 -7
- package/.docs/raw/reference/rag/rerank.mdx +2 -0
- package/.docs/raw/reference/rag/rerankWithScorer.mdx +2 -0
- package/.docs/raw/reference/server/create-route.mdx +34 -18
- package/.docs/raw/reference/server/express-adapter.mdx +27 -51
- package/.docs/raw/reference/server/fastify-adapter.mdx +130 -0
- package/.docs/raw/reference/server/hono-adapter.mdx +27 -51
- package/.docs/raw/reference/server/koa-adapter.mdx +129 -0
- package/.docs/raw/reference/server/mastra-server.mdx +52 -34
- package/.docs/raw/reference/server/routes.mdx +73 -10
- package/.docs/raw/reference/storage/cloudflare-d1.mdx +10 -5
- package/.docs/raw/reference/storage/cloudflare.mdx +12 -2
- package/.docs/raw/reference/storage/composite.mdx +245 -0
- package/.docs/raw/reference/storage/convex.mdx +8 -6
- package/.docs/raw/reference/storage/dynamodb.mdx +134 -8
- package/.docs/raw/reference/storage/lance.mdx +9 -5
- package/.docs/raw/reference/storage/libsql.mdx +76 -54
- package/.docs/raw/reference/storage/mongodb.mdx +115 -16
- package/.docs/raw/reference/storage/mssql.mdx +11 -6
- package/.docs/raw/{server-db/storage.mdx → reference/storage/overview.mdx} +15 -111
- package/.docs/raw/reference/storage/postgresql.mdx +228 -83
- package/.docs/raw/reference/storage/upstash.mdx +78 -2
- package/.docs/raw/reference/streaming/ChunkType.mdx +31 -3
- package/.docs/raw/reference/streaming/agents/MastraModelOutput.mdx +67 -6
- package/.docs/raw/reference/streaming/agents/stream.mdx +48 -51
- package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +5 -3
- package/.docs/raw/reference/streaming/workflows/observeStream.mdx +3 -1
- package/.docs/raw/reference/streaming/workflows/resumeStream.mdx +3 -1
- package/.docs/raw/reference/streaming/workflows/stream.mdx +37 -22
- package/.docs/raw/reference/streaming/workflows/timeTravelStream.mdx +6 -4
- package/.docs/raw/reference/templates/overview.mdx +3 -2
- package/.docs/raw/reference/tools/client.mdx +3 -0
- package/.docs/raw/reference/tools/create-tool.mdx +127 -5
- package/.docs/raw/reference/tools/document-chunker-tool.mdx +2 -0
- package/.docs/raw/reference/tools/graph-rag-tool.mdx +40 -3
- package/.docs/raw/reference/tools/mcp-client.mdx +110 -1
- package/.docs/raw/reference/tools/mcp-server.mdx +278 -24
- package/.docs/raw/reference/tools/vector-query-tool.mdx +68 -4
- package/.docs/raw/reference/vectors/astra.mdx +5 -3
- package/.docs/raw/reference/vectors/chroma.mdx +5 -3
- package/.docs/raw/reference/vectors/convex.mdx +14 -12
- package/.docs/raw/reference/vectors/couchbase.mdx +7 -5
- package/.docs/raw/reference/vectors/duckdb.mdx +12 -10
- package/.docs/raw/reference/vectors/elasticsearch.mdx +12 -4
- package/.docs/raw/reference/vectors/lance.mdx +6 -4
- package/.docs/raw/reference/vectors/libsql.mdx +66 -13
- package/.docs/raw/reference/vectors/mongodb.mdx +90 -10
- package/.docs/raw/reference/vectors/opensearch.mdx +30 -3
- package/.docs/raw/reference/vectors/pg.mdx +58 -6
- package/.docs/raw/reference/vectors/pinecone.mdx +23 -8
- package/.docs/raw/reference/vectors/qdrant.mdx +148 -4
- package/.docs/raw/reference/vectors/s3vectors.mdx +8 -6
- package/.docs/raw/reference/vectors/turbopuffer.mdx +6 -4
- package/.docs/raw/reference/vectors/upstash.mdx +60 -6
- package/.docs/raw/reference/vectors/vectorize.mdx +5 -3
- package/.docs/raw/reference/voice/azure.mdx +2 -0
- package/.docs/raw/reference/voice/cloudflare.mdx +2 -0
- package/.docs/raw/reference/voice/composite-voice.mdx +4 -0
- package/.docs/raw/reference/voice/deepgram.mdx +2 -0
- package/.docs/raw/reference/voice/elevenlabs.mdx +2 -0
- package/.docs/raw/reference/voice/google-gemini-live.mdx +3 -0
- package/.docs/raw/reference/voice/google.mdx +2 -0
- package/.docs/raw/reference/voice/mastra-voice.mdx +2 -0
- package/.docs/raw/reference/voice/murf.mdx +2 -0
- package/.docs/raw/reference/voice/openai-realtime.mdx +3 -0
- package/.docs/raw/reference/voice/openai.mdx +2 -0
- package/.docs/raw/reference/voice/playai.mdx +2 -0
- package/.docs/raw/reference/voice/sarvam.mdx +2 -0
- package/.docs/raw/reference/voice/speechify.mdx +2 -0
- package/.docs/raw/reference/voice/voice.addInstructions.mdx +3 -0
- package/.docs/raw/reference/voice/voice.addTools.mdx +3 -0
- package/.docs/raw/reference/voice/voice.answer.mdx +4 -0
- package/.docs/raw/reference/voice/voice.close.mdx +3 -0
- package/.docs/raw/reference/voice/voice.connect.mdx +5 -1
- package/.docs/raw/reference/voice/voice.events.mdx +2 -0
- package/.docs/raw/reference/voice/voice.getSpeakers.mdx +3 -0
- package/.docs/raw/reference/voice/voice.listen.mdx +6 -0
- package/.docs/raw/reference/voice/voice.off.mdx +2 -0
- package/.docs/raw/reference/voice/voice.on.mdx +5 -1
- package/.docs/raw/reference/voice/voice.send.mdx +4 -0
- package/.docs/raw/reference/voice/voice.speak.mdx +6 -0
- package/.docs/raw/reference/voice/voice.updateConfig.mdx +2 -0
- package/.docs/raw/reference/workflows/run-methods/cancel.mdx +55 -5
- package/.docs/raw/reference/workflows/run-methods/restart.mdx +3 -3
- package/.docs/raw/reference/workflows/run-methods/resume.mdx +6 -4
- package/.docs/raw/reference/workflows/run-methods/start.mdx +7 -5
- package/.docs/raw/reference/workflows/run-methods/startAsync.mdx +145 -0
- package/.docs/raw/reference/workflows/run-methods/timeTravel.mdx +10 -8
- package/.docs/raw/reference/workflows/run.mdx +11 -3
- package/.docs/raw/reference/workflows/step.mdx +56 -3
- package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +39 -2
- package/.docs/raw/reference/workflows/workflow-methods/dountil.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow-methods/dowhile.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow-methods/foreach.mdx +71 -4
- package/.docs/raw/reference/workflows/workflow-methods/map.mdx +9 -7
- package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +4 -6
- package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +4 -6
- package/.docs/raw/reference/workflows/workflow-methods/then.mdx +3 -1
- package/.docs/raw/reference/workflows/workflow.mdx +193 -2
- package/.docs/raw/{auth → server/auth}/auth0.mdx +40 -21
- package/.docs/raw/{auth → server/auth}/clerk.mdx +37 -16
- package/.docs/raw/{auth → server/auth}/firebase.mdx +47 -25
- package/.docs/raw/{auth → server/auth}/index.mdx +8 -6
- package/.docs/raw/{auth → server/auth}/jwt.mdx +22 -10
- package/.docs/raw/{auth → server/auth}/supabase.mdx +45 -25
- package/.docs/raw/{auth → server/auth}/workos.mdx +39 -20
- package/.docs/raw/{server-db → server}/custom-adapters.mdx +40 -24
- package/.docs/raw/{server-db → server}/custom-api-routes.mdx +6 -6
- package/.docs/raw/{server-db → server}/mastra-client.mdx +35 -38
- package/.docs/raw/server/mastra-server.mdx +86 -0
- package/.docs/raw/{server-db → server}/middleware.mdx +11 -9
- package/.docs/raw/{server-db → server}/request-context.mdx +85 -43
- package/.docs/raw/{server-db → server}/server-adapters.mdx +154 -33
- package/.docs/raw/streaming/events.mdx +16 -7
- package/.docs/raw/streaming/overview.mdx +30 -17
- package/.docs/raw/streaming/tool-streaming.mdx +8 -6
- package/.docs/raw/streaming/workflow-streaming.mdx +8 -8
- package/.docs/raw/tools-mcp/advanced-usage.mdx +4 -2
- package/.docs/raw/tools-mcp/mcp-overview.mdx +46 -12
- package/.docs/raw/tools-mcp/overview.mdx +14 -13
- package/.docs/raw/voice/overview.mdx +17 -2
- package/.docs/raw/voice/speech-to-speech.mdx +5 -0
- package/.docs/raw/voice/speech-to-text.mdx +4 -0
- package/.docs/raw/voice/text-to-speech.mdx +3 -0
- package/.docs/raw/workflows/agents-and-tools.mdx +70 -21
- package/.docs/raw/workflows/control-flow.mdx +369 -34
- package/.docs/raw/workflows/error-handling.mdx +192 -18
- package/.docs/raw/workflows/human-in-the-loop.mdx +8 -7
- package/.docs/raw/workflows/input-data-mapping.mdx +9 -7
- package/.docs/raw/workflows/overview.mdx +80 -34
- package/.docs/raw/workflows/snapshots.mdx +19 -45
- package/.docs/raw/workflows/suspend-and-resume.mdx +14 -14
- package/.docs/raw/workflows/time-travel.mdx +25 -21
- package/.docs/raw/workflows/workflow-state.mdx +7 -8
- package/CHANGELOG.md +260 -0
- package/README.md +36 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/logger.d.ts +3 -0
- package/dist/logger.d.ts.map +1 -1
- package/dist/stdio.js +746 -49
- package/dist/tools/course.d.ts.map +1 -1
- package/dist/tools/embedded-docs.d.ts +276 -0
- package/dist/tools/embedded-docs.d.ts.map +1 -0
- package/package.json +9 -8
- package/.docs/organized/changelogs/%40internal%2Fai-sdk-v4.md +0 -1
- package/.docs/raw/deployment/building-mastra.mdx +0 -73
- package/.docs/raw/deployment/cloud-providers/index.mdx +0 -55
- package/.docs/raw/deployment/mastra-cloud/dashboard.mdx +0 -100
- package/.docs/raw/deployment/mastra-cloud/observability.mdx +0 -53
- package/.docs/raw/deployment/mastra-cloud/overview.mdx +0 -65
- package/.docs/raw/deployment/mastra-cloud/setting-up.mdx +0 -105
- package/.docs/raw/memory/conversation-history.mdx +0 -24
- package/.docs/raw/memory/storage/memory-with-libsql.mdx +0 -140
- package/.docs/raw/memory/storage/memory-with-mongodb.mdx +0 -150
- package/.docs/raw/memory/storage/memory-with-pg.mdx +0 -138
- package/.docs/raw/memory/storage/memory-with-upstash.mdx +0 -146
- package/.docs/raw/memory/threads-and-resources.mdx +0 -95
- package/.docs/raw/reference/core/setTelemetry.mdx +0 -36
- package/.docs/raw/reference/memory/listThreadsByResourceId.mdx +0 -110
- package/.docs/raw/reference/memory/query.mdx +0 -189
- package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +0 -70
- package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +0 -66
- package/.docs/raw/server-db/mastra-server.mdx +0 -97
- package/.docs/raw/workflows/inngest-workflow.mdx +0 -363
|
@@ -1,6 +1,20 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "Retrieval, Semantic Search, Reranking | RAG"
|
|
3
3
|
description: Guide on retrieval processes in Mastra's RAG systems, including semantic search, filtering, and re-ranking.
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/astra"
|
|
6
|
+
- "@mastra/chroma"
|
|
7
|
+
- "@mastra/core"
|
|
8
|
+
- "@mastra/libsql"
|
|
9
|
+
- "@mastra/mongodb"
|
|
10
|
+
- "@mastra/opensearch"
|
|
11
|
+
- "@mastra/pg"
|
|
12
|
+
- "@mastra/pinecone"
|
|
13
|
+
- "@mastra/qdrant"
|
|
14
|
+
- "@mastra/rag"
|
|
15
|
+
- "@mastra/s3vectors"
|
|
16
|
+
- "@mastra/upstash"
|
|
17
|
+
- "@mastra/vectorize"
|
|
4
18
|
---
|
|
5
19
|
|
|
6
20
|
import Tabs from "@theme/Tabs";
|
|
@@ -26,7 +40,7 @@ Mastra provides flexible retrieval options with support for semantic search, fil
|
|
|
26
40
|
|
|
27
41
|
The simplest approach is direct semantic search. This method uses vector similarity to find chunks that are semantically similar to the query:
|
|
28
42
|
|
|
29
|
-
```ts
|
|
43
|
+
```ts
|
|
30
44
|
import { embed } from "ai";
|
|
31
45
|
import { PgVector } from "@mastra/pg";
|
|
32
46
|
import { ModelRouterEmbeddingModel } from "@mastra/core/llm";
|
|
@@ -56,7 +70,7 @@ The `topK` parameter specifies the maximum number of most similar results to ret
|
|
|
56
70
|
|
|
57
71
|
Results include both the text content and a similarity score:
|
|
58
72
|
|
|
59
|
-
```ts
|
|
73
|
+
```ts
|
|
60
74
|
[
|
|
61
75
|
{
|
|
62
76
|
text: "Climate change poses significant challenges...",
|
|
@@ -68,7 +82,6 @@ Results include both the text content and a similarity score:
|
|
|
68
82
|
score: 0.82,
|
|
69
83
|
metadata: { source: "article1.txt" },
|
|
70
84
|
},
|
|
71
|
-
// ... more results
|
|
72
85
|
];
|
|
73
86
|
```
|
|
74
87
|
|
|
@@ -76,13 +89,15 @@ Results include both the text content and a similarity score:
|
|
|
76
89
|
|
|
77
90
|
### Metadata Filtering
|
|
78
91
|
|
|
79
|
-
Filter results based on metadata fields to narrow down the search space. This
|
|
92
|
+
Filter results based on metadata fields to narrow down the search space. This approach - combining vector similarity search with metadata filters - is sometimes called hybrid vector search, as it merges semantic search with structured filtering criteria.
|
|
93
|
+
|
|
94
|
+
This is useful when you have documents from different sources, time periods, or with specific attributes. Mastra provides a unified MongoDB-style query syntax that works across all supported vector stores.
|
|
80
95
|
|
|
81
96
|
For detailed information about available operators and syntax, see the [Metadata Filters Reference](/reference/v1/rag/metadata-filters).
|
|
82
97
|
|
|
83
98
|
Basic filtering examples:
|
|
84
99
|
|
|
85
|
-
```ts
|
|
100
|
+
```ts
|
|
86
101
|
// Simple equality filter
|
|
87
102
|
const results = await pgVector.query({
|
|
88
103
|
indexName: "embeddings",
|
|
@@ -146,13 +161,14 @@ Common use cases for metadata filtering:
|
|
|
146
161
|
- Combine multiple conditions for precise querying
|
|
147
162
|
- Filter by document attributes (e.g., language, author)
|
|
148
163
|
|
|
149
|
-
For an example of how to use metadata filtering, see the [Hybrid Vector Search](/examples/v1/rag/query/hybrid-vector-search) example.
|
|
150
|
-
|
|
151
164
|
### Vector Query Tool
|
|
152
165
|
|
|
153
166
|
Sometimes you want to give your agent the ability to query a vector database directly. The Vector Query Tool allows your agent to be in charge of retrieval decisions, combining semantic search with optional filtering and reranking based on the agent's understanding of the user's needs.
|
|
154
167
|
|
|
155
|
-
```ts
|
|
168
|
+
```ts
|
|
169
|
+
import { createVectorQueryTool } from "@mastra/rag";
|
|
170
|
+
import { ModelRouterEmbeddingModel } from "@mastra/core/llm";
|
|
171
|
+
|
|
156
172
|
const vectorQueryTool = createVectorQueryTool({
|
|
157
173
|
vectorStoreName: "pgVector",
|
|
158
174
|
indexName: "embeddings",
|
|
@@ -176,10 +192,13 @@ The Vector Query Tool supports database-specific configurations that enable you
|
|
|
176
192
|
These configurations are for **query-time options** like namespaces, performance tuning, and filtering—not for database connection setup.
|
|
177
193
|
|
|
178
194
|
|
|
179
|
-
Connection credentials (URLs, auth tokens) are configured when you instantiate the vector store class (e.g., `new LibSQLVector({
|
|
195
|
+
Connection credentials (URLs, auth tokens) are configured when you instantiate the vector store class (e.g., `new LibSQLVector({ url: '...' })`).
|
|
180
196
|
:::
|
|
181
197
|
|
|
182
|
-
```ts
|
|
198
|
+
```ts
|
|
199
|
+
import { createVectorQueryTool } from "@mastra/rag";
|
|
200
|
+
import { ModelRouterEmbeddingModel } from "@mastra/core/llm";
|
|
201
|
+
|
|
183
202
|
// Pinecone with namespace
|
|
184
203
|
const pineconeQueryTool = createVectorQueryTool({
|
|
185
204
|
vectorStoreName: "pinecone",
|
|
@@ -251,7 +270,7 @@ const lanceQueryTool = createVectorQueryTool({
|
|
|
251
270
|
|
|
252
271
|
You can also override these configurations at runtime using the request context:
|
|
253
272
|
|
|
254
|
-
```ts
|
|
273
|
+
```ts
|
|
255
274
|
import { RequestContext } from "@mastra/core/request-context";
|
|
256
275
|
|
|
257
276
|
const requestContext = new RequestContext();
|
|
@@ -261,11 +280,10 @@ requestContext.set("databaseConfig", {
|
|
|
261
280
|
},
|
|
262
281
|
});
|
|
263
282
|
|
|
264
|
-
await pineconeQueryTool.execute(
|
|
265
|
-
|
|
266
|
-
mastra,
|
|
267
|
-
|
|
268
|
-
});
|
|
283
|
+
await pineconeQueryTool.execute(
|
|
284
|
+
{ queryText: "search query" },
|
|
285
|
+
{ mastra, requestContext }
|
|
286
|
+
);
|
|
269
287
|
```
|
|
270
288
|
|
|
271
289
|
For detailed configuration options and advanced usage, see the [Vector Query Tool Reference](/reference/v1/tools/vector-query-tool).
|
|
@@ -278,7 +296,7 @@ When implementing filtering, these prompts are required in the agent's instructi
|
|
|
278
296
|
<Tabs>
|
|
279
297
|
<TabItem value="pgvector" label="pgVector">
|
|
280
298
|
|
|
281
|
-
```ts
|
|
299
|
+
```ts
|
|
282
300
|
import { PGVECTOR_PROMPT } from "@mastra/pg";
|
|
283
301
|
|
|
284
302
|
export const ragAgent = new Agent({
|
|
@@ -297,7 +315,7 @@ export const ragAgent = new Agent({
|
|
|
297
315
|
|
|
298
316
|
<TabItem value="pinecone" label="Pinecone">
|
|
299
317
|
|
|
300
|
-
```ts title="vector-store.ts"
|
|
318
|
+
```ts title="vector-store.ts"
|
|
301
319
|
import { PINECONE_PROMPT } from "@mastra/pinecone";
|
|
302
320
|
|
|
303
321
|
export const ragAgent = new Agent({
|
|
@@ -316,7 +334,7 @@ export const ragAgent = new Agent({
|
|
|
316
334
|
|
|
317
335
|
<TabItem value="qdrant" label="Qdrant">
|
|
318
336
|
|
|
319
|
-
```ts title="vector-store.ts"
|
|
337
|
+
```ts title="vector-store.ts"
|
|
320
338
|
import { QDRANT_PROMPT } from "@mastra/qdrant";
|
|
321
339
|
|
|
322
340
|
export const ragAgent = new Agent({
|
|
@@ -335,7 +353,7 @@ export const ragAgent = new Agent({
|
|
|
335
353
|
|
|
336
354
|
<TabItem value="chroma" label="Chroma">
|
|
337
355
|
|
|
338
|
-
```ts title="vector-store.ts"
|
|
356
|
+
```ts title="vector-store.ts"
|
|
339
357
|
import { CHROMA_PROMPT } from "@mastra/chroma";
|
|
340
358
|
|
|
341
359
|
export const ragAgent = new Agent({
|
|
@@ -354,7 +372,7 @@ export const ragAgent = new Agent({
|
|
|
354
372
|
|
|
355
373
|
<TabItem value="astra" label="Astra">
|
|
356
374
|
|
|
357
|
-
```ts title="vector-store.ts"
|
|
375
|
+
```ts title="vector-store.ts"
|
|
358
376
|
import { ASTRA_PROMPT } from "@mastra/astra";
|
|
359
377
|
|
|
360
378
|
export const ragAgent = new Agent({
|
|
@@ -371,9 +389,9 @@ export const ragAgent = new Agent({
|
|
|
371
389
|
|
|
372
390
|
</TabItem>
|
|
373
391
|
|
|
374
|
-
<TabItem value="libsql" label="
|
|
392
|
+
<TabItem value="libsql" label="libSQL">
|
|
375
393
|
|
|
376
|
-
```ts title="vector-store.ts"
|
|
394
|
+
```ts title="vector-store.ts"
|
|
377
395
|
import { LIBSQL_PROMPT } from "@mastra/libsql";
|
|
378
396
|
|
|
379
397
|
export const ragAgent = new Agent({
|
|
@@ -392,7 +410,7 @@ export const ragAgent = new Agent({
|
|
|
392
410
|
|
|
393
411
|
<TabItem value="upstash" label="Upstash">
|
|
394
412
|
|
|
395
|
-
```ts title="vector-store.ts"
|
|
413
|
+
```ts title="vector-store.ts"
|
|
396
414
|
import { UPSTASH_PROMPT } from "@mastra/upstash";
|
|
397
415
|
|
|
398
416
|
export const ragAgent = new Agent({
|
|
@@ -411,7 +429,7 @@ export const ragAgent = new Agent({
|
|
|
411
429
|
|
|
412
430
|
<TabItem value="vectorize" label="Vectorize">
|
|
413
431
|
|
|
414
|
-
```ts title="vector-store.ts"
|
|
432
|
+
```ts title="vector-store.ts"
|
|
415
433
|
import { VECTORIZE_PROMPT } from "@mastra/vectorize";
|
|
416
434
|
|
|
417
435
|
export const ragAgent = new Agent({
|
|
@@ -430,7 +448,7 @@ export const ragAgent = new Agent({
|
|
|
430
448
|
|
|
431
449
|
<TabItem value="mongodb" label="MongoDB">
|
|
432
450
|
|
|
433
|
-
```ts title="vector-store.ts"
|
|
451
|
+
```ts title="vector-store.ts"
|
|
434
452
|
import { MONGODB_PROMPT } from "@mastra/mongodb";
|
|
435
453
|
|
|
436
454
|
export const ragAgent = new Agent({
|
|
@@ -449,7 +467,7 @@ export const ragAgent = new Agent({
|
|
|
449
467
|
|
|
450
468
|
<TabItem value="opensearch" label="OpenSearch">
|
|
451
469
|
|
|
452
|
-
```ts title="vector-store.ts"
|
|
470
|
+
```ts title="vector-store.ts"
|
|
453
471
|
import { OPENSEARCH_PROMPT } from "@mastra/opensearch";
|
|
454
472
|
|
|
455
473
|
export const ragAgent = new Agent({
|
|
@@ -468,7 +486,7 @@ export const ragAgent = new Agent({
|
|
|
468
486
|
|
|
469
487
|
<TabItem value="s3vectors" label="S3Vectors">
|
|
470
488
|
|
|
471
|
-
```ts title="vector-store.ts"
|
|
489
|
+
```ts title="vector-store.ts"
|
|
472
490
|
import { S3VECTORS_PROMPT } from "@mastra/s3vectors";
|
|
473
491
|
|
|
474
492
|
export const ragAgent = new Agent({
|
|
@@ -497,7 +515,7 @@ Initial vector similarity search can sometimes miss nuanced relevance. Re-rankin
|
|
|
497
515
|
|
|
498
516
|
Here's how to use re-ranking:
|
|
499
517
|
|
|
500
|
-
```ts
|
|
518
|
+
```ts
|
|
501
519
|
import {
|
|
502
520
|
rerankWithScorer as rerank,
|
|
503
521
|
MastraAgentRelevanceScorer
|
|
@@ -535,16 +553,17 @@ The weights control how different factors influence the final ranking:
|
|
|
535
553
|
- `vector`: Higher values favor the original vector similarity scores
|
|
536
554
|
- `position`: Higher values help maintain the original ordering of results
|
|
537
555
|
|
|
538
|
-
|
|
539
|
-
|
|
556
|
+
:::note
|
|
557
|
+
For semantic scoring to work properly during re-ranking, each result must include the text content in its `metadata.text` field.
|
|
558
|
+
:::
|
|
540
559
|
|
|
541
560
|
You can also use other relevance score providers like Cohere or ZeroEntropy:
|
|
542
561
|
|
|
543
|
-
```ts
|
|
562
|
+
```ts
|
|
544
563
|
const relevanceProvider = new CohereRelevanceScorer("rerank-v3.5");
|
|
545
564
|
```
|
|
546
565
|
|
|
547
|
-
```ts
|
|
566
|
+
```ts
|
|
548
567
|
const relevanceProvider = new ZeroEntropyRelevanceScorer("zerank-1");
|
|
549
568
|
```
|
|
550
569
|
|
|
@@ -552,27 +571,4 @@ The re-ranked results combine vector similarity with semantic understanding to i
|
|
|
552
571
|
|
|
553
572
|
For more details about re-ranking, see the [rerank()](/reference/v1/rag/rerankWithScorer) method.
|
|
554
573
|
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
For documents with complex relationships, graph-based retrieval can follow connections between chunks. This helps when:
|
|
558
|
-
|
|
559
|
-
- Information is spread across multiple documents
|
|
560
|
-
- Documents reference each other
|
|
561
|
-
- You need to traverse relationships to find complete answers
|
|
562
|
-
|
|
563
|
-
Example setup:
|
|
564
|
-
|
|
565
|
-
```ts showLineNumbers copy
|
|
566
|
-
const graphQueryTool = createGraphQueryTool({
|
|
567
|
-
vectorStoreName: "pgVector",
|
|
568
|
-
indexName: "embeddings",
|
|
569
|
-
model: new ModelRouterEmbeddingModel("openai/text-embedding-3-small"),
|
|
570
|
-
graphOptions: {
|
|
571
|
-
threshold: 0.7,
|
|
572
|
-
},
|
|
573
|
-
});
|
|
574
|
-
```
|
|
575
|
-
|
|
576
|
-
For more details about graph-based retrieval, see the [GraphRAG](/reference/v1/rag/graph-rag) class and the [createGraphQueryTool()](/reference/v1/tools/graph-rag-tool) function.
|
|
577
|
-
|
|
578
|
-
For an example of how to use the graph-based retrieval method, see the [Graph-based Retrieval](/examples/v1/rag/usage/graph-rag) example.
|
|
574
|
+
For graph-based retrieval that follows connections between chunks, see the [GraphRAG](/docs/v1/rag/graph-rag) documentation.
|
|
@@ -1,6 +1,21 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "Storing Embeddings in A Vector Database | RAG"
|
|
3
3
|
description: Guide on vector storage options in Mastra, including embedded and dedicated vector databases for similarity search.
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/astra"
|
|
6
|
+
- "@mastra/chroma"
|
|
7
|
+
- "@mastra/core"
|
|
8
|
+
- "@mastra/couchbase"
|
|
9
|
+
- "@mastra/elasticsearch"
|
|
10
|
+
- "@mastra/lance"
|
|
11
|
+
- "@mastra/mongodb"
|
|
12
|
+
- "@mastra/opensearch"
|
|
13
|
+
- "@mastra/pg"
|
|
14
|
+
- "@mastra/pinecone"
|
|
15
|
+
- "@mastra/qdrant"
|
|
16
|
+
- "@mastra/s3vectors"
|
|
17
|
+
- "@mastra/upstash"
|
|
18
|
+
- "@mastra/vectorize"
|
|
4
19
|
---
|
|
5
20
|
|
|
6
21
|
import Tabs from "@theme/Tabs";
|
|
@@ -15,10 +30,11 @@ After generating embeddings, you need to store them in a database that supports
|
|
|
15
30
|
<Tabs>
|
|
16
31
|
<TabItem value="mongodb" label="MongoDB">
|
|
17
32
|
|
|
18
|
-
```ts title="vector-store.ts"
|
|
33
|
+
```ts title="vector-store.ts"
|
|
19
34
|
import { MongoDBVector } from "@mastra/mongodb";
|
|
20
35
|
|
|
21
36
|
const store = new MongoDBVector({
|
|
37
|
+
id: 'mongodb-vector',
|
|
22
38
|
uri: process.env.MONGODB_URI,
|
|
23
39
|
dbName: process.env.MONGODB_DATABASE,
|
|
24
40
|
});
|
|
@@ -33,7 +49,7 @@ await store.upsert({
|
|
|
33
49
|
});
|
|
34
50
|
```
|
|
35
51
|
|
|
36
|
-
|
|
52
|
+
<h3>Using MongoDB Atlas Vector search</h3>
|
|
37
53
|
|
|
38
54
|
For detailed setup instructions and best practices, see the [official MongoDB Atlas Vector Search documentation](https://www.mongodb.com/docs/atlas/atlas-vector-search/vector-search-overview/?utm_campaign=devrel&utm_source=third-party-content&utm_medium=cta&utm_content=mastra-docs).
|
|
39
55
|
|
|
@@ -41,7 +57,7 @@ For detailed setup instructions and best practices, see the [official MongoDB At
|
|
|
41
57
|
|
|
42
58
|
<TabItem value="pg-vector" label="PgVector">
|
|
43
59
|
|
|
44
|
-
```ts title="vector-store.ts"
|
|
60
|
+
```ts title="vector-store.ts"
|
|
45
61
|
import { PgVector } from "@mastra/pg";
|
|
46
62
|
|
|
47
63
|
const store = new PgVector({
|
|
@@ -61,7 +77,7 @@ await store.upsert({
|
|
|
61
77
|
});
|
|
62
78
|
```
|
|
63
79
|
|
|
64
|
-
|
|
80
|
+
<h3>Using PostgreSQL with pgvector</h3>
|
|
65
81
|
|
|
66
82
|
PostgreSQL with the pgvector extension is a good solution for teams already using PostgreSQL who want to minimize infrastructure complexity.
|
|
67
83
|
For detailed setup instructions and best practices, see the [official pgvector repository](https://github.com/pgvector/pgvector).
|
|
@@ -70,7 +86,7 @@ For detailed setup instructions and best practices, see the [official pgvector r
|
|
|
70
86
|
|
|
71
87
|
<TabItem value="pinecone" label="Pinecone">
|
|
72
88
|
|
|
73
|
-
```ts title="vector-store.ts"
|
|
89
|
+
```ts title="vector-store.ts"
|
|
74
90
|
import { PineconeVector } from "@mastra/pinecone";
|
|
75
91
|
|
|
76
92
|
const store = new PineconeVector({
|
|
@@ -92,7 +108,7 @@ await store.upsert({
|
|
|
92
108
|
|
|
93
109
|
<TabItem value="qdrant" label="Qdrant">
|
|
94
110
|
|
|
95
|
-
```ts title="vector-store.ts"
|
|
111
|
+
```ts title="vector-store.ts"
|
|
96
112
|
import { QdrantVector } from "@mastra/qdrant";
|
|
97
113
|
|
|
98
114
|
const store = new QdrantVector({
|
|
@@ -117,7 +133,7 @@ await store.upsert({
|
|
|
117
133
|
|
|
118
134
|
<TabItem value="chroma" label="Chroma">
|
|
119
135
|
|
|
120
|
-
```ts title="vector-store.ts"
|
|
136
|
+
```ts title="vector-store.ts"
|
|
121
137
|
import { ChromaVector } from "@mastra/chroma";
|
|
122
138
|
|
|
123
139
|
// Running Chroma locally
|
|
@@ -147,10 +163,11 @@ await store.upsert({
|
|
|
147
163
|
|
|
148
164
|
<TabItem value="astra" label="Astra">
|
|
149
165
|
|
|
150
|
-
```ts title="vector-store.ts"
|
|
166
|
+
```ts title="vector-store.ts"
|
|
151
167
|
import { AstraVector } from "@mastra/astra";
|
|
152
168
|
|
|
153
169
|
const store = new AstraVector({
|
|
170
|
+
id: 'astra-vector',
|
|
154
171
|
token: process.env.ASTRA_DB_TOKEN,
|
|
155
172
|
endpoint: process.env.ASTRA_DB_ENDPOINT,
|
|
156
173
|
keyspace: process.env.ASTRA_DB_KEYSPACE,
|
|
@@ -170,14 +187,14 @@ await store.upsert({
|
|
|
170
187
|
|
|
171
188
|
</TabItem>
|
|
172
189
|
|
|
173
|
-
<TabItem value="libsql" label="
|
|
190
|
+
<TabItem value="libsql" label="libSQL">
|
|
174
191
|
|
|
175
|
-
```ts title="vector-store.ts"
|
|
192
|
+
```ts title="vector-store.ts"
|
|
176
193
|
import { LibSQLVector } from "@mastra/core/vector/libsql";
|
|
177
194
|
|
|
178
195
|
const store = new LibSQLVector({
|
|
179
196
|
id: 'libsql-vector',
|
|
180
|
-
|
|
197
|
+
url: process.env.DATABASE_URL,
|
|
181
198
|
authToken: process.env.DATABASE_AUTH_TOKEN, // Optional: for Turso cloud databases
|
|
182
199
|
});
|
|
183
200
|
|
|
@@ -197,7 +214,7 @@ await store.upsert({
|
|
|
197
214
|
|
|
198
215
|
<TabItem value="upstash" label="Upstash">
|
|
199
216
|
|
|
200
|
-
```ts title="vector-store.ts"
|
|
217
|
+
```ts title="vector-store.ts"
|
|
201
218
|
import { UpstashVector } from "@mastra/upstash";
|
|
202
219
|
|
|
203
220
|
// In upstash they refer to the store as an index
|
|
@@ -220,10 +237,11 @@ await store.upsert({
|
|
|
220
237
|
|
|
221
238
|
<TabItem value="cloudflare" label="Cloudflare">
|
|
222
239
|
|
|
223
|
-
```ts title="vector-store.ts"
|
|
240
|
+
```ts title="vector-store.ts"
|
|
224
241
|
import { CloudflareVector } from "@mastra/vectorize";
|
|
225
242
|
|
|
226
243
|
const store = new CloudflareVector({
|
|
244
|
+
id: 'cloudflare-vector',
|
|
227
245
|
accountId: process.env.CF_ACCOUNT_ID,
|
|
228
246
|
apiToken: process.env.CF_API_TOKEN,
|
|
229
247
|
});
|
|
@@ -242,10 +260,10 @@ await store.upsert({
|
|
|
242
260
|
|
|
243
261
|
<TabItem value="opensearch" label="OpenSearch">
|
|
244
262
|
|
|
245
|
-
```ts title="vector-store.ts"
|
|
263
|
+
```ts title="vector-store.ts"
|
|
246
264
|
import { OpenSearchVector } from "@mastra/opensearch";
|
|
247
265
|
|
|
248
|
-
const store = new OpenSearchVector({
|
|
266
|
+
const store = new OpenSearchVector({ id: "opensearch", node: process.env.OPENSEARCH_URL });
|
|
249
267
|
|
|
250
268
|
await store.createIndex({
|
|
251
269
|
indexName: "my-collection",
|
|
@@ -263,10 +281,10 @@ await store.upsert({
|
|
|
263
281
|
|
|
264
282
|
<TabItem value="elasticsearch" label="ElasticSearch">
|
|
265
283
|
|
|
266
|
-
```ts title="vector-store.ts"
|
|
284
|
+
```ts title="vector-store.ts"
|
|
267
285
|
import { ElasticSearchVector } from "@mastra/elasticsearch";
|
|
268
286
|
|
|
269
|
-
const store = new ElasticSearchVector({ url: process.env.ELASTICSEARCH_URL });
|
|
287
|
+
const store = new ElasticSearchVector({ id: 'elasticsearch-vector', url: process.env.ELASTICSEARCH_URL });
|
|
270
288
|
|
|
271
289
|
await store.createIndex({
|
|
272
290
|
indexName: "my-collection",
|
|
@@ -283,10 +301,11 @@ await store.upsert({
|
|
|
283
301
|
</TabItem>
|
|
284
302
|
<TabItem value="couchbase" label="Couchbase">
|
|
285
303
|
|
|
286
|
-
```ts title="vector-store.ts"
|
|
304
|
+
```ts title="vector-store.ts"
|
|
287
305
|
import { CouchbaseVector } from "@mastra/couchbase";
|
|
288
306
|
|
|
289
307
|
const store = new CouchbaseVector({
|
|
308
|
+
id: 'couchbase-vector',
|
|
290
309
|
connectionString: process.env.COUCHBASE_CONNECTION_STRING,
|
|
291
310
|
username: process.env.COUCHBASE_USERNAME,
|
|
292
311
|
password: process.env.COUCHBASE_PASSWORD,
|
|
@@ -308,7 +327,7 @@ await store.upsert({
|
|
|
308
327
|
</TabItem>
|
|
309
328
|
<TabItem value="lancedb" label="Lance">
|
|
310
329
|
|
|
311
|
-
```ts title="vector-store.ts"
|
|
330
|
+
```ts title="vector-store.ts"
|
|
312
331
|
import { LanceVectorStore } from "@mastra/lance";
|
|
313
332
|
|
|
314
333
|
const store = await LanceVectorStore.create("/path/to/db");
|
|
@@ -326,7 +345,7 @@ await store.upsert({
|
|
|
326
345
|
});
|
|
327
346
|
```
|
|
328
347
|
|
|
329
|
-
|
|
348
|
+
<h3>Using LanceDB</h3>
|
|
330
349
|
|
|
331
350
|
LanceDB is an embedded vector database built on the Lance columnar format, suitable for local development or cloud deployment.
|
|
332
351
|
For detailed setup instructions and best practices, see the [official LanceDB documentation](https://lancedb.github.io/lancedb/).
|
|
@@ -334,10 +353,11 @@ For detailed setup instructions and best practices, see the [official LanceDB do
|
|
|
334
353
|
</TabItem>
|
|
335
354
|
<TabItem value="s3vectors" label="S3 Vectors">
|
|
336
355
|
|
|
337
|
-
```ts title="vector-store.ts"
|
|
356
|
+
```ts title="vector-store.ts"
|
|
338
357
|
import { S3Vectors } from "@mastra/s3vectors";
|
|
339
358
|
|
|
340
359
|
const store = new S3Vectors({
|
|
360
|
+
id: 's3-vectors',
|
|
341
361
|
vectorBucketName: "my-vector-bucket",
|
|
342
362
|
clientConfig: {
|
|
343
363
|
region: "us-east-1",
|
|
@@ -368,7 +388,7 @@ Once initialized, all vector stores share the same interface for creating indexe
|
|
|
368
388
|
|
|
369
389
|
Before storing embeddings, you need to create an index with the appropriate dimension size for your embedding model:
|
|
370
390
|
|
|
371
|
-
```ts title="store-embeddings.ts"
|
|
391
|
+
```ts title="store-embeddings.ts"
|
|
372
392
|
// Create an index with dimension 1536 (for text-embedding-3-small)
|
|
373
393
|
await store.createIndex({
|
|
374
394
|
indexName: "myCollection",
|
|
@@ -380,9 +400,11 @@ The dimension size must match the output dimension of your chosen embedding mode
|
|
|
380
400
|
|
|
381
401
|
- OpenAI text-embedding-3-small: 1536 dimensions (or custom, e.g., 256)
|
|
382
402
|
- Cohere embed-multilingual-v3: 1024 dimensions
|
|
383
|
-
- Google
|
|
403
|
+
- Google text-embedding-004: 768 dimensions (or custom)
|
|
384
404
|
|
|
385
|
-
|
|
405
|
+
:::warning
|
|
406
|
+
Index dimensions cannot be changed after creation. To use a different model, delete and recreate the index with the new dimension size.
|
|
407
|
+
:::
|
|
386
408
|
|
|
387
409
|
### Naming Rules for Databases
|
|
388
410
|
|
|
@@ -443,7 +465,7 @@ Each vector database enforces specific naming conventions for indexes and collec
|
|
|
443
465
|
- Example: `my_collection_123` is valid
|
|
444
466
|
- Example: `my-collection` is not valid (contains hyphen)
|
|
445
467
|
</TabItem>
|
|
446
|
-
<TabItem value="libsql" label="
|
|
468
|
+
<TabItem value="libsql" label="libSQL">
|
|
447
469
|
Index names must:
|
|
448
470
|
- Start with a letter or underscore
|
|
449
471
|
- Contain only letters, numbers, and underscores
|
|
@@ -512,7 +534,7 @@ Each vector database enforces specific naming conventions for indexes and collec
|
|
|
512
534
|
|
|
513
535
|
After creating an index, you can store embeddings along with their basic metadata:
|
|
514
536
|
|
|
515
|
-
```ts title="store-embeddings.ts"
|
|
537
|
+
```ts title="store-embeddings.ts"
|
|
516
538
|
// Store embeddings with their corresponding metadata
|
|
517
539
|
await store.upsert({
|
|
518
540
|
indexName: "myCollection", // index name
|
|
@@ -535,9 +557,11 @@ The upsert operation:
|
|
|
535
557
|
|
|
536
558
|
Vector stores support rich metadata (any JSON-serializable fields) for filtering and organization. Since metadata is stored with no fixed schema, use consistent field naming to avoid unexpected query results.
|
|
537
559
|
|
|
538
|
-
|
|
560
|
+
:::warning
|
|
561
|
+
Metadata is crucial for vector storage - without it, you'd only have numerical embeddings with no way to return the original text or filter results. Always store at least the source text as metadata.
|
|
562
|
+
:::
|
|
539
563
|
|
|
540
|
-
```ts
|
|
564
|
+
```ts
|
|
541
565
|
// Store embeddings with rich metadata for better organization and filtering
|
|
542
566
|
await store.upsert({
|
|
543
567
|
indexName: "myCollection",
|
|
@@ -577,7 +601,7 @@ When building RAG applications, you often need to clean up stale vectors when do
|
|
|
577
601
|
|
|
578
602
|
The most common use case is deleting all vectors for a specific document when a user deletes it:
|
|
579
603
|
|
|
580
|
-
```ts title="delete-vectors.ts"
|
|
604
|
+
```ts title="delete-vectors.ts"
|
|
581
605
|
// Delete all vectors for a specific document
|
|
582
606
|
await store.deleteVectors({
|
|
583
607
|
indexName: "myCollection",
|
|
@@ -594,7 +618,7 @@ This is particularly useful when:
|
|
|
594
618
|
|
|
595
619
|
You can also use complex filters to delete vectors matching multiple conditions:
|
|
596
620
|
|
|
597
|
-
```ts title="delete-vectors-advanced.ts"
|
|
621
|
+
```ts title="delete-vectors-advanced.ts"
|
|
598
622
|
// Delete all vectors for multiple documents
|
|
599
623
|
await store.deleteVectors({
|
|
600
624
|
indexName: "myCollection",
|
|
@@ -619,7 +643,7 @@ await store.deleteVectors({
|
|
|
619
643
|
|
|
620
644
|
If you have specific vector IDs to delete, you can pass them directly:
|
|
621
645
|
|
|
622
|
-
```ts title="delete-by-ids.ts"
|
|
646
|
+
```ts title="delete-by-ids.ts"
|
|
623
647
|
// Delete specific vectors by their IDs
|
|
624
648
|
await store.deleteVectors({
|
|
625
649
|
indexName: "myCollection",
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: "Reference: Agent Class | Agents"
|
|
3
3
|
description: "Documentation for the `Agent` class in Mastra, which provides the foundation for creating AI agents with various capabilities."
|
|
4
|
+
packages:
|
|
5
|
+
- "@mastra/core"
|
|
4
6
|
---
|
|
5
7
|
|
|
6
8
|
# Agent Class
|
|
@@ -11,7 +13,7 @@ The `Agent` class is the foundation for creating AI agents in Mastra. It provide
|
|
|
11
13
|
|
|
12
14
|
### Basic string instructions
|
|
13
15
|
|
|
14
|
-
```typescript title="src/mastra/agents/string-agent.ts"
|
|
16
|
+
```typescript title="src/mastra/agents/string-agent.ts"
|
|
15
17
|
import { Agent } from "@mastra/core/agent";
|
|
16
18
|
|
|
17
19
|
// String instructions
|
|
@@ -49,7 +51,7 @@ export const agent3 = new Agent({
|
|
|
49
51
|
|
|
50
52
|
Use CoreSystemMessage format to access additional properties like `providerOptions` for provider-specific configurations:
|
|
51
53
|
|
|
52
|
-
```typescript title="src/mastra/agents/core-message-agent.ts"
|
|
54
|
+
```typescript title="src/mastra/agents/core-message-agent.ts"
|
|
53
55
|
import { Agent } from "@mastra/core/agent";
|
|
54
56
|
|
|
55
57
|
export const agent = new Agent({
|
|
@@ -71,7 +73,7 @@ export const agent = new Agent({
|
|
|
71
73
|
|
|
72
74
|
### Multiple CoreSystemMessages
|
|
73
75
|
|
|
74
|
-
```typescript title="src/mastra/agents/multi-message-agent.ts"
|
|
76
|
+
```typescript title="src/mastra/agents/multi-message-agent.ts"
|
|
75
77
|
import { Agent } from "@mastra/core/agent";
|
|
76
78
|
|
|
77
79
|
// This could be customizable based on the user
|
|
@@ -191,12 +193,6 @@ export const agent = new Agent({
|
|
|
191
193
|
description:
|
|
192
194
|
"Scoring configuration for runtime evaluation and telemetry. Can be static or dynamically provided.",
|
|
193
195
|
},
|
|
194
|
-
{
|
|
195
|
-
name: "evals",
|
|
196
|
-
type: "Record<string, Metric>",
|
|
197
|
-
isOptional: true,
|
|
198
|
-
description: "Evaluation metrics for scoring agent responses.",
|
|
199
|
-
},
|
|
200
196
|
{
|
|
201
197
|
name: "memory",
|
|
202
198
|
type: "MastraMemory | ({ requestContext: RequestContext }) => MastraMemory | Promise<MastraMemory>",
|
|
@@ -212,17 +208,24 @@ export const agent = new Agent({
|
|
|
212
208
|
},
|
|
213
209
|
{
|
|
214
210
|
name: "inputProcessors",
|
|
215
|
-
type: "Processor[] | ({ requestContext: RequestContext }) => Processor[] | Promise<Processor[]>",
|
|
211
|
+
type: "(Processor | ProcessorWorkflow)[] | ({ requestContext: RequestContext }) => (Processor | ProcessorWorkflow)[] | Promise<(Processor | ProcessorWorkflow)[]>",
|
|
216
212
|
isOptional: true,
|
|
217
213
|
description:
|
|
218
|
-
"Input processors that can modify or validate messages before they are processed by the agent.
|
|
214
|
+
"Input processors that can modify or validate messages before they are processed by the agent. Can be individual Processor objects or workflows created with `createWorkflow()` using ProcessorStepSchema.",
|
|
219
215
|
},
|
|
220
216
|
{
|
|
221
217
|
name: "outputProcessors",
|
|
222
|
-
type: "Processor[] | ({ requestContext: RequestContext }) => Processor[] | Promise<Processor[]>",
|
|
218
|
+
type: "(Processor | ProcessorWorkflow)[] | ({ requestContext: RequestContext }) => (Processor | ProcessorWorkflow)[] | Promise<(Processor | ProcessorWorkflow)[]>",
|
|
219
|
+
isOptional: true,
|
|
220
|
+
description:
|
|
221
|
+
"Output processors that can modify or validate messages from the agent before they are sent to the client. Can be individual Processor objects or workflows.",
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
name: "maxProcessorRetries",
|
|
225
|
+
type: "number",
|
|
223
226
|
isOptional: true,
|
|
224
227
|
description:
|
|
225
|
-
"
|
|
228
|
+
"Maximum number of times a processor can request retrying the LLM step.",
|
|
226
229
|
},
|
|
227
230
|
]}
|
|
228
231
|
/>
|
|
@@ -233,7 +236,7 @@ export const agent = new Agent({
|
|
|
233
236
|
content={[
|
|
234
237
|
{
|
|
235
238
|
name: "agent",
|
|
236
|
-
type: "Agent<TAgentId, TTools
|
|
239
|
+
type: "Agent<TAgentId, TTools>",
|
|
237
240
|
description: "A new Agent instance with the specified configuration.",
|
|
238
241
|
},
|
|
239
242
|
]}
|