@mastra/core 1.6.0 → 1.7.0

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.
Files changed (453) hide show
  1. package/CHANGELOG.md +236 -0
  2. package/dist/agent/agent.d.ts +6 -0
  3. package/dist/agent/agent.d.ts.map +1 -1
  4. package/dist/agent/index.cjs +8 -8
  5. package/dist/agent/index.js +1 -1
  6. package/dist/{chunk-VJWRJWSC.cjs → chunk-2X66GWF5.cjs} +94 -16
  7. package/dist/chunk-2X66GWF5.cjs.map +1 -0
  8. package/dist/{chunk-YM6245EM.js → chunk-6OXW5E2O.js} +3 -3
  9. package/dist/{chunk-YM6245EM.js.map → chunk-6OXW5E2O.js.map} +1 -1
  10. package/dist/{chunk-XWZAKKFT.cjs → chunk-6QBN6MZY.cjs} +14 -14
  11. package/dist/{chunk-XWZAKKFT.cjs.map → chunk-6QBN6MZY.cjs.map} +1 -1
  12. package/dist/{chunk-AYHSPIT6.cjs → chunk-7UAJ6LMR.cjs} +820 -259
  13. package/dist/chunk-7UAJ6LMR.cjs.map +1 -0
  14. package/dist/{chunk-RZNHRIM7.cjs → chunk-A72NTLFT.cjs} +5 -5
  15. package/dist/{chunk-RZNHRIM7.cjs.map → chunk-A72NTLFT.cjs.map} +1 -1
  16. package/dist/{chunk-EEU5NHHU.js → chunk-DFCRXDVK.js} +3 -3
  17. package/dist/{chunk-EEU5NHHU.js.map → chunk-DFCRXDVK.js.map} +1 -1
  18. package/dist/{chunk-5K45E5VE.js → chunk-GPJGPARM.js} +3 -2
  19. package/dist/chunk-GPJGPARM.js.map +1 -0
  20. package/dist/{chunk-LNKS4TJ6.cjs → chunk-HB6T4554.cjs} +8 -7
  21. package/dist/chunk-HB6T4554.cjs.map +1 -0
  22. package/dist/{chunk-DGS2KGDI.js → chunk-KUXNBWN7.js} +6 -5
  23. package/dist/chunk-KUXNBWN7.js.map +1 -0
  24. package/dist/{chunk-IHDE4CJV.js → chunk-QSHV7GPT.js} +89 -12
  25. package/dist/chunk-QSHV7GPT.js.map +1 -0
  26. package/dist/{chunk-3U3XFMGJ.cjs → chunk-QTAS3HND.cjs} +13 -8
  27. package/dist/chunk-QTAS3HND.cjs.map +1 -0
  28. package/dist/{chunk-RHKNKJNM.js → chunk-QWTB53GS.js} +4 -4
  29. package/dist/{chunk-RHKNKJNM.js.map → chunk-QWTB53GS.js.map} +1 -1
  30. package/dist/{chunk-4WG5K4CK.js → chunk-R4N65TLG.js} +7 -7
  31. package/dist/{chunk-4WG5K4CK.js.map → chunk-R4N65TLG.js.map} +1 -1
  32. package/dist/{chunk-5VQPSWPG.cjs → chunk-RABITNTG.cjs} +48 -48
  33. package/dist/{chunk-5VQPSWPG.cjs.map → chunk-RABITNTG.cjs.map} +1 -1
  34. package/dist/{chunk-TVPANHLE.cjs → chunk-SBOHDNIZ.cjs} +3 -2
  35. package/dist/chunk-SBOHDNIZ.cjs.map +1 -0
  36. package/dist/{chunk-MWGGSA5Q.js → chunk-T6GAM3SQ.js} +10 -5
  37. package/dist/chunk-T6GAM3SQ.js.map +1 -0
  38. package/dist/{chunk-TL2TTA4X.cjs → chunk-YQG7NBPR.cjs} +9 -9
  39. package/dist/{chunk-TL2TTA4X.cjs.map → chunk-YQG7NBPR.cjs.map} +1 -1
  40. package/dist/{chunk-XB3DA67Q.js → chunk-ZSBM2SVU.js} +818 -259
  41. package/dist/chunk-ZSBM2SVU.js.map +1 -0
  42. package/dist/datasets/experiment/scorer.d.ts.map +1 -1
  43. package/dist/datasets/index.cjs +17 -17
  44. package/dist/datasets/index.js +2 -2
  45. package/dist/evals/index.cjs +20 -20
  46. package/dist/evals/index.js +3 -3
  47. package/dist/evals/scoreTraces/index.cjs +7 -6
  48. package/dist/evals/scoreTraces/index.cjs.map +1 -1
  49. package/dist/evals/scoreTraces/index.js +4 -3
  50. package/dist/evals/scoreTraces/index.js.map +1 -1
  51. package/dist/evals/scoreTraces/scoreTracesWorkflow.d.ts.map +1 -1
  52. package/dist/harness/harness.d.ts +21 -1
  53. package/dist/harness/harness.d.ts.map +1 -1
  54. package/dist/harness/index.cjs +422 -5
  55. package/dist/harness/index.cjs.map +1 -1
  56. package/dist/harness/index.d.ts +2 -1
  57. package/dist/harness/index.d.ts.map +1 -1
  58. package/dist/harness/index.js +418 -3
  59. package/dist/harness/index.js.map +1 -1
  60. package/dist/harness/types.d.ts +151 -0
  61. package/dist/harness/types.d.ts.map +1 -1
  62. package/dist/index.cjs +2 -2
  63. package/dist/index.js +1 -1
  64. package/dist/loop/index.cjs +12 -12
  65. package/dist/loop/index.js +1 -1
  66. package/dist/loop/test-utils/tools.d.ts.map +1 -1
  67. package/dist/loop/workflows/agentic-loop/index.d.ts.map +1 -1
  68. package/dist/mastra/hooks.d.ts.map +1 -1
  69. package/dist/mastra/index.cjs +2 -2
  70. package/dist/mastra/index.js +1 -1
  71. package/dist/memory/index.cjs +14 -14
  72. package/dist/memory/index.js +1 -1
  73. package/dist/processor-provider/index.cjs +10 -10
  74. package/dist/processor-provider/index.js +1 -1
  75. package/dist/processors/index.cjs +45 -41
  76. package/dist/processors/index.js +1 -1
  77. package/dist/processors/processors/index.d.ts +1 -0
  78. package/dist/processors/processors/index.d.ts.map +1 -1
  79. package/dist/processors/processors/workspace-instructions.d.ts +50 -0
  80. package/dist/processors/processors/workspace-instructions.d.ts.map +1 -0
  81. package/dist/relevance/index.cjs +3 -3
  82. package/dist/relevance/index.js +1 -1
  83. package/dist/storage/constants.cjs +56 -56
  84. package/dist/storage/constants.d.ts.map +1 -1
  85. package/dist/storage/constants.js +1 -1
  86. package/dist/storage/index.cjs +160 -160
  87. package/dist/storage/index.js +2 -2
  88. package/dist/storage/types.d.ts +2 -0
  89. package/dist/storage/types.d.ts.map +1 -1
  90. package/dist/stream/aisdk/v5/compat/prepare-tools.d.ts.map +1 -1
  91. package/dist/stream/base/output.d.ts.map +1 -1
  92. package/dist/stream/index.cjs +8 -8
  93. package/dist/stream/index.js +1 -1
  94. package/dist/tool-loop-agent/index.cjs +4 -4
  95. package/dist/tool-loop-agent/index.js +1 -1
  96. package/dist/vector/index.cjs +7 -7
  97. package/dist/vector/index.js +1 -1
  98. package/dist/workflows/evented/index.cjs +10 -10
  99. package/dist/workflows/evented/index.js +1 -1
  100. package/dist/workflows/index.cjs +25 -25
  101. package/dist/workflows/index.js +1 -1
  102. package/dist/workspace/constants/index.d.ts +2 -0
  103. package/dist/workspace/constants/index.d.ts.map +1 -1
  104. package/dist/workspace/errors.d.ts +1 -1
  105. package/dist/workspace/errors.d.ts.map +1 -1
  106. package/dist/workspace/filesystem/composite-filesystem.d.ts +4 -1
  107. package/dist/workspace/filesystem/composite-filesystem.d.ts.map +1 -1
  108. package/dist/workspace/filesystem/file-write-lock.d.ts +35 -0
  109. package/dist/workspace/filesystem/file-write-lock.d.ts.map +1 -0
  110. package/dist/workspace/filesystem/filesystem.d.ts +5 -1
  111. package/dist/workspace/filesystem/filesystem.d.ts.map +1 -1
  112. package/dist/workspace/filesystem/index.d.ts +1 -0
  113. package/dist/workspace/filesystem/index.d.ts.map +1 -1
  114. package/dist/workspace/filesystem/local-filesystem.d.ts +17 -1
  115. package/dist/workspace/filesystem/local-filesystem.d.ts.map +1 -1
  116. package/dist/workspace/index.cjs +72 -64
  117. package/dist/workspace/index.d.ts +3 -2
  118. package/dist/workspace/index.d.ts.map +1 -1
  119. package/dist/workspace/index.js +1 -1
  120. package/dist/workspace/lifecycle.d.ts +1 -9
  121. package/dist/workspace/lifecycle.d.ts.map +1 -1
  122. package/dist/workspace/sandbox/index.d.ts +2 -0
  123. package/dist/workspace/sandbox/index.d.ts.map +1 -1
  124. package/dist/workspace/sandbox/local-process-manager.d.ts +18 -0
  125. package/dist/workspace/sandbox/local-process-manager.d.ts.map +1 -0
  126. package/dist/workspace/sandbox/local-sandbox.d.ts +49 -35
  127. package/dist/workspace/sandbox/local-sandbox.d.ts.map +1 -1
  128. package/dist/workspace/sandbox/mastra-sandbox.d.ts +45 -11
  129. package/dist/workspace/sandbox/mastra-sandbox.d.ts.map +1 -1
  130. package/dist/workspace/sandbox/native-sandbox/bubblewrap.d.ts +2 -3
  131. package/dist/workspace/sandbox/native-sandbox/bubblewrap.d.ts.map +1 -1
  132. package/dist/workspace/sandbox/native-sandbox/seatbelt.d.ts +2 -3
  133. package/dist/workspace/sandbox/native-sandbox/seatbelt.d.ts.map +1 -1
  134. package/dist/workspace/sandbox/native-sandbox/wrapper.d.ts +4 -5
  135. package/dist/workspace/sandbox/native-sandbox/wrapper.d.ts.map +1 -1
  136. package/dist/workspace/sandbox/process-manager/index.d.ts +4 -0
  137. package/dist/workspace/sandbox/process-manager/index.d.ts.map +1 -0
  138. package/dist/workspace/sandbox/process-manager/process-handle.d.ts +107 -0
  139. package/dist/workspace/sandbox/process-manager/process-handle.d.ts.map +1 -0
  140. package/dist/workspace/sandbox/process-manager/process-manager.d.ts +59 -0
  141. package/dist/workspace/sandbox/process-manager/process-manager.d.ts.map +1 -0
  142. package/dist/workspace/sandbox/process-manager/types.d.ts +24 -0
  143. package/dist/workspace/sandbox/process-manager/types.d.ts.map +1 -0
  144. package/dist/workspace/sandbox/sandbox.d.ts +38 -2
  145. package/dist/workspace/sandbox/sandbox.d.ts.map +1 -1
  146. package/dist/workspace/sandbox/types.d.ts +9 -2
  147. package/dist/workspace/sandbox/types.d.ts.map +1 -1
  148. package/dist/workspace/sandbox/utils.d.ts +7 -0
  149. package/dist/workspace/sandbox/utils.d.ts.map +1 -0
  150. package/dist/workspace/tools/execute-command.d.ts +53 -2
  151. package/dist/workspace/tools/execute-command.d.ts.map +1 -1
  152. package/dist/workspace/tools/get-process-output.d.ts +6 -0
  153. package/dist/workspace/tools/get-process-output.d.ts.map +1 -0
  154. package/dist/workspace/tools/index.d.ts +4 -1
  155. package/dist/workspace/tools/index.d.ts.map +1 -1
  156. package/dist/workspace/tools/kill-process.d.ts +4 -0
  157. package/dist/workspace/tools/kill-process.d.ts.map +1 -0
  158. package/dist/workspace/tools/output-helpers.d.ts +21 -0
  159. package/dist/workspace/tools/output-helpers.d.ts.map +1 -0
  160. package/dist/workspace/tools/tools.d.ts.map +1 -1
  161. package/dist/workspace/types.d.ts +31 -0
  162. package/dist/workspace/types.d.ts.map +1 -1
  163. package/dist/workspace/utils.d.ts +11 -0
  164. package/dist/workspace/utils.d.ts.map +1 -0
  165. package/dist/workspace/workspace.d.ts +36 -0
  166. package/dist/workspace/workspace.d.ts.map +1 -1
  167. package/package.json +7 -7
  168. package/dist/chunk-3U3XFMGJ.cjs.map +0 -1
  169. package/dist/chunk-5K45E5VE.js.map +0 -1
  170. package/dist/chunk-AYHSPIT6.cjs.map +0 -1
  171. package/dist/chunk-DGS2KGDI.js.map +0 -1
  172. package/dist/chunk-IHDE4CJV.js.map +0 -1
  173. package/dist/chunk-LNKS4TJ6.cjs.map +0 -1
  174. package/dist/chunk-MWGGSA5Q.js.map +0 -1
  175. package/dist/chunk-TVPANHLE.cjs.map +0 -1
  176. package/dist/chunk-VJWRJWSC.cjs.map +0 -1
  177. package/dist/chunk-XB3DA67Q.js.map +0 -1
  178. package/dist/docs/SKILL.md +0 -301
  179. package/dist/docs/assets/SOURCE_MAP.json +0 -1413
  180. package/dist/docs/references/docs-agents-adding-voice.md +0 -353
  181. package/dist/docs/references/docs-agents-agent-approval.md +0 -377
  182. package/dist/docs/references/docs-agents-agent-memory.md +0 -212
  183. package/dist/docs/references/docs-agents-guardrails.md +0 -382
  184. package/dist/docs/references/docs-agents-network-approval.md +0 -275
  185. package/dist/docs/references/docs-agents-networks.md +0 -290
  186. package/dist/docs/references/docs-agents-overview.md +0 -309
  187. package/dist/docs/references/docs-agents-processors.md +0 -632
  188. package/dist/docs/references/docs-agents-structured-output.md +0 -271
  189. package/dist/docs/references/docs-agents-using-tools.md +0 -214
  190. package/dist/docs/references/docs-evals-custom-scorers.md +0 -519
  191. package/dist/docs/references/docs-evals-overview.md +0 -146
  192. package/dist/docs/references/docs-evals-running-in-ci.md +0 -106
  193. package/dist/docs/references/docs-mcp-overview.md +0 -370
  194. package/dist/docs/references/docs-mcp-publishing-mcp-server.md +0 -95
  195. package/dist/docs/references/docs-memory-memory-processors.md +0 -316
  196. package/dist/docs/references/docs-memory-observational-memory.md +0 -246
  197. package/dist/docs/references/docs-memory-overview.md +0 -45
  198. package/dist/docs/references/docs-memory-semantic-recall.md +0 -272
  199. package/dist/docs/references/docs-memory-storage.md +0 -261
  200. package/dist/docs/references/docs-memory-working-memory.md +0 -400
  201. package/dist/docs/references/docs-observability-datasets-overview.md +0 -188
  202. package/dist/docs/references/docs-observability-datasets-running-experiments.md +0 -266
  203. package/dist/docs/references/docs-observability-logging.md +0 -99
  204. package/dist/docs/references/docs-observability-overview.md +0 -70
  205. package/dist/docs/references/docs-observability-tracing-bridges-otel.md +0 -209
  206. package/dist/docs/references/docs-observability-tracing-exporters-arize.md +0 -274
  207. package/dist/docs/references/docs-observability-tracing-exporters-braintrust.md +0 -111
  208. package/dist/docs/references/docs-observability-tracing-exporters-cloud.md +0 -129
  209. package/dist/docs/references/docs-observability-tracing-exporters-datadog.md +0 -187
  210. package/dist/docs/references/docs-observability-tracing-exporters-default.md +0 -211
  211. package/dist/docs/references/docs-observability-tracing-exporters-laminar.md +0 -100
  212. package/dist/docs/references/docs-observability-tracing-exporters-langfuse.md +0 -217
  213. package/dist/docs/references/docs-observability-tracing-exporters-langsmith.md +0 -202
  214. package/dist/docs/references/docs-observability-tracing-exporters-otel.md +0 -479
  215. package/dist/docs/references/docs-observability-tracing-exporters-posthog.md +0 -148
  216. package/dist/docs/references/docs-observability-tracing-overview.md +0 -1114
  217. package/dist/docs/references/docs-rag-chunking-and-embedding.md +0 -183
  218. package/dist/docs/references/docs-rag-graph-rag.md +0 -215
  219. package/dist/docs/references/docs-rag-overview.md +0 -72
  220. package/dist/docs/references/docs-rag-retrieval.md +0 -521
  221. package/dist/docs/references/docs-rag-vector-databases.md +0 -648
  222. package/dist/docs/references/docs-server-auth-auth0.md +0 -222
  223. package/dist/docs/references/docs-server-auth-clerk.md +0 -132
  224. package/dist/docs/references/docs-server-auth-composite-auth.md +0 -234
  225. package/dist/docs/references/docs-server-auth-custom-auth-provider.md +0 -513
  226. package/dist/docs/references/docs-server-auth-firebase.md +0 -272
  227. package/dist/docs/references/docs-server-auth-jwt.md +0 -110
  228. package/dist/docs/references/docs-server-auth-simple-auth.md +0 -178
  229. package/dist/docs/references/docs-server-auth-supabase.md +0 -117
  230. package/dist/docs/references/docs-server-auth-workos.md +0 -190
  231. package/dist/docs/references/docs-server-custom-adapters.md +0 -374
  232. package/dist/docs/references/docs-server-custom-api-routes.md +0 -267
  233. package/dist/docs/references/docs-server-mastra-client.md +0 -243
  234. package/dist/docs/references/docs-server-mastra-server.md +0 -71
  235. package/dist/docs/references/docs-server-middleware.md +0 -228
  236. package/dist/docs/references/docs-server-request-context.md +0 -478
  237. package/dist/docs/references/docs-streaming-events.md +0 -247
  238. package/dist/docs/references/docs-streaming-tool-streaming.md +0 -178
  239. package/dist/docs/references/docs-streaming-workflow-streaming.md +0 -109
  240. package/dist/docs/references/docs-voice-overview.md +0 -979
  241. package/dist/docs/references/docs-voice-speech-to-speech.md +0 -103
  242. package/dist/docs/references/docs-voice-speech-to-text.md +0 -80
  243. package/dist/docs/references/docs-voice-text-to-speech.md +0 -84
  244. package/dist/docs/references/docs-workflows-agents-and-tools.md +0 -170
  245. package/dist/docs/references/docs-workflows-control-flow.md +0 -823
  246. package/dist/docs/references/docs-workflows-error-handling.md +0 -360
  247. package/dist/docs/references/docs-workflows-human-in-the-loop.md +0 -213
  248. package/dist/docs/references/docs-workflows-overview.md +0 -372
  249. package/dist/docs/references/docs-workflows-snapshots.md +0 -238
  250. package/dist/docs/references/docs-workflows-suspend-and-resume.md +0 -205
  251. package/dist/docs/references/docs-workflows-time-travel.md +0 -309
  252. package/dist/docs/references/docs-workflows-workflow-state.md +0 -181
  253. package/dist/docs/references/docs-workspace-filesystem.md +0 -162
  254. package/dist/docs/references/docs-workspace-overview.md +0 -239
  255. package/dist/docs/references/docs-workspace-sandbox.md +0 -63
  256. package/dist/docs/references/docs-workspace-search.md +0 -219
  257. package/dist/docs/references/docs-workspace-skills.md +0 -126
  258. package/dist/docs/references/guides-agent-frameworks-ai-sdk.md +0 -140
  259. package/dist/docs/references/reference-agents-agent.md +0 -142
  260. package/dist/docs/references/reference-agents-generate.md +0 -174
  261. package/dist/docs/references/reference-agents-generateLegacy.md +0 -176
  262. package/dist/docs/references/reference-agents-getDefaultGenerateOptions.md +0 -36
  263. package/dist/docs/references/reference-agents-getDefaultOptions.md +0 -34
  264. package/dist/docs/references/reference-agents-getDefaultStreamOptions.md +0 -36
  265. package/dist/docs/references/reference-agents-getDescription.md +0 -21
  266. package/dist/docs/references/reference-agents-getInstructions.md +0 -34
  267. package/dist/docs/references/reference-agents-getLLM.md +0 -37
  268. package/dist/docs/references/reference-agents-getMemory.md +0 -34
  269. package/dist/docs/references/reference-agents-getModel.md +0 -34
  270. package/dist/docs/references/reference-agents-getTools.md +0 -29
  271. package/dist/docs/references/reference-agents-getVoice.md +0 -34
  272. package/dist/docs/references/reference-agents-listAgents.md +0 -35
  273. package/dist/docs/references/reference-agents-listScorers.md +0 -34
  274. package/dist/docs/references/reference-agents-listTools.md +0 -34
  275. package/dist/docs/references/reference-agents-listWorkflows.md +0 -34
  276. package/dist/docs/references/reference-agents-network.md +0 -134
  277. package/dist/docs/references/reference-ai-sdk-chat-route.md +0 -82
  278. package/dist/docs/references/reference-ai-sdk-network-route.md +0 -74
  279. package/dist/docs/references/reference-ai-sdk-to-ai-sdk-stream.md +0 -232
  280. package/dist/docs/references/reference-ai-sdk-with-mastra.md +0 -59
  281. package/dist/docs/references/reference-ai-sdk-workflow-route.md +0 -79
  282. package/dist/docs/references/reference-auth-auth0.md +0 -73
  283. package/dist/docs/references/reference-auth-clerk.md +0 -36
  284. package/dist/docs/references/reference-auth-firebase.md +0 -80
  285. package/dist/docs/references/reference-auth-jwt.md +0 -26
  286. package/dist/docs/references/reference-auth-supabase.md +0 -33
  287. package/dist/docs/references/reference-auth-workos.md +0 -84
  288. package/dist/docs/references/reference-client-js-agents.md +0 -438
  289. package/dist/docs/references/reference-configuration.md +0 -749
  290. package/dist/docs/references/reference-core-addGateway.md +0 -42
  291. package/dist/docs/references/reference-core-getAgent.md +0 -21
  292. package/dist/docs/references/reference-core-getAgentById.md +0 -21
  293. package/dist/docs/references/reference-core-getDeployer.md +0 -22
  294. package/dist/docs/references/reference-core-getGateway.md +0 -38
  295. package/dist/docs/references/reference-core-getGatewayById.md +0 -41
  296. package/dist/docs/references/reference-core-getLogger.md +0 -22
  297. package/dist/docs/references/reference-core-getMCPServer.md +0 -45
  298. package/dist/docs/references/reference-core-getMCPServerById.md +0 -53
  299. package/dist/docs/references/reference-core-getMemory.md +0 -50
  300. package/dist/docs/references/reference-core-getScorer.md +0 -54
  301. package/dist/docs/references/reference-core-getScorerById.md +0 -54
  302. package/dist/docs/references/reference-core-getServer.md +0 -22
  303. package/dist/docs/references/reference-core-getStorage.md +0 -22
  304. package/dist/docs/references/reference-core-getStoredAgentById.md +0 -89
  305. package/dist/docs/references/reference-core-getTelemetry.md +0 -22
  306. package/dist/docs/references/reference-core-getVector.md +0 -22
  307. package/dist/docs/references/reference-core-getWorkflow.md +0 -40
  308. package/dist/docs/references/reference-core-listAgents.md +0 -21
  309. package/dist/docs/references/reference-core-listGateways.md +0 -40
  310. package/dist/docs/references/reference-core-listLogs.md +0 -38
  311. package/dist/docs/references/reference-core-listLogsByRunId.md +0 -36
  312. package/dist/docs/references/reference-core-listMCPServers.md +0 -51
  313. package/dist/docs/references/reference-core-listMemory.md +0 -56
  314. package/dist/docs/references/reference-core-listScorers.md +0 -29
  315. package/dist/docs/references/reference-core-listStoredAgents.md +0 -93
  316. package/dist/docs/references/reference-core-listVectors.md +0 -22
  317. package/dist/docs/references/reference-core-listWorkflows.md +0 -21
  318. package/dist/docs/references/reference-core-mastra-class.md +0 -66
  319. package/dist/docs/references/reference-core-mastra-model-gateway.md +0 -153
  320. package/dist/docs/references/reference-core-setLogger.md +0 -26
  321. package/dist/docs/references/reference-core-setStorage.md +0 -27
  322. package/dist/docs/references/reference-datasets-addItem.md +0 -35
  323. package/dist/docs/references/reference-datasets-addItems.md +0 -33
  324. package/dist/docs/references/reference-datasets-compareExperiments.md +0 -48
  325. package/dist/docs/references/reference-datasets-create.md +0 -49
  326. package/dist/docs/references/reference-datasets-dataset.md +0 -78
  327. package/dist/docs/references/reference-datasets-datasets-manager.md +0 -84
  328. package/dist/docs/references/reference-datasets-delete.md +0 -23
  329. package/dist/docs/references/reference-datasets-deleteExperiment.md +0 -25
  330. package/dist/docs/references/reference-datasets-deleteItem.md +0 -25
  331. package/dist/docs/references/reference-datasets-deleteItems.md +0 -27
  332. package/dist/docs/references/reference-datasets-get.md +0 -29
  333. package/dist/docs/references/reference-datasets-getDetails.md +0 -45
  334. package/dist/docs/references/reference-datasets-getExperiment.md +0 -28
  335. package/dist/docs/references/reference-datasets-getItem.md +0 -31
  336. package/dist/docs/references/reference-datasets-getItemHistory.md +0 -29
  337. package/dist/docs/references/reference-datasets-list.md +0 -29
  338. package/dist/docs/references/reference-datasets-listExperimentResults.md +0 -37
  339. package/dist/docs/references/reference-datasets-listExperiments.md +0 -31
  340. package/dist/docs/references/reference-datasets-listItems.md +0 -44
  341. package/dist/docs/references/reference-datasets-listVersions.md +0 -31
  342. package/dist/docs/references/reference-datasets-startExperiment.md +0 -60
  343. package/dist/docs/references/reference-datasets-startExperimentAsync.md +0 -41
  344. package/dist/docs/references/reference-datasets-update.md +0 -46
  345. package/dist/docs/references/reference-datasets-updateItem.md +0 -36
  346. package/dist/docs/references/reference-evals-answer-relevancy.md +0 -105
  347. package/dist/docs/references/reference-evals-answer-similarity.md +0 -99
  348. package/dist/docs/references/reference-evals-bias.md +0 -120
  349. package/dist/docs/references/reference-evals-completeness.md +0 -137
  350. package/dist/docs/references/reference-evals-content-similarity.md +0 -101
  351. package/dist/docs/references/reference-evals-context-precision.md +0 -196
  352. package/dist/docs/references/reference-evals-create-scorer.md +0 -270
  353. package/dist/docs/references/reference-evals-faithfulness.md +0 -114
  354. package/dist/docs/references/reference-evals-hallucination.md +0 -220
  355. package/dist/docs/references/reference-evals-keyword-coverage.md +0 -128
  356. package/dist/docs/references/reference-evals-mastra-scorer.md +0 -123
  357. package/dist/docs/references/reference-evals-run-evals.md +0 -138
  358. package/dist/docs/references/reference-evals-scorer-utils.md +0 -330
  359. package/dist/docs/references/reference-evals-textual-difference.md +0 -113
  360. package/dist/docs/references/reference-evals-tone-consistency.md +0 -119
  361. package/dist/docs/references/reference-evals-toxicity.md +0 -123
  362. package/dist/docs/references/reference-harness-harness-class.md +0 -645
  363. package/dist/docs/references/reference-logging-pino-logger.md +0 -117
  364. package/dist/docs/references/reference-memory-deleteMessages.md +0 -40
  365. package/dist/docs/references/reference-memory-memory-class.md +0 -147
  366. package/dist/docs/references/reference-memory-observational-memory.md +0 -565
  367. package/dist/docs/references/reference-observability-tracing-bridges-otel.md +0 -131
  368. package/dist/docs/references/reference-observability-tracing-configuration.md +0 -178
  369. package/dist/docs/references/reference-observability-tracing-exporters-console-exporter.md +0 -138
  370. package/dist/docs/references/reference-observability-tracing-exporters-datadog.md +0 -116
  371. package/dist/docs/references/reference-observability-tracing-instances.md +0 -109
  372. package/dist/docs/references/reference-observability-tracing-interfaces.md +0 -749
  373. package/dist/docs/references/reference-observability-tracing-processors-sensitive-data-filter.md +0 -144
  374. package/dist/docs/references/reference-observability-tracing-spans.md +0 -224
  375. package/dist/docs/references/reference-processors-batch-parts-processor.md +0 -61
  376. package/dist/docs/references/reference-processors-language-detector.md +0 -81
  377. package/dist/docs/references/reference-processors-message-history-processor.md +0 -85
  378. package/dist/docs/references/reference-processors-moderation-processor.md +0 -104
  379. package/dist/docs/references/reference-processors-pii-detector.md +0 -107
  380. package/dist/docs/references/reference-processors-processor-interface.md +0 -525
  381. package/dist/docs/references/reference-processors-prompt-injection-detector.md +0 -71
  382. package/dist/docs/references/reference-processors-semantic-recall-processor.md +0 -123
  383. package/dist/docs/references/reference-processors-system-prompt-scrubber.md +0 -80
  384. package/dist/docs/references/reference-processors-token-limiter-processor.md +0 -113
  385. package/dist/docs/references/reference-processors-tool-call-filter.md +0 -85
  386. package/dist/docs/references/reference-processors-tool-search-processor.md +0 -113
  387. package/dist/docs/references/reference-processors-unicode-normalizer.md +0 -62
  388. package/dist/docs/references/reference-processors-working-memory-processor.md +0 -154
  389. package/dist/docs/references/reference-rag-database-config.md +0 -264
  390. package/dist/docs/references/reference-rag-embeddings.md +0 -92
  391. package/dist/docs/references/reference-server-mastra-server.md +0 -298
  392. package/dist/docs/references/reference-server-register-api-route.md +0 -249
  393. package/dist/docs/references/reference-storage-cloudflare-d1.md +0 -218
  394. package/dist/docs/references/reference-storage-composite.md +0 -235
  395. package/dist/docs/references/reference-storage-lance.md +0 -131
  396. package/dist/docs/references/reference-storage-libsql.md +0 -135
  397. package/dist/docs/references/reference-storage-mongodb.md +0 -262
  398. package/dist/docs/references/reference-storage-mssql.md +0 -155
  399. package/dist/docs/references/reference-storage-overview.md +0 -121
  400. package/dist/docs/references/reference-storage-postgresql.md +0 -529
  401. package/dist/docs/references/reference-storage-upstash.md +0 -160
  402. package/dist/docs/references/reference-streaming-ChunkType.md +0 -292
  403. package/dist/docs/references/reference-streaming-agents-MastraModelOutput.md +0 -182
  404. package/dist/docs/references/reference-streaming-agents-streamLegacy.md +0 -142
  405. package/dist/docs/references/reference-streaming-workflows-observeStream.md +0 -42
  406. package/dist/docs/references/reference-streaming-workflows-resumeStream.md +0 -61
  407. package/dist/docs/references/reference-streaming-workflows-stream.md +0 -88
  408. package/dist/docs/references/reference-streaming-workflows-timeTravelStream.md +0 -142
  409. package/dist/docs/references/reference-templates-overview.md +0 -194
  410. package/dist/docs/references/reference-tools-create-tool.md +0 -237
  411. package/dist/docs/references/reference-tools-graph-rag-tool.md +0 -185
  412. package/dist/docs/references/reference-tools-mcp-client.md +0 -962
  413. package/dist/docs/references/reference-tools-mcp-server.md +0 -1275
  414. package/dist/docs/references/reference-tools-vector-query-tool.md +0 -459
  415. package/dist/docs/references/reference-vectors-libsql.md +0 -305
  416. package/dist/docs/references/reference-vectors-mongodb.md +0 -295
  417. package/dist/docs/references/reference-vectors-pg.md +0 -408
  418. package/dist/docs/references/reference-vectors-upstash.md +0 -294
  419. package/dist/docs/references/reference-voice-composite-voice.md +0 -121
  420. package/dist/docs/references/reference-voice-mastra-voice.md +0 -313
  421. package/dist/docs/references/reference-voice-voice.addInstructions.md +0 -56
  422. package/dist/docs/references/reference-voice-voice.addTools.md +0 -67
  423. package/dist/docs/references/reference-voice-voice.connect.md +0 -94
  424. package/dist/docs/references/reference-voice-voice.events.md +0 -37
  425. package/dist/docs/references/reference-voice-voice.listen.md +0 -164
  426. package/dist/docs/references/reference-voice-voice.on.md +0 -111
  427. package/dist/docs/references/reference-voice-voice.speak.md +0 -157
  428. package/dist/docs/references/reference-workflows-run-methods-cancel.md +0 -86
  429. package/dist/docs/references/reference-workflows-run-methods-restart.md +0 -33
  430. package/dist/docs/references/reference-workflows-run-methods-resume.md +0 -59
  431. package/dist/docs/references/reference-workflows-run-methods-start.md +0 -58
  432. package/dist/docs/references/reference-workflows-run-methods-startAsync.md +0 -67
  433. package/dist/docs/references/reference-workflows-run-methods-timeTravel.md +0 -142
  434. package/dist/docs/references/reference-workflows-run.md +0 -59
  435. package/dist/docs/references/reference-workflows-step.md +0 -119
  436. package/dist/docs/references/reference-workflows-workflow-methods-branch.md +0 -25
  437. package/dist/docs/references/reference-workflows-workflow-methods-commit.md +0 -17
  438. package/dist/docs/references/reference-workflows-workflow-methods-create-run.md +0 -63
  439. package/dist/docs/references/reference-workflows-workflow-methods-dountil.md +0 -25
  440. package/dist/docs/references/reference-workflows-workflow-methods-dowhile.md +0 -25
  441. package/dist/docs/references/reference-workflows-workflow-methods-foreach.md +0 -118
  442. package/dist/docs/references/reference-workflows-workflow-methods-map.md +0 -93
  443. package/dist/docs/references/reference-workflows-workflow-methods-parallel.md +0 -21
  444. package/dist/docs/references/reference-workflows-workflow-methods-sleep.md +0 -35
  445. package/dist/docs/references/reference-workflows-workflow-methods-sleepUntil.md +0 -35
  446. package/dist/docs/references/reference-workflows-workflow-methods-then.md +0 -21
  447. package/dist/docs/references/reference-workflows-workflow.md +0 -157
  448. package/dist/docs/references/reference-workspace-filesystem.md +0 -202
  449. package/dist/docs/references/reference-workspace-local-filesystem.md +0 -327
  450. package/dist/docs/references/reference-workspace-local-sandbox.md +0 -285
  451. package/dist/docs/references/reference-workspace-sandbox.md +0 -81
  452. package/dist/docs/references/reference-workspace-workspace-class.md +0 -226
  453. package/dist/docs/references/reference.md +0 -276
@@ -1,521 +0,0 @@
1
- # Retrieval in RAG Systems
2
-
3
- After storing embeddings, you need to retrieve relevant chunks to answer user queries.
4
-
5
- Mastra provides flexible retrieval options with support for semantic search, filtering, and re-ranking.
6
-
7
- ## How Retrieval Works
8
-
9
- 1. The user's query is converted to an embedding using the same model used for document embeddings
10
- 2. This embedding is compared to stored embeddings using vector similarity
11
- 3. The most similar chunks are retrieved and can be optionally:
12
-
13
- - Filtered by metadata
14
- - Re-ranked for better relevance
15
- - Processed through a knowledge graph
16
-
17
- ## Basic Retrieval
18
-
19
- The simplest approach is direct semantic search. This method uses vector similarity to find chunks that are semantically similar to the query:
20
-
21
- ```ts
22
- import { embed } from "ai";
23
- import { PgVector } from "@mastra/pg";
24
- import { ModelRouterEmbeddingModel } from "@mastra/core/llm";
25
-
26
- // Convert query to embedding
27
- const { embedding } = await embed({
28
- value: "What are the main points in the article?",
29
- model: new ModelRouterEmbeddingModel("openai/text-embedding-3-small"),
30
- });
31
-
32
- // Query vector store
33
- const pgVector = new PgVector({
34
- id: 'pg-vector',
35
- connectionString: process.env.POSTGRES_CONNECTION_STRING,
36
- });
37
- const results = await pgVector.query({
38
- indexName: "embeddings",
39
- queryVector: embedding,
40
- topK: 10,
41
- });
42
-
43
- // Display results
44
- console.log(results);
45
- ```
46
-
47
- The `topK` parameter specifies the maximum number of most similar results to return from the vector search.
48
-
49
- Results include both the text content and a similarity score:
50
-
51
- ```ts
52
- [
53
- {
54
- text: "Climate change poses significant challenges...",
55
- score: 0.89,
56
- metadata: { source: "article1.txt" },
57
- },
58
- {
59
- text: "Rising temperatures affect crop yields...",
60
- score: 0.82,
61
- metadata: { source: "article1.txt" },
62
- },
63
- ];
64
- ```
65
-
66
- ## Advanced Retrieval options
67
-
68
- ### Metadata Filtering
69
-
70
- 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.
71
-
72
- 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.
73
-
74
- For detailed information about available operators and syntax, see the [Metadata Filters Reference](https://mastra.ai/reference/rag/metadata-filters).
75
-
76
- Basic filtering examples:
77
-
78
- ```ts
79
- // Simple equality filter
80
- const results = await pgVector.query({
81
- indexName: "embeddings",
82
- queryVector: embedding,
83
- topK: 10,
84
- filter: {
85
- source: "article1.txt",
86
- },
87
- });
88
-
89
- // Numeric comparison
90
- const results = await pgVector.query({
91
- indexName: "embeddings",
92
- queryVector: embedding,
93
- topK: 10,
94
- filter: {
95
- price: { $gt: 100 },
96
- },
97
- });
98
-
99
- // Multiple conditions
100
- const results = await pgVector.query({
101
- indexName: "embeddings",
102
- queryVector: embedding,
103
- topK: 10,
104
- filter: {
105
- category: "electronics",
106
- price: { $lt: 1000 },
107
- inStock: true,
108
- },
109
- });
110
-
111
- // Array operations
112
- const results = await pgVector.query({
113
- indexName: "embeddings",
114
- queryVector: embedding,
115
- topK: 10,
116
- filter: {
117
- tags: { $in: ["sale", "new"] },
118
- },
119
- });
120
-
121
- // Logical operators
122
- const results = await pgVector.query({
123
- indexName: "embeddings",
124
- queryVector: embedding,
125
- topK: 10,
126
- filter: {
127
- $or: [{ category: "electronics" }, { category: "accessories" }],
128
- $and: [{ price: { $gt: 50 } }, { price: { $lt: 200 } }],
129
- },
130
- });
131
- ```
132
-
133
- Common use cases for metadata filtering:
134
-
135
- - Filter by document source or type
136
- - Filter by date ranges
137
- - Filter by specific categories or tags
138
- - Filter by numerical ranges (e.g., price, rating)
139
- - Combine multiple conditions for precise querying
140
- - Filter by document attributes (e.g., language, author)
141
-
142
- ### Vector Query Tool
143
-
144
- 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.
145
-
146
- ```ts
147
- import { createVectorQueryTool } from "@mastra/rag";
148
- import { ModelRouterEmbeddingModel } from "@mastra/core/llm";
149
-
150
- const vectorQueryTool = createVectorQueryTool({
151
- vectorStoreName: "pgVector",
152
- indexName: "embeddings",
153
- model: new ModelRouterEmbeddingModel("openai/text-embedding-3-small"),
154
- });
155
- ```
156
-
157
- When creating the tool, pay special attention to the tool's name and description - these help the agent understand when and how to use the retrieval capabilities. For example, you might name it "SearchKnowledgeBase" and describe it as "Search through our documentation to find relevant information about X topic."
158
-
159
- This is particularly useful when:
160
-
161
- - Your agent needs to dynamically decide what information to retrieve
162
- - The retrieval process requires complex decision-making
163
- - You want the agent to combine multiple retrieval strategies based on context
164
-
165
- #### Database-Specific Configurations
166
-
167
- The Vector Query Tool supports database-specific configurations that enable you to leverage unique features and optimizations of different vector stores.
168
-
169
- > **Note:** These configurations are for **query-time options** like namespaces, performance tuning, and filtering—not for database connection setup.
170
- >
171
- > Connection credentials (URLs, auth tokens) are configured when you instantiate the vector store class (e.g., `new LibSQLVector({ url: '...' })`).
172
-
173
- ```ts
174
- import { createVectorQueryTool } from "@mastra/rag";
175
- import { ModelRouterEmbeddingModel } from "@mastra/core/llm";
176
-
177
- // Pinecone with namespace
178
- const pineconeQueryTool = createVectorQueryTool({
179
- vectorStoreName: "pinecone",
180
- indexName: "docs",
181
- model: new ModelRouterEmbeddingModel("openai/text-embedding-3-small"),
182
- databaseConfig: {
183
- pinecone: {
184
- namespace: "production", // Isolate data by environment
185
- },
186
- },
187
- });
188
-
189
- // pgVector with performance tuning
190
- const pgVectorQueryTool = createVectorQueryTool({
191
- vectorStoreName: "postgres",
192
- indexName: "embeddings",
193
- model: new ModelRouterEmbeddingModel("openai/text-embedding-3-small"),
194
- databaseConfig: {
195
- pgvector: {
196
- minScore: 0.7, // Filter low-quality results
197
- ef: 200, // HNSW search parameter
198
- probes: 10, // IVFFlat probe parameter
199
- },
200
- },
201
- });
202
-
203
- // Chroma with advanced filtering
204
- const chromaQueryTool = createVectorQueryTool({
205
- vectorStoreName: "chroma",
206
- indexName: "documents",
207
- model: new ModelRouterEmbeddingModel("openai/text-embedding-3-small"),
208
- databaseConfig: {
209
- chroma: {
210
- where: { category: "technical" },
211
- whereDocument: { $contains: "API" },
212
- },
213
- },
214
- });
215
-
216
- // LanceDB with table specificity
217
- const lanceQueryTool = createVectorQueryTool({
218
- vectorStoreName: "lance",
219
- indexName: "documents",
220
- model: new ModelRouterEmbeddingModel("openai/text-embedding-3-small"),
221
- databaseConfig: {
222
- lance: {
223
- tableName: "myVectors", // Specify which table to query
224
- includeAllColumns: true, // Include all metadata columns in results
225
- },
226
- },
227
- });
228
- ```
229
-
230
- **Key Benefits:**
231
-
232
- - **Pinecone namespaces**: Organize vectors by tenant, environment, or data type
233
- - **pgVector optimization**: Control search accuracy and speed with ef/probes parameters
234
- - **Quality filtering**: Set minimum similarity thresholds to improve result relevance
235
- - **LanceDB tables**: Separate data into tables for better organization and performance
236
- - **Runtime flexibility**: Override configurations dynamically based on context
237
-
238
- **Common Use Cases:**
239
-
240
- - Multi-tenant applications using Pinecone namespaces
241
- - Performance optimization in high-load scenarios
242
- - Environment-specific configurations (dev/staging/prod)
243
- - Quality-gated search results
244
- - Embedded, file-based vector storage with LanceDB for edge deployment scenarios
245
-
246
- You can also override these configurations at runtime using the request context:
247
-
248
- ```ts
249
- import { RequestContext } from "@mastra/core/request-context";
250
-
251
- const requestContext = new RequestContext();
252
- requestContext.set("databaseConfig", {
253
- pinecone: {
254
- namespace: "runtime-namespace",
255
- },
256
- });
257
-
258
- await pineconeQueryTool.execute(
259
- { queryText: "search query" },
260
- { mastra, requestContext }
261
- );
262
- ```
263
-
264
- For detailed configuration options and advanced usage, see the [Vector Query Tool Reference](https://mastra.ai/reference/tools/vector-query-tool).
265
-
266
- ### Vector Store Prompts
267
-
268
- Vector store prompts define query patterns and filtering capabilities for each vector database implementation. When implementing filtering, these prompts are required in the agent's instructions to specify valid operators and syntax for each vector store implementation.
269
-
270
- **pgVector**:
271
-
272
- ```ts
273
- import { PGVECTOR_PROMPT } from "@mastra/pg";
274
-
275
- export const ragAgent = new Agent({
276
- id: "rag-agent",
277
- name: "RAG Agent",
278
- model: "openai/gpt-5.1",
279
- instructions: `
280
- Process queries using the provided context. Structure responses to be concise and relevant.
281
- ${PGVECTOR_PROMPT}
282
- `,
283
- tools: { vectorQueryTool },
284
- });
285
- ```
286
-
287
- **Pinecone**:
288
-
289
- ```ts
290
- import { PINECONE_PROMPT } from "@mastra/pinecone";
291
-
292
- export const ragAgent = new Agent({
293
- id: "rag-agent",
294
- name: "RAG Agent",
295
- model: "openai/gpt-5.1",
296
- instructions: `
297
- Process queries using the provided context. Structure responses to be concise and relevant.
298
- ${PINECONE_PROMPT}
299
- `,
300
- tools: { vectorQueryTool },
301
- });
302
- ```
303
-
304
- **Qdrant**:
305
-
306
- ```ts
307
- import { QDRANT_PROMPT } from "@mastra/qdrant";
308
-
309
- export const ragAgent = new Agent({
310
- id: "rag-agent",
311
- name: "RAG Agent",
312
- model: "openai/gpt-5.1",
313
- instructions: `
314
- Process queries using the provided context. Structure responses to be concise and relevant.
315
- ${QDRANT_PROMPT}
316
- `,
317
- tools: { vectorQueryTool },
318
- });
319
- ```
320
-
321
- **Chroma**:
322
-
323
- ```ts
324
- import { CHROMA_PROMPT } from "@mastra/chroma";
325
-
326
- export const ragAgent = new Agent({
327
- id: "rag-agent",
328
- name: "RAG Agent",
329
- model: "openai/gpt-5.1",
330
- instructions: `
331
- Process queries using the provided context. Structure responses to be concise and relevant.
332
- ${CHROMA_PROMPT}
333
- `,
334
- tools: { vectorQueryTool },
335
- });
336
- ```
337
-
338
- **Astra**:
339
-
340
- ```ts
341
- import { ASTRA_PROMPT } from "@mastra/astra";
342
-
343
- export const ragAgent = new Agent({
344
- id: "rag-agent",
345
- name: "RAG Agent",
346
- model: "openai/gpt-5.1",
347
- instructions: `
348
- Process queries using the provided context. Structure responses to be concise and relevant.
349
- ${ASTRA_PROMPT}
350
- `,
351
- tools: { vectorQueryTool },
352
- });
353
- ```
354
-
355
- **libSQL**:
356
-
357
- ```ts
358
- import { LIBSQL_PROMPT } from "@mastra/libsql";
359
-
360
- export const ragAgent = new Agent({
361
- id: "rag-agent",
362
- name: "RAG Agent",
363
- model: "openai/gpt-5.1",
364
- instructions: `
365
- Process queries using the provided context. Structure responses to be concise and relevant.
366
- ${LIBSQL_PROMPT}
367
- `,
368
- tools: { vectorQueryTool },
369
- });
370
- ```
371
-
372
- **Upstash**:
373
-
374
- ```ts
375
- import { UPSTASH_PROMPT } from "@mastra/upstash";
376
-
377
- export const ragAgent = new Agent({
378
- id: "rag-agent",
379
- name: "RAG Agent",
380
- model: "openai/gpt-5.1",
381
- instructions: `
382
- Process queries using the provided context. Structure responses to be concise and relevant.
383
- ${UPSTASH_PROMPT}
384
- `,
385
- tools: { vectorQueryTool },
386
- });
387
- ```
388
-
389
- **Vectorize**:
390
-
391
- ```ts
392
- import { VECTORIZE_PROMPT } from "@mastra/vectorize";
393
-
394
- export const ragAgent = new Agent({
395
- id: "rag-agent",
396
- name: "RAG Agent",
397
- model: "openai/gpt-5.1",
398
- instructions: `
399
- Process queries using the provided context. Structure responses to be concise and relevant.
400
- ${VECTORIZE_PROMPT}
401
- `,
402
- tools: { vectorQueryTool },
403
- });
404
- ```
405
-
406
- **MongoDB**:
407
-
408
- ```ts
409
- import { MONGODB_PROMPT } from "@mastra/mongodb";
410
-
411
- export const ragAgent = new Agent({
412
- id: "rag-agent",
413
- name: "RAG Agent",
414
- model: "openai/gpt-5.1",
415
- instructions: `
416
- Process queries using the provided context. Structure responses to be concise and relevant.
417
- ${MONGODB_PROMPT}
418
- `,
419
- tools: { vectorQueryTool },
420
- });
421
- ```
422
-
423
- **OpenSearch**:
424
-
425
- ```ts
426
- import { OPENSEARCH_PROMPT } from "@mastra/opensearch";
427
-
428
- export const ragAgent = new Agent({
429
- id: "rag-agent",
430
- name: "RAG Agent",
431
- model: "openai/gpt-5.1",
432
- instructions: `
433
- Process queries using the provided context. Structure responses to be concise and relevant.
434
- ${OPENSEARCH_PROMPT}
435
- `,
436
- tools: { vectorQueryTool },
437
- });
438
- ```
439
-
440
- **S3Vectors**:
441
-
442
- ```ts
443
- import { S3VECTORS_PROMPT } from "@mastra/s3vectors";
444
-
445
- export const ragAgent = new Agent({
446
- id: "rag-agent",
447
- name: "RAG Agent",
448
- model: "openai/gpt-5.1",
449
- instructions: `
450
- Process queries using the provided context. Structure responses to be concise and relevant.
451
- ${S3VECTORS_PROMPT}
452
- `,
453
- tools: { vectorQueryTool },
454
- });
455
- ```
456
-
457
- ### Re-ranking
458
-
459
- Initial vector similarity search can sometimes miss nuanced relevance. Re-ranking is a more computationally expensive process, but more accurate algorithm that improves results by:
460
-
461
- - Considering word order and exact matches
462
- - Applying more sophisticated relevance scoring
463
- - Using a method called cross-attention between query and documents
464
-
465
- Here's how to use re-ranking:
466
-
467
- ```ts
468
- import {
469
- rerankWithScorer as rerank,
470
- MastraAgentRelevanceScorer
471
- } from "@mastra/rag";
472
-
473
- // Get initial results from vector search
474
- const initialResults = await pgVector.query({
475
- indexName: "embeddings",
476
- queryVector: queryEmbedding,
477
- topK: 10,
478
- });
479
-
480
- // Create a relevance scorer
481
- const relevanceProvider = new MastraAgentRelevanceScorer('relevance-scorer', "openai/gpt-5.1");
482
-
483
- // Re-rank the results
484
- const rerankedResults = await rerank({
485
- results: initialResults,
486
- query,
487
- scorer: relevanceProvider,
488
- options: {
489
- weights: {
490
- semantic: 0.5, // How well the content matches the query semantically
491
- vector: 0.3, // Original vector similarity score
492
- position: 0.2, // Preserves original result ordering
493
- },
494
- topK: 10,
495
- },
496
- );
497
- ```
498
-
499
- The weights control how different factors influence the final ranking:
500
-
501
- - `semantic`: Higher values prioritize semantic understanding and relevance to the query
502
- - `vector`: Higher values favor the original vector similarity scores
503
- - `position`: Higher values help maintain the original ordering of results
504
-
505
- > **Note:** For semantic scoring to work properly during re-ranking, each result must include the text content in its `metadata.text` field.
506
-
507
- You can also use other relevance score providers like Cohere or ZeroEntropy:
508
-
509
- ```ts
510
- const relevanceProvider = new CohereRelevanceScorer("rerank-v3.5");
511
- ```
512
-
513
- ```ts
514
- const relevanceProvider = new ZeroEntropyRelevanceScorer("zerank-1");
515
- ```
516
-
517
- The re-ranked results combine vector similarity with semantic understanding to improve retrieval quality.
518
-
519
- For more details about re-ranking, see the [rerank()](https://mastra.ai/reference/rag/rerankWithScorer) method.
520
-
521
- For graph-based retrieval that follows connections between chunks, see the [GraphRAG](https://mastra.ai/docs/rag/graph-rag) documentation.