@fairyhunter13/ai-sdk 6.0.116-fork.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.
Files changed (534) hide show
  1. package/CHANGELOG.md +7582 -0
  2. package/README.md +238 -0
  3. package/dist/index.d.mts +6751 -0
  4. package/dist/index.d.ts +6751 -0
  5. package/dist/index.js +14155 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/index.mjs +14127 -0
  8. package/dist/index.mjs.map +1 -0
  9. package/dist/internal/index.d.mts +324 -0
  10. package/dist/internal/index.d.ts +324 -0
  11. package/dist/internal/index.js +1352 -0
  12. package/dist/internal/index.js.map +1 -0
  13. package/dist/internal/index.mjs +1336 -0
  14. package/dist/internal/index.mjs.map +1 -0
  15. package/dist/test/index.d.mts +265 -0
  16. package/dist/test/index.d.ts +265 -0
  17. package/dist/test/index.js +509 -0
  18. package/dist/test/index.js.map +1 -0
  19. package/dist/test/index.mjs +472 -0
  20. package/dist/test/index.mjs.map +1 -0
  21. package/docs/00-introduction/index.mdx +76 -0
  22. package/docs/02-foundations/01-overview.mdx +43 -0
  23. package/docs/02-foundations/02-providers-and-models.mdx +158 -0
  24. package/docs/02-foundations/03-prompts.mdx +616 -0
  25. package/docs/02-foundations/04-tools.mdx +251 -0
  26. package/docs/02-foundations/05-streaming.mdx +62 -0
  27. package/docs/02-foundations/06-provider-options.mdx +345 -0
  28. package/docs/02-foundations/index.mdx +49 -0
  29. package/docs/02-getting-started/00-choosing-a-provider.mdx +110 -0
  30. package/docs/02-getting-started/01-navigating-the-library.mdx +85 -0
  31. package/docs/02-getting-started/02-nextjs-app-router.mdx +559 -0
  32. package/docs/02-getting-started/03-nextjs-pages-router.mdx +542 -0
  33. package/docs/02-getting-started/04-svelte.mdx +627 -0
  34. package/docs/02-getting-started/05-nuxt.mdx +566 -0
  35. package/docs/02-getting-started/06-nodejs.mdx +512 -0
  36. package/docs/02-getting-started/07-expo.mdx +766 -0
  37. package/docs/02-getting-started/08-tanstack-start.mdx +583 -0
  38. package/docs/02-getting-started/09-coding-agents.mdx +179 -0
  39. package/docs/02-getting-started/index.mdx +44 -0
  40. package/docs/03-agents/01-overview.mdx +96 -0
  41. package/docs/03-agents/02-building-agents.mdx +449 -0
  42. package/docs/03-agents/03-workflows.mdx +386 -0
  43. package/docs/03-agents/04-loop-control.mdx +394 -0
  44. package/docs/03-agents/05-configuring-call-options.mdx +286 -0
  45. package/docs/03-agents/06-memory.mdx +222 -0
  46. package/docs/03-agents/06-subagents.mdx +362 -0
  47. package/docs/03-agents/index.mdx +46 -0
  48. package/docs/03-ai-sdk-core/01-overview.mdx +31 -0
  49. package/docs/03-ai-sdk-core/05-generating-text.mdx +707 -0
  50. package/docs/03-ai-sdk-core/10-generating-structured-data.mdx +498 -0
  51. package/docs/03-ai-sdk-core/15-tools-and-tool-calling.mdx +1144 -0
  52. package/docs/03-ai-sdk-core/16-mcp-tools.mdx +383 -0
  53. package/docs/03-ai-sdk-core/20-prompt-engineering.mdx +146 -0
  54. package/docs/03-ai-sdk-core/25-settings.mdx +216 -0
  55. package/docs/03-ai-sdk-core/26-reasoning.mdx +190 -0
  56. package/docs/03-ai-sdk-core/30-embeddings.mdx +246 -0
  57. package/docs/03-ai-sdk-core/31-reranking.mdx +218 -0
  58. package/docs/03-ai-sdk-core/35-image-generation.mdx +341 -0
  59. package/docs/03-ai-sdk-core/36-transcription.mdx +227 -0
  60. package/docs/03-ai-sdk-core/37-speech.mdx +169 -0
  61. package/docs/03-ai-sdk-core/38-video-generation.mdx +366 -0
  62. package/docs/03-ai-sdk-core/40-middleware.mdx +485 -0
  63. package/docs/03-ai-sdk-core/45-provider-management.mdx +349 -0
  64. package/docs/03-ai-sdk-core/50-error-handling.mdx +149 -0
  65. package/docs/03-ai-sdk-core/55-testing.mdx +219 -0
  66. package/docs/03-ai-sdk-core/60-telemetry.mdx +391 -0
  67. package/docs/03-ai-sdk-core/65-devtools.mdx +107 -0
  68. package/docs/03-ai-sdk-core/65-event-listeners.mdx +1118 -0
  69. package/docs/03-ai-sdk-core/index.mdx +99 -0
  70. package/docs/04-ai-sdk-ui/01-overview.mdx +44 -0
  71. package/docs/04-ai-sdk-ui/02-chatbot.mdx +1320 -0
  72. package/docs/04-ai-sdk-ui/03-chatbot-message-persistence.mdx +535 -0
  73. package/docs/04-ai-sdk-ui/03-chatbot-resume-streams.mdx +263 -0
  74. package/docs/04-ai-sdk-ui/03-chatbot-tool-usage.mdx +682 -0
  75. package/docs/04-ai-sdk-ui/04-generative-user-interfaces.mdx +389 -0
  76. package/docs/04-ai-sdk-ui/05-completion.mdx +181 -0
  77. package/docs/04-ai-sdk-ui/08-object-generation.mdx +344 -0
  78. package/docs/04-ai-sdk-ui/20-streaming-data.mdx +397 -0
  79. package/docs/04-ai-sdk-ui/21-error-handling.mdx +190 -0
  80. package/docs/04-ai-sdk-ui/21-transport.mdx +174 -0
  81. package/docs/04-ai-sdk-ui/24-reading-ui-message-streams.mdx +104 -0
  82. package/docs/04-ai-sdk-ui/25-message-metadata.mdx +152 -0
  83. package/docs/04-ai-sdk-ui/50-stream-protocol.mdx +503 -0
  84. package/docs/04-ai-sdk-ui/index.mdx +64 -0
  85. package/docs/05-ai-sdk-rsc/01-overview.mdx +45 -0
  86. package/docs/05-ai-sdk-rsc/02-streaming-react-components.mdx +209 -0
  87. package/docs/05-ai-sdk-rsc/03-generative-ui-state.mdx +279 -0
  88. package/docs/05-ai-sdk-rsc/03-saving-and-restoring-states.mdx +105 -0
  89. package/docs/05-ai-sdk-rsc/04-multistep-interfaces.mdx +282 -0
  90. package/docs/05-ai-sdk-rsc/05-streaming-values.mdx +157 -0
  91. package/docs/05-ai-sdk-rsc/06-loading-state.mdx +273 -0
  92. package/docs/05-ai-sdk-rsc/08-error-handling.mdx +94 -0
  93. package/docs/05-ai-sdk-rsc/09-authentication.mdx +42 -0
  94. package/docs/05-ai-sdk-rsc/10-migrating-to-ui.mdx +722 -0
  95. package/docs/05-ai-sdk-rsc/index.mdx +63 -0
  96. package/docs/06-advanced/01-prompt-engineering.mdx +96 -0
  97. package/docs/06-advanced/02-stopping-streams.mdx +184 -0
  98. package/docs/06-advanced/03-backpressure.mdx +173 -0
  99. package/docs/06-advanced/04-caching.mdx +169 -0
  100. package/docs/06-advanced/05-multiple-streamables.mdx +68 -0
  101. package/docs/06-advanced/06-rate-limiting.mdx +60 -0
  102. package/docs/06-advanced/07-rendering-ui-with-language-models.mdx +225 -0
  103. package/docs/06-advanced/08-model-as-router.mdx +120 -0
  104. package/docs/06-advanced/09-multistep-interfaces.mdx +115 -0
  105. package/docs/06-advanced/09-sequential-generations.mdx +55 -0
  106. package/docs/06-advanced/10-vercel-deployment-guide.mdx +117 -0
  107. package/docs/06-advanced/index.mdx +11 -0
  108. package/docs/07-reference/01-ai-sdk-core/01-generate-text.mdx +2785 -0
  109. package/docs/07-reference/01-ai-sdk-core/02-stream-text.mdx +3752 -0
  110. package/docs/07-reference/01-ai-sdk-core/05-embed.mdx +332 -0
  111. package/docs/07-reference/01-ai-sdk-core/06-embed-many.mdx +330 -0
  112. package/docs/07-reference/01-ai-sdk-core/06-rerank.mdx +309 -0
  113. package/docs/07-reference/01-ai-sdk-core/10-generate-image.mdx +251 -0
  114. package/docs/07-reference/01-ai-sdk-core/11-transcribe.mdx +152 -0
  115. package/docs/07-reference/01-ai-sdk-core/12-generate-speech.mdx +221 -0
  116. package/docs/07-reference/01-ai-sdk-core/13-generate-video.mdx +264 -0
  117. package/docs/07-reference/01-ai-sdk-core/15-agent.mdx +235 -0
  118. package/docs/07-reference/01-ai-sdk-core/16-tool-loop-agent.mdx +973 -0
  119. package/docs/07-reference/01-ai-sdk-core/17-create-agent-ui-stream.mdx +154 -0
  120. package/docs/07-reference/01-ai-sdk-core/18-create-agent-ui-stream-response.mdx +173 -0
  121. package/docs/07-reference/01-ai-sdk-core/18-pipe-agent-ui-stream-to-response.mdx +150 -0
  122. package/docs/07-reference/01-ai-sdk-core/20-tool.mdx +209 -0
  123. package/docs/07-reference/01-ai-sdk-core/22-dynamic-tool.mdx +223 -0
  124. package/docs/07-reference/01-ai-sdk-core/23-create-mcp-client.mdx +423 -0
  125. package/docs/07-reference/01-ai-sdk-core/24-mcp-stdio-transport.mdx +68 -0
  126. package/docs/07-reference/01-ai-sdk-core/25-json-schema.mdx +94 -0
  127. package/docs/07-reference/01-ai-sdk-core/26-zod-schema.mdx +109 -0
  128. package/docs/07-reference/01-ai-sdk-core/27-valibot-schema.mdx +58 -0
  129. package/docs/07-reference/01-ai-sdk-core/28-output.mdx +342 -0
  130. package/docs/07-reference/01-ai-sdk-core/30-model-message.mdx +435 -0
  131. package/docs/07-reference/01-ai-sdk-core/31-ui-message.mdx +264 -0
  132. package/docs/07-reference/01-ai-sdk-core/32-validate-ui-messages.mdx +101 -0
  133. package/docs/07-reference/01-ai-sdk-core/33-safe-validate-ui-messages.mdx +113 -0
  134. package/docs/07-reference/01-ai-sdk-core/40-provider-registry.mdx +198 -0
  135. package/docs/07-reference/01-ai-sdk-core/42-custom-provider.mdx +157 -0
  136. package/docs/07-reference/01-ai-sdk-core/50-cosine-similarity.mdx +52 -0
  137. package/docs/07-reference/01-ai-sdk-core/60-wrap-language-model.mdx +59 -0
  138. package/docs/07-reference/01-ai-sdk-core/61-wrap-image-model.mdx +64 -0
  139. package/docs/07-reference/01-ai-sdk-core/65-language-model-v2-middleware.mdx +74 -0
  140. package/docs/07-reference/01-ai-sdk-core/66-extract-reasoning-middleware.mdx +68 -0
  141. package/docs/07-reference/01-ai-sdk-core/67-simulate-streaming-middleware.mdx +71 -0
  142. package/docs/07-reference/01-ai-sdk-core/68-default-settings-middleware.mdx +80 -0
  143. package/docs/07-reference/01-ai-sdk-core/69-add-tool-input-examples-middleware.mdx +155 -0
  144. package/docs/07-reference/01-ai-sdk-core/70-extract-json-middleware.mdx +147 -0
  145. package/docs/07-reference/01-ai-sdk-core/70-step-count-is.mdx +84 -0
  146. package/docs/07-reference/01-ai-sdk-core/71-has-tool-call.mdx +120 -0
  147. package/docs/07-reference/01-ai-sdk-core/75-simulate-readable-stream.mdx +94 -0
  148. package/docs/07-reference/01-ai-sdk-core/80-smooth-stream.mdx +145 -0
  149. package/docs/07-reference/01-ai-sdk-core/90-generate-id.mdx +30 -0
  150. package/docs/07-reference/01-ai-sdk-core/91-create-id-generator.mdx +89 -0
  151. package/docs/07-reference/01-ai-sdk-core/92-default-generated-file.mdx +68 -0
  152. package/docs/07-reference/01-ai-sdk-core/index.mdx +160 -0
  153. package/docs/07-reference/02-ai-sdk-ui/01-use-chat.mdx +493 -0
  154. package/docs/07-reference/02-ai-sdk-ui/02-use-completion.mdx +185 -0
  155. package/docs/07-reference/02-ai-sdk-ui/03-use-object.mdx +196 -0
  156. package/docs/07-reference/02-ai-sdk-ui/31-convert-to-model-messages.mdx +231 -0
  157. package/docs/07-reference/02-ai-sdk-ui/32-prune-messages.mdx +108 -0
  158. package/docs/07-reference/02-ai-sdk-ui/40-create-ui-message-stream.mdx +162 -0
  159. package/docs/07-reference/02-ai-sdk-ui/41-create-ui-message-stream-response.mdx +119 -0
  160. package/docs/07-reference/02-ai-sdk-ui/42-pipe-ui-message-stream-to-response.mdx +77 -0
  161. package/docs/07-reference/02-ai-sdk-ui/43-read-ui-message-stream.mdx +57 -0
  162. package/docs/07-reference/02-ai-sdk-ui/46-infer-ui-tools.mdx +99 -0
  163. package/docs/07-reference/02-ai-sdk-ui/47-infer-ui-tool.mdx +75 -0
  164. package/docs/07-reference/02-ai-sdk-ui/50-direct-chat-transport.mdx +333 -0
  165. package/docs/07-reference/02-ai-sdk-ui/index.mdx +89 -0
  166. package/docs/07-reference/03-ai-sdk-rsc/01-stream-ui.mdx +767 -0
  167. package/docs/07-reference/03-ai-sdk-rsc/02-create-ai.mdx +90 -0
  168. package/docs/07-reference/03-ai-sdk-rsc/03-create-streamable-ui.mdx +91 -0
  169. package/docs/07-reference/03-ai-sdk-rsc/04-create-streamable-value.mdx +78 -0
  170. package/docs/07-reference/03-ai-sdk-rsc/05-read-streamable-value.mdx +79 -0
  171. package/docs/07-reference/03-ai-sdk-rsc/06-get-ai-state.mdx +50 -0
  172. package/docs/07-reference/03-ai-sdk-rsc/07-get-mutable-ai-state.mdx +70 -0
  173. package/docs/07-reference/03-ai-sdk-rsc/08-use-ai-state.mdx +26 -0
  174. package/docs/07-reference/03-ai-sdk-rsc/09-use-actions.mdx +42 -0
  175. package/docs/07-reference/03-ai-sdk-rsc/10-use-ui-state.mdx +35 -0
  176. package/docs/07-reference/03-ai-sdk-rsc/11-use-streamable-value.mdx +46 -0
  177. package/docs/07-reference/03-ai-sdk-rsc/20-render.mdx +266 -0
  178. package/docs/07-reference/03-ai-sdk-rsc/index.mdx +67 -0
  179. package/docs/07-reference/05-ai-sdk-errors/ai-api-call-error.mdx +31 -0
  180. package/docs/07-reference/05-ai-sdk-errors/ai-download-error.mdx +28 -0
  181. package/docs/07-reference/05-ai-sdk-errors/ai-empty-response-body-error.mdx +24 -0
  182. package/docs/07-reference/05-ai-sdk-errors/ai-invalid-argument-error.mdx +26 -0
  183. package/docs/07-reference/05-ai-sdk-errors/ai-invalid-data-content-error.mdx +26 -0
  184. package/docs/07-reference/05-ai-sdk-errors/ai-invalid-message-role-error.mdx +25 -0
  185. package/docs/07-reference/05-ai-sdk-errors/ai-invalid-prompt-error.mdx +47 -0
  186. package/docs/07-reference/05-ai-sdk-errors/ai-invalid-response-data-error.mdx +25 -0
  187. package/docs/07-reference/05-ai-sdk-errors/ai-invalid-tool-approval-error.mdx +24 -0
  188. package/docs/07-reference/05-ai-sdk-errors/ai-invalid-tool-input-error.mdx +27 -0
  189. package/docs/07-reference/05-ai-sdk-errors/ai-json-parse-error.mdx +25 -0
  190. package/docs/07-reference/05-ai-sdk-errors/ai-load-api-key-error.mdx +24 -0
  191. package/docs/07-reference/05-ai-sdk-errors/ai-load-setting-error.mdx +24 -0
  192. package/docs/07-reference/05-ai-sdk-errors/ai-message-conversion-error.mdx +25 -0
  193. package/docs/07-reference/05-ai-sdk-errors/ai-no-content-generated-error.mdx +24 -0
  194. package/docs/07-reference/05-ai-sdk-errors/ai-no-image-generated-error.mdx +36 -0
  195. package/docs/07-reference/05-ai-sdk-errors/ai-no-object-generated-error.mdx +43 -0
  196. package/docs/07-reference/05-ai-sdk-errors/ai-no-output-generated-error.mdx +25 -0
  197. package/docs/07-reference/05-ai-sdk-errors/ai-no-speech-generated-error.mdx +24 -0
  198. package/docs/07-reference/05-ai-sdk-errors/ai-no-such-model-error.mdx +26 -0
  199. package/docs/07-reference/05-ai-sdk-errors/ai-no-such-provider-error.mdx +28 -0
  200. package/docs/07-reference/05-ai-sdk-errors/ai-no-such-tool-error.mdx +26 -0
  201. package/docs/07-reference/05-ai-sdk-errors/ai-no-transcript-generated-error.mdx +24 -0
  202. package/docs/07-reference/05-ai-sdk-errors/ai-no-video-generated-error.mdx +39 -0
  203. package/docs/07-reference/05-ai-sdk-errors/ai-retry-error.mdx +27 -0
  204. package/docs/07-reference/05-ai-sdk-errors/ai-too-many-embedding-values-for-call-error.mdx +27 -0
  205. package/docs/07-reference/05-ai-sdk-errors/ai-tool-call-not-found-for-approval-error.mdx +25 -0
  206. package/docs/07-reference/05-ai-sdk-errors/ai-tool-call-repair-error.mdx +28 -0
  207. package/docs/07-reference/05-ai-sdk-errors/ai-type-validation-error.mdx +25 -0
  208. package/docs/07-reference/05-ai-sdk-errors/ai-ui-message-stream-error.mdx +67 -0
  209. package/docs/07-reference/05-ai-sdk-errors/ai-unsupported-functionality-error.mdx +25 -0
  210. package/docs/07-reference/05-ai-sdk-errors/index.mdx +39 -0
  211. package/docs/07-reference/index.mdx +28 -0
  212. package/docs/08-migration-guides/00-versioning.mdx +46 -0
  213. package/docs/08-migration-guides/23-migration-guide-7-0.mdx +95 -0
  214. package/docs/08-migration-guides/24-migration-guide-6-0.mdx +823 -0
  215. package/docs/08-migration-guides/25-migration-guide-5-0-data.mdx +882 -0
  216. package/docs/08-migration-guides/26-migration-guide-5-0.mdx +3427 -0
  217. package/docs/08-migration-guides/27-migration-guide-4-2.mdx +99 -0
  218. package/docs/08-migration-guides/28-migration-guide-4-1.mdx +14 -0
  219. package/docs/08-migration-guides/29-migration-guide-4-0.mdx +1157 -0
  220. package/docs/08-migration-guides/36-migration-guide-3-4.mdx +14 -0
  221. package/docs/08-migration-guides/37-migration-guide-3-3.mdx +64 -0
  222. package/docs/08-migration-guides/38-migration-guide-3-2.mdx +46 -0
  223. package/docs/08-migration-guides/39-migration-guide-3-1.mdx +168 -0
  224. package/docs/08-migration-guides/index.mdx +22 -0
  225. package/docs/09-troubleshooting/01-azure-stream-slow.mdx +33 -0
  226. package/docs/09-troubleshooting/03-server-actions-in-client-components.mdx +40 -0
  227. package/docs/09-troubleshooting/04-strange-stream-output.mdx +36 -0
  228. package/docs/09-troubleshooting/05-streamable-ui-errors.mdx +16 -0
  229. package/docs/09-troubleshooting/05-tool-invocation-missing-result.mdx +106 -0
  230. package/docs/09-troubleshooting/06-streaming-not-working-when-deployed.mdx +31 -0
  231. package/docs/09-troubleshooting/06-streaming-not-working-when-proxied.mdx +31 -0
  232. package/docs/09-troubleshooting/06-timeout-on-vercel.mdx +60 -0
  233. package/docs/09-troubleshooting/07-unclosed-streams.mdx +34 -0
  234. package/docs/09-troubleshooting/08-use-chat-failed-to-parse-stream.mdx +26 -0
  235. package/docs/09-troubleshooting/09-client-stream-error.mdx +25 -0
  236. package/docs/09-troubleshooting/10-use-chat-tools-no-response.mdx +32 -0
  237. package/docs/09-troubleshooting/11-use-chat-custom-request-options.mdx +149 -0
  238. package/docs/09-troubleshooting/12-typescript-performance-zod.mdx +46 -0
  239. package/docs/09-troubleshooting/12-use-chat-an-error-occurred.mdx +59 -0
  240. package/docs/09-troubleshooting/13-repeated-assistant-messages.mdx +73 -0
  241. package/docs/09-troubleshooting/14-stream-abort-handling.mdx +73 -0
  242. package/docs/09-troubleshooting/14-tool-calling-with-structured-outputs.mdx +48 -0
  243. package/docs/09-troubleshooting/15-abort-breaks-resumable-streams.mdx +55 -0
  244. package/docs/09-troubleshooting/15-stream-text-not-working.mdx +33 -0
  245. package/docs/09-troubleshooting/16-streaming-status-delay.mdx +63 -0
  246. package/docs/09-troubleshooting/17-use-chat-stale-body-data.mdx +141 -0
  247. package/docs/09-troubleshooting/18-ontoolcall-type-narrowing.mdx +66 -0
  248. package/docs/09-troubleshooting/19-unsupported-model-version.mdx +50 -0
  249. package/docs/09-troubleshooting/20-no-object-generated-content-filter.mdx +76 -0
  250. package/docs/09-troubleshooting/21-missing-tool-results-error.mdx +82 -0
  251. package/docs/09-troubleshooting/30-model-is-not-assignable-to-type.mdx +21 -0
  252. package/docs/09-troubleshooting/40-typescript-cannot-find-namespace-jsx.mdx +24 -0
  253. package/docs/09-troubleshooting/50-react-maximum-update-depth-exceeded.mdx +39 -0
  254. package/docs/09-troubleshooting/60-jest-cannot-find-module-ai-rsc.mdx +22 -0
  255. package/docs/09-troubleshooting/70-high-memory-usage-with-images.mdx +108 -0
  256. package/docs/09-troubleshooting/index.mdx +11 -0
  257. package/internal.d.ts +1 -0
  258. package/package.json +120 -0
  259. package/src/agent/agent.ts +156 -0
  260. package/src/agent/create-agent-ui-stream-response.ts +61 -0
  261. package/src/agent/create-agent-ui-stream.ts +84 -0
  262. package/src/agent/index.ts +37 -0
  263. package/src/agent/infer-agent-tools.ts +7 -0
  264. package/src/agent/infer-agent-ui-message.ts +11 -0
  265. package/src/agent/pipe-agent-ui-stream-to-response.ts +64 -0
  266. package/src/agent/tool-loop-agent-settings.ts +244 -0
  267. package/src/agent/tool-loop-agent.ts +205 -0
  268. package/src/embed/embed-events.ts +109 -0
  269. package/src/embed/embed-many-result.ts +53 -0
  270. package/src/embed/embed-many.ts +484 -0
  271. package/src/embed/embed-result.ts +50 -0
  272. package/src/embed/embed.ts +294 -0
  273. package/src/embed/index.ts +5 -0
  274. package/src/error/index.ts +37 -0
  275. package/src/error/invalid-argument-error.ts +34 -0
  276. package/src/error/invalid-stream-part-error.ts +28 -0
  277. package/src/error/invalid-tool-approval-error.ts +26 -0
  278. package/src/error/invalid-tool-input-error.ts +33 -0
  279. package/src/error/missing-tool-result-error.ts +28 -0
  280. package/src/error/no-image-generated-error.ts +39 -0
  281. package/src/error/no-object-generated-error.ts +70 -0
  282. package/src/error/no-output-generated-error.ts +26 -0
  283. package/src/error/no-speech-generated-error.ts +28 -0
  284. package/src/error/no-such-tool-error.ts +35 -0
  285. package/src/error/no-transcript-generated-error.ts +30 -0
  286. package/src/error/no-video-generated-error.ts +57 -0
  287. package/src/error/tool-call-not-found-for-approval-error.ts +32 -0
  288. package/src/error/tool-call-repair-error.ts +30 -0
  289. package/src/error/ui-message-stream-error.ts +48 -0
  290. package/src/error/unsupported-model-version-error.ts +23 -0
  291. package/src/error/verify-no-object-generated-error.ts +27 -0
  292. package/src/generate-image/generate-image-result.ts +42 -0
  293. package/src/generate-image/generate-image.ts +361 -0
  294. package/src/generate-image/index.ts +18 -0
  295. package/src/generate-object/generate-object-result.ts +67 -0
  296. package/src/generate-object/generate-object.ts +514 -0
  297. package/src/generate-object/index.ts +9 -0
  298. package/src/generate-object/inject-json-instruction.ts +30 -0
  299. package/src/generate-object/output-strategy.ts +415 -0
  300. package/src/generate-object/parse-and-validate-object-result.ts +111 -0
  301. package/src/generate-object/repair-text.ts +12 -0
  302. package/src/generate-object/stream-object-result.ts +120 -0
  303. package/src/generate-object/stream-object.ts +984 -0
  304. package/src/generate-object/validate-object-generation-input.ts +144 -0
  305. package/src/generate-speech/generate-speech-result.ts +30 -0
  306. package/src/generate-speech/generate-speech.ts +191 -0
  307. package/src/generate-speech/generated-audio-file.ts +65 -0
  308. package/src/generate-speech/index.ts +3 -0
  309. package/src/generate-text/collect-tool-approvals.ts +116 -0
  310. package/src/generate-text/content-part.ts +31 -0
  311. package/src/generate-text/core-events.ts +390 -0
  312. package/src/generate-text/create-execute-tools-transformation.ts +168 -0
  313. package/src/generate-text/create-stream-text-part-transform.ts +229 -0
  314. package/src/generate-text/execute-tool-call.ts +190 -0
  315. package/src/generate-text/extract-reasoning-content.ts +17 -0
  316. package/src/generate-text/extract-text-content.ts +15 -0
  317. package/src/generate-text/generate-text-result.ts +168 -0
  318. package/src/generate-text/generate-text.ts +1411 -0
  319. package/src/generate-text/generated-file.ts +70 -0
  320. package/src/generate-text/index.ts +74 -0
  321. package/src/generate-text/is-approval-needed.ts +29 -0
  322. package/src/generate-text/output-utils.ts +23 -0
  323. package/src/generate-text/output.ts +590 -0
  324. package/src/generate-text/parse-tool-call.ts +188 -0
  325. package/src/generate-text/prepare-step.ts +103 -0
  326. package/src/generate-text/prune-messages.ts +167 -0
  327. package/src/generate-text/reasoning-output.ts +99 -0
  328. package/src/generate-text/reasoning.ts +10 -0
  329. package/src/generate-text/response-message.ts +10 -0
  330. package/src/generate-text/smooth-stream.ts +162 -0
  331. package/src/generate-text/step-result.ts +310 -0
  332. package/src/generate-text/stop-condition.ts +29 -0
  333. package/src/generate-text/stream-text-result.ts +536 -0
  334. package/src/generate-text/stream-text.ts +2693 -0
  335. package/src/generate-text/to-response-messages.ts +178 -0
  336. package/src/generate-text/tool-approval-request-output.ts +21 -0
  337. package/src/generate-text/tool-call-repair-function.ts +27 -0
  338. package/src/generate-text/tool-call.ts +47 -0
  339. package/src/generate-text/tool-error.ts +34 -0
  340. package/src/generate-text/tool-output-denied.ts +21 -0
  341. package/src/generate-text/tool-output.ts +7 -0
  342. package/src/generate-text/tool-result.ts +36 -0
  343. package/src/generate-text/tool-set.ts +14 -0
  344. package/src/generate-video/generate-video-result.ts +36 -0
  345. package/src/generate-video/generate-video.ts +402 -0
  346. package/src/generate-video/index.ts +3 -0
  347. package/src/global.ts +36 -0
  348. package/src/index.ts +49 -0
  349. package/src/logger/index.ts +6 -0
  350. package/src/logger/log-warnings.ts +140 -0
  351. package/src/middleware/add-tool-input-examples-middleware.ts +90 -0
  352. package/src/middleware/default-embedding-settings-middleware.ts +22 -0
  353. package/src/middleware/default-settings-middleware.ts +33 -0
  354. package/src/middleware/extract-json-middleware.ts +197 -0
  355. package/src/middleware/extract-reasoning-middleware.ts +249 -0
  356. package/src/middleware/index.ts +10 -0
  357. package/src/middleware/simulate-streaming-middleware.ts +79 -0
  358. package/src/middleware/wrap-embedding-model.ts +89 -0
  359. package/src/middleware/wrap-image-model.ts +92 -0
  360. package/src/middleware/wrap-language-model.ts +108 -0
  361. package/src/middleware/wrap-provider.ts +51 -0
  362. package/src/model/as-embedding-model-v3.ts +24 -0
  363. package/src/model/as-embedding-model-v4.ts +25 -0
  364. package/src/model/as-image-model-v3.ts +24 -0
  365. package/src/model/as-image-model-v4.ts +21 -0
  366. package/src/model/as-language-model-v3.ts +103 -0
  367. package/src/model/as-language-model-v4.ts +25 -0
  368. package/src/model/as-provider-v3.ts +36 -0
  369. package/src/model/as-provider-v4.ts +47 -0
  370. package/src/model/as-reranking-model-v4.ts +16 -0
  371. package/src/model/as-speech-model-v3.ts +24 -0
  372. package/src/model/as-speech-model-v4.ts +21 -0
  373. package/src/model/as-transcription-model-v3.ts +24 -0
  374. package/src/model/as-transcription-model-v4.ts +25 -0
  375. package/src/model/as-video-model-v4.ts +19 -0
  376. package/src/model/resolve-model.ts +172 -0
  377. package/src/prompt/call-settings.ts +177 -0
  378. package/src/prompt/content-part.ts +236 -0
  379. package/src/prompt/convert-to-language-model-prompt.ts +548 -0
  380. package/src/prompt/create-tool-model-output.ts +34 -0
  381. package/src/prompt/data-content.ts +134 -0
  382. package/src/prompt/index.ts +27 -0
  383. package/src/prompt/invalid-data-content-error.ts +29 -0
  384. package/src/prompt/invalid-message-role-error.ts +27 -0
  385. package/src/prompt/message-conversion-error.ts +28 -0
  386. package/src/prompt/message.ts +72 -0
  387. package/src/prompt/prepare-call-settings.ts +110 -0
  388. package/src/prompt/prepare-tools-and-tool-choice.ts +86 -0
  389. package/src/prompt/prompt.ts +43 -0
  390. package/src/prompt/split-data-url.ts +17 -0
  391. package/src/prompt/standardize-prompt.ts +99 -0
  392. package/src/prompt/wrap-gateway-error.ts +29 -0
  393. package/src/registry/custom-provider.ts +210 -0
  394. package/src/registry/index.ts +7 -0
  395. package/src/registry/no-such-provider-error.ts +41 -0
  396. package/src/registry/provider-registry.ts +331 -0
  397. package/src/rerank/index.ts +2 -0
  398. package/src/rerank/rerank-result.ts +70 -0
  399. package/src/rerank/rerank.ts +239 -0
  400. package/src/telemetry/assemble-operation-name.ts +21 -0
  401. package/src/telemetry/get-base-telemetry-attributes.ts +55 -0
  402. package/src/telemetry/get-global-telemetry-integration.ts +110 -0
  403. package/src/telemetry/get-tracer.ts +20 -0
  404. package/src/telemetry/index.ts +4 -0
  405. package/src/telemetry/noop-tracer.ts +69 -0
  406. package/src/telemetry/open-telemetry-integration.ts +537 -0
  407. package/src/telemetry/record-span.ts +75 -0
  408. package/src/telemetry/select-telemetry-attributes.ts +78 -0
  409. package/src/telemetry/stringify-for-telemetry.ts +33 -0
  410. package/src/telemetry/telemetry-integration-registry.ts +22 -0
  411. package/src/telemetry/telemetry-integration.ts +100 -0
  412. package/src/telemetry/telemetry-settings.ts +55 -0
  413. package/src/test/mock-embedding-model-v2.ts +35 -0
  414. package/src/test/mock-embedding-model-v3.ts +48 -0
  415. package/src/test/mock-embedding-model-v4.ts +48 -0
  416. package/src/test/mock-image-model-v2.ts +28 -0
  417. package/src/test/mock-image-model-v3.ts +28 -0
  418. package/src/test/mock-image-model-v4.ts +28 -0
  419. package/src/test/mock-language-model-v2.ts +72 -0
  420. package/src/test/mock-language-model-v3.ts +77 -0
  421. package/src/test/mock-language-model-v4.ts +77 -0
  422. package/src/test/mock-provider-v2.ts +68 -0
  423. package/src/test/mock-provider-v3.ts +80 -0
  424. package/src/test/mock-provider-v4.ts +80 -0
  425. package/src/test/mock-reranking-model-v3.ts +25 -0
  426. package/src/test/mock-reranking-model-v4.ts +25 -0
  427. package/src/test/mock-server-response.ts +69 -0
  428. package/src/test/mock-speech-model-v2.ts +24 -0
  429. package/src/test/mock-speech-model-v3.ts +24 -0
  430. package/src/test/mock-speech-model-v4.ts +24 -0
  431. package/src/test/mock-tracer.ts +156 -0
  432. package/src/test/mock-transcription-model-v2.ts +24 -0
  433. package/src/test/mock-transcription-model-v3.ts +24 -0
  434. package/src/test/mock-transcription-model-v4.ts +24 -0
  435. package/src/test/mock-values.ts +4 -0
  436. package/src/test/mock-video-model-v3.ts +28 -0
  437. package/src/test/mock-video-model-v4.ts +28 -0
  438. package/src/test/not-implemented.ts +3 -0
  439. package/src/text-stream/create-text-stream-response.ts +30 -0
  440. package/src/text-stream/index.ts +2 -0
  441. package/src/text-stream/pipe-text-stream-to-response.ts +38 -0
  442. package/src/transcribe/index.ts +2 -0
  443. package/src/transcribe/transcribe-result.ts +60 -0
  444. package/src/transcribe/transcribe.ts +187 -0
  445. package/src/types/embedding-model-middleware.ts +15 -0
  446. package/src/types/embedding-model.ts +20 -0
  447. package/src/types/image-model-middleware.ts +15 -0
  448. package/src/types/image-model-response-metadata.ts +16 -0
  449. package/src/types/image-model.ts +19 -0
  450. package/src/types/index.ts +29 -0
  451. package/src/types/json-value.ts +15 -0
  452. package/src/types/language-model-middleware.ts +15 -0
  453. package/src/types/language-model-request-metadata.ts +6 -0
  454. package/src/types/language-model-response-metadata.ts +21 -0
  455. package/src/types/language-model.ts +106 -0
  456. package/src/types/provider-metadata.ts +16 -0
  457. package/src/types/provider.ts +55 -0
  458. package/src/types/reranking-model.ts +6 -0
  459. package/src/types/speech-model-response-metadata.ts +21 -0
  460. package/src/types/speech-model.ts +10 -0
  461. package/src/types/transcription-model-response-metadata.ts +16 -0
  462. package/src/types/transcription-model.ts +14 -0
  463. package/src/types/usage.ts +200 -0
  464. package/src/types/video-model-response-metadata.ts +28 -0
  465. package/src/types/video-model.ts +15 -0
  466. package/src/types/warning.ts +7 -0
  467. package/src/ui/call-completion-api.ts +157 -0
  468. package/src/ui/chat-transport.ts +83 -0
  469. package/src/ui/chat.ts +786 -0
  470. package/src/ui/convert-file-list-to-file-ui-parts.ts +36 -0
  471. package/src/ui/convert-to-model-messages.ts +403 -0
  472. package/src/ui/default-chat-transport.ts +36 -0
  473. package/src/ui/direct-chat-transport.ts +117 -0
  474. package/src/ui/http-chat-transport.ts +273 -0
  475. package/src/ui/index.ts +76 -0
  476. package/src/ui/last-assistant-message-is-complete-with-approval-responses.ts +44 -0
  477. package/src/ui/last-assistant-message-is-complete-with-tool-calls.ts +39 -0
  478. package/src/ui/process-text-stream.ts +16 -0
  479. package/src/ui/process-ui-message-stream.ts +858 -0
  480. package/src/ui/text-stream-chat-transport.ts +23 -0
  481. package/src/ui/transform-text-to-ui-message-stream.ts +27 -0
  482. package/src/ui/ui-messages.ts +602 -0
  483. package/src/ui/use-completion.ts +84 -0
  484. package/src/ui/validate-ui-messages.ts +521 -0
  485. package/src/ui-message-stream/create-ui-message-stream-response.ts +44 -0
  486. package/src/ui-message-stream/create-ui-message-stream.ts +145 -0
  487. package/src/ui-message-stream/get-response-ui-message-id.ts +35 -0
  488. package/src/ui-message-stream/handle-ui-message-stream-finish.ts +170 -0
  489. package/src/ui-message-stream/index.ts +14 -0
  490. package/src/ui-message-stream/json-to-sse-transform-stream.ts +17 -0
  491. package/src/ui-message-stream/pipe-ui-message-stream-to-response.ts +51 -0
  492. package/src/ui-message-stream/read-ui-message-stream.ts +87 -0
  493. package/src/ui-message-stream/ui-message-chunks.ts +372 -0
  494. package/src/ui-message-stream/ui-message-stream-headers.ts +7 -0
  495. package/src/ui-message-stream/ui-message-stream-on-finish-callback.ts +32 -0
  496. package/src/ui-message-stream/ui-message-stream-on-step-finish-callback.ts +25 -0
  497. package/src/ui-message-stream/ui-message-stream-response-init.ts +14 -0
  498. package/src/ui-message-stream/ui-message-stream-writer.ts +24 -0
  499. package/src/util/as-array.ts +3 -0
  500. package/src/util/async-iterable-stream.ts +94 -0
  501. package/src/util/consume-stream.ts +31 -0
  502. package/src/util/cosine-similarity.ts +46 -0
  503. package/src/util/create-resolvable-promise.ts +30 -0
  504. package/src/util/create-stitchable-stream.ts +112 -0
  505. package/src/util/data-url.ts +17 -0
  506. package/src/util/deep-partial.ts +84 -0
  507. package/src/util/detect-media-type.ts +226 -0
  508. package/src/util/download/create-download.ts +13 -0
  509. package/src/util/download/download-function.ts +45 -0
  510. package/src/util/download/download.ts +74 -0
  511. package/src/util/error-handler.ts +1 -0
  512. package/src/util/fix-json.ts +401 -0
  513. package/src/util/get-potential-start-index.ts +39 -0
  514. package/src/util/index.ts +12 -0
  515. package/src/util/is-deep-equal-data.ts +48 -0
  516. package/src/util/is-non-empty-object.ts +5 -0
  517. package/src/util/job.ts +1 -0
  518. package/src/util/log-v2-compatibility-warning.ts +21 -0
  519. package/src/util/merge-abort-signals.ts +43 -0
  520. package/src/util/merge-objects.ts +79 -0
  521. package/src/util/notify.ts +22 -0
  522. package/src/util/now.ts +4 -0
  523. package/src/util/parse-partial-json.ts +30 -0
  524. package/src/util/prepare-headers.ts +14 -0
  525. package/src/util/prepare-retries.ts +47 -0
  526. package/src/util/retry-error.ts +41 -0
  527. package/src/util/retry-with-exponential-backoff.ts +154 -0
  528. package/src/util/serial-job-executor.ts +36 -0
  529. package/src/util/simulate-readable-stream.ts +39 -0
  530. package/src/util/split-array.ts +20 -0
  531. package/src/util/value-of.ts +65 -0
  532. package/src/util/write-to-server-response.ts +49 -0
  533. package/src/version.ts +5 -0
  534. package/test.d.ts +1 -0
@@ -0,0 +1,24 @@
1
+ ---
2
+ title: AI_LoadSettingError
3
+ description: Learn how to fix AI_LoadSettingError
4
+ ---
5
+
6
+ # AI_LoadSettingError
7
+
8
+ This error occurs when a setting is not loaded successfully.
9
+
10
+ ## Properties
11
+
12
+ - `message`: The error message
13
+
14
+ ## Checking for this Error
15
+
16
+ You can check if an error is an instance of `AI_LoadSettingError` using:
17
+
18
+ ```typescript
19
+ import { LoadSettingError } from 'ai';
20
+
21
+ if (LoadSettingError.isInstance(error)) {
22
+ // Handle the error
23
+ }
24
+ ```
@@ -0,0 +1,25 @@
1
+ ---
2
+ title: AI_MessageConversionError
3
+ description: Learn how to fix AI_MessageConversionError
4
+ ---
5
+
6
+ # AI_MessageConversionError
7
+
8
+ This error occurs when message conversion fails.
9
+
10
+ ## Properties
11
+
12
+ - `originalMessage`: The original message that failed conversion
13
+ - `message`: The error message
14
+
15
+ ## Checking for this Error
16
+
17
+ You can check if an error is an instance of `AI_MessageConversionError` using:
18
+
19
+ ```typescript
20
+ import { MessageConversionError } from 'ai';
21
+
22
+ if (MessageConversionError.isInstance(error)) {
23
+ // Handle the error
24
+ }
25
+ ```
@@ -0,0 +1,24 @@
1
+ ---
2
+ title: AI_NoContentGeneratedError
3
+ description: Learn how to fix AI_NoContentGeneratedError
4
+ ---
5
+
6
+ # AI_NoContentGeneratedError
7
+
8
+ This error occurs when the AI provider fails to generate content.
9
+
10
+ ## Properties
11
+
12
+ - `message`: The error message (optional, defaults to `'No content generated.'`)
13
+
14
+ ## Checking for this Error
15
+
16
+ You can check if an error is an instance of `AI_NoContentGeneratedError` using:
17
+
18
+ ```typescript
19
+ import { NoContentGeneratedError } from 'ai';
20
+
21
+ if (NoContentGeneratedError.isInstance(error)) {
22
+ // Handle the error
23
+ }
24
+ ```
@@ -0,0 +1,36 @@
1
+ ---
2
+ title: AI_NoImageGeneratedError
3
+ description: Learn how to fix AI_NoImageGeneratedError
4
+ ---
5
+
6
+ # AI_NoImageGeneratedError
7
+
8
+ This error occurs when the AI provider fails to generate an image.
9
+ It can arise due to the following reasons:
10
+
11
+ - The model failed to generate a response.
12
+ - The model generated an invalid response.
13
+
14
+ ## Properties
15
+
16
+ - `message`: The error message (optional, defaults to `'No image generated.'`).
17
+ - `responses`: Metadata about the image model responses, including timestamp, model, and headers (optional).
18
+ - `cause`: The cause of the error. You can use this for more detailed error handling (optional).
19
+
20
+ ## Checking for this Error
21
+
22
+ You can check if an error is an instance of `AI_NoImageGeneratedError` using:
23
+
24
+ ```typescript
25
+ import { generateImage, NoImageGeneratedError } from 'ai';
26
+
27
+ try {
28
+ await generateImage({ model, prompt });
29
+ } catch (error) {
30
+ if (NoImageGeneratedError.isInstance(error)) {
31
+ console.log('NoImageGeneratedError');
32
+ console.log('Cause:', error.cause);
33
+ console.log('Responses:', error.responses);
34
+ }
35
+ }
36
+ ```
@@ -0,0 +1,43 @@
1
+ ---
2
+ title: AI_NoObjectGeneratedError
3
+ description: Learn how to fix AI_NoObjectGeneratedError
4
+ ---
5
+
6
+ # AI_NoObjectGeneratedError
7
+
8
+ This error occurs when the AI provider fails to generate a parsable object that conforms to the schema.
9
+ It can arise due to the following reasons:
10
+
11
+ - The model failed to generate a response.
12
+ - The model generated a response that could not be parsed.
13
+ - The model generated a response that could not be validated against the schema.
14
+
15
+ ## Properties
16
+
17
+ - `message`: The error message (optional, defaults to `'No object generated.'`).
18
+ - `text`: The text that was generated by the model. This can be the raw text or the tool call text, depending on the object generation mode (optional).
19
+ - `response`: Metadata about the language model response, including response id, timestamp, and model (required in constructor).
20
+ - `usage`: Request token usage (required in constructor).
21
+ - `finishReason`: Request finish reason. For example 'length' if model generated maximum number of tokens, this could result in a JSON parsing error (required in constructor).
22
+ - `cause`: The cause of the error (e.g. a JSON parsing error). You can use this for more detailed error handling (optional).
23
+
24
+ ## Checking for this Error
25
+
26
+ You can check if an error is an instance of `AI_NoObjectGeneratedError` using:
27
+
28
+ ```typescript
29
+ import { generateText, NoObjectGeneratedError, Output } from 'ai';
30
+
31
+ try {
32
+ await generateText({ model, output: Output.object({ schema }), prompt });
33
+ } catch (error) {
34
+ if (NoObjectGeneratedError.isInstance(error)) {
35
+ console.log('NoObjectGeneratedError');
36
+ console.log('Cause:', error.cause);
37
+ console.log('Text:', error.text);
38
+ console.log('Response:', error.response);
39
+ console.log('Usage:', error.usage);
40
+ console.log('Finish Reason:', error.finishReason);
41
+ }
42
+ }
43
+ ```
@@ -0,0 +1,25 @@
1
+ ---
2
+ title: AI_NoOutputGeneratedError
3
+ description: Learn how to fix AI_NoOutputGeneratedError
4
+ ---
5
+
6
+ # AI_NoOutputGeneratedError
7
+
8
+ This error is thrown when no LLM output was generated, e.g. because of errors.
9
+
10
+ ## Properties
11
+
12
+ - `message`: The error message (optional, defaults to `'No output generated.'`)
13
+ - `cause`: The underlying error that caused no output to be generated (optional)
14
+
15
+ ## Checking for this Error
16
+
17
+ You can check if an error is an instance of `AI_NoOutputGeneratedError` using:
18
+
19
+ ```typescript
20
+ import { NoOutputGeneratedError } from 'ai';
21
+
22
+ if (NoOutputGeneratedError.isInstance(error)) {
23
+ // Handle the error
24
+ }
25
+ ```
@@ -0,0 +1,24 @@
1
+ ---
2
+ title: AI_NoSpeechGeneratedError
3
+ description: Learn how to fix AI_NoSpeechGeneratedError
4
+ ---
5
+
6
+ # AI_NoSpeechGeneratedError
7
+
8
+ This error occurs when no audio could be generated from the input.
9
+
10
+ ## Properties
11
+
12
+ - `responses`: Array of speech model response metadata (required in constructor)
13
+
14
+ ## Checking for this Error
15
+
16
+ You can check if an error is an instance of `AI_NoSpeechGeneratedError` using:
17
+
18
+ ```typescript
19
+ import { NoSpeechGeneratedError } from 'ai';
20
+
21
+ if (NoSpeechGeneratedError.isInstance(error)) {
22
+ // Handle the error
23
+ }
24
+ ```
@@ -0,0 +1,26 @@
1
+ ---
2
+ title: AI_NoSuchModelError
3
+ description: Learn how to fix AI_NoSuchModelError
4
+ ---
5
+
6
+ # AI_NoSuchModelError
7
+
8
+ This error occurs when a model ID is not found.
9
+
10
+ ## Properties
11
+
12
+ - `modelId`: The ID of the model that was not found
13
+ - `modelType`: The type of model (`'languageModel'`, `'embeddingModel'`, `'imageModel'`, `'transcriptionModel'`, `'speechModel'`, or `'rerankingModel'`)
14
+ - `message`: The error message (optional, auto-generated from `modelId` and `modelType`)
15
+
16
+ ## Checking for this Error
17
+
18
+ You can check if an error is an instance of `AI_NoSuchModelError` using:
19
+
20
+ ```typescript
21
+ import { NoSuchModelError } from 'ai';
22
+
23
+ if (NoSuchModelError.isInstance(error)) {
24
+ // Handle the error
25
+ }
26
+ ```
@@ -0,0 +1,28 @@
1
+ ---
2
+ title: AI_NoSuchProviderError
3
+ description: Learn how to fix AI_NoSuchProviderError
4
+ ---
5
+
6
+ # AI_NoSuchProviderError
7
+
8
+ This error occurs when a provider ID is not found.
9
+
10
+ ## Properties
11
+
12
+ - `providerId`: The ID of the provider that was not found
13
+ - `availableProviders`: Array of available provider IDs
14
+ - `modelId`: The ID of the model
15
+ - `modelType`: The type of model
16
+ - `message`: The error message
17
+
18
+ ## Checking for this Error
19
+
20
+ You can check if an error is an instance of `AI_NoSuchProviderError` using:
21
+
22
+ ```typescript
23
+ import { NoSuchProviderError } from 'ai';
24
+
25
+ if (NoSuchProviderError.isInstance(error)) {
26
+ // Handle the error
27
+ }
28
+ ```
@@ -0,0 +1,26 @@
1
+ ---
2
+ title: AI_NoSuchToolError
3
+ description: Learn how to fix AI_NoSuchToolError
4
+ ---
5
+
6
+ # AI_NoSuchToolError
7
+
8
+ This error occurs when a model tries to call an unavailable tool.
9
+
10
+ ## Properties
11
+
12
+ - `toolName`: The name of the tool that was not found
13
+ - `availableTools`: Array of available tool names (optional)
14
+ - `message`: The error message (optional, auto-generated from `toolName` and `availableTools`)
15
+
16
+ ## Checking for this Error
17
+
18
+ You can check if an error is an instance of `AI_NoSuchToolError` using:
19
+
20
+ ```typescript
21
+ import { NoSuchToolError } from 'ai';
22
+
23
+ if (NoSuchToolError.isInstance(error)) {
24
+ // Handle the error
25
+ }
26
+ ```
@@ -0,0 +1,24 @@
1
+ ---
2
+ title: AI_NoTranscriptGeneratedError
3
+ description: Learn how to fix AI_NoTranscriptGeneratedError
4
+ ---
5
+
6
+ # AI_NoTranscriptGeneratedError
7
+
8
+ This error occurs when no transcript could be generated from the input.
9
+
10
+ ## Properties
11
+
12
+ - `responses`: Array of transcription model response metadata (required in constructor)
13
+
14
+ ## Checking for this Error
15
+
16
+ You can check if an error is an instance of `AI_NoTranscriptGeneratedError` using:
17
+
18
+ ```typescript
19
+ import { NoTranscriptGeneratedError } from 'ai';
20
+
21
+ if (NoTranscriptGeneratedError.isInstance(error)) {
22
+ // Handle the error
23
+ }
24
+ ```
@@ -0,0 +1,39 @@
1
+ ---
2
+ title: AI_NoVideoGeneratedError
3
+ description: Learn how to fix AI_NoVideoGeneratedError
4
+ ---
5
+
6
+ # AI_NoVideoGeneratedError
7
+
8
+ This error occurs when the AI provider fails to generate a video.
9
+ It can arise due to the following reasons:
10
+
11
+ - The model failed to generate a response.
12
+ - The model generated an invalid response.
13
+
14
+ ## Properties
15
+
16
+ - `message`: The error message (optional, defaults to `'No video generated.'`).
17
+ - `responses`: Metadata about the video model responses, including timestamp, model, and headers (optional).
18
+ - `cause`: The cause of the error. You can use this for more detailed error handling (optional).
19
+
20
+ ## Checking for this Error
21
+
22
+ You can check if an error is an instance of `AI_NoVideoGeneratedError` using:
23
+
24
+ ```typescript
25
+ import {
26
+ experimental_generateVideo as generateVideo,
27
+ NoVideoGeneratedError,
28
+ } from 'ai';
29
+
30
+ try {
31
+ await generateVideo({ model, prompt });
32
+ } catch (error) {
33
+ if (NoVideoGeneratedError.isInstance(error)) {
34
+ console.log('NoVideoGeneratedError');
35
+ console.log('Cause:', error.cause);
36
+ console.log('Responses:', error.responses);
37
+ }
38
+ }
39
+ ```
@@ -0,0 +1,27 @@
1
+ ---
2
+ title: AI_RetryError
3
+ description: Learn how to fix AI_RetryError
4
+ ---
5
+
6
+ # AI_RetryError
7
+
8
+ This error occurs when a retry operation fails.
9
+
10
+ ## Properties
11
+
12
+ - `reason`: The reason for the retry failure
13
+ - `lastError`: The most recent error that occurred during retries
14
+ - `errors`: Array of all errors that occurred during retry attempts
15
+ - `message`: The error message
16
+
17
+ ## Checking for this Error
18
+
19
+ You can check if an error is an instance of `AI_RetryError` using:
20
+
21
+ ```typescript
22
+ import { RetryError } from 'ai';
23
+
24
+ if (RetryError.isInstance(error)) {
25
+ // Handle the error
26
+ }
27
+ ```
@@ -0,0 +1,27 @@
1
+ ---
2
+ title: AI_TooManyEmbeddingValuesForCallError
3
+ description: Learn how to fix AI_TooManyEmbeddingValuesForCallError
4
+ ---
5
+
6
+ # AI_TooManyEmbeddingValuesForCallError
7
+
8
+ This error occurs when too many values are provided in a single embedding call.
9
+
10
+ ## Properties
11
+
12
+ - `provider`: The AI provider name
13
+ - `modelId`: The ID of the embedding model
14
+ - `maxEmbeddingsPerCall`: The maximum number of embeddings allowed per call
15
+ - `values`: The array of values that was provided
16
+
17
+ ## Checking for this Error
18
+
19
+ You can check if an error is an instance of `AI_TooManyEmbeddingValuesForCallError` using:
20
+
21
+ ```typescript
22
+ import { TooManyEmbeddingValuesForCallError } from 'ai';
23
+
24
+ if (TooManyEmbeddingValuesForCallError.isInstance(error)) {
25
+ // Handle the error
26
+ }
27
+ ```
@@ -0,0 +1,25 @@
1
+ ---
2
+ title: AI_ToolCallNotFoundForApprovalError
3
+ description: Learn how to fix AI_ToolCallNotFoundForApprovalError
4
+ ---
5
+
6
+ # AI_ToolCallNotFoundForApprovalError
7
+
8
+ This error occurs when a tool approval request references a tool call that was not found. This can happen when processing provider-emitted approval requests (e.g., MCP flows) where the referenced tool call ID does not exist.
9
+
10
+ ## Properties
11
+
12
+ - `toolCallId`: The tool call ID that was not found
13
+ - `approvalId`: The approval request ID
14
+
15
+ ## Checking for this Error
16
+
17
+ You can check if an error is an instance of `AI_ToolCallNotFoundForApprovalError` using:
18
+
19
+ ```typescript
20
+ import { ToolCallNotFoundForApprovalError } from 'ai';
21
+
22
+ if (ToolCallNotFoundForApprovalError.isInstance(error)) {
23
+ // Handle the error
24
+ }
25
+ ```
@@ -0,0 +1,28 @@
1
+ ---
2
+ title: ToolCallRepairError
3
+ description: Learn how to fix AI SDK ToolCallRepairError
4
+ ---
5
+
6
+ # ToolCallRepairError
7
+
8
+ This error occurs when there is a failure while attempting to repair an invalid tool call.
9
+ This typically happens when the AI attempts to fix either
10
+ a `NoSuchToolError` or `InvalidToolInputError`.
11
+
12
+ ## Properties
13
+
14
+ - `originalError`: The original error that triggered the repair attempt (either `NoSuchToolError` or `InvalidToolInputError`)
15
+ - `message`: The error message
16
+ - `cause`: The underlying error that caused the repair to fail
17
+
18
+ ## Checking for this Error
19
+
20
+ You can check if an error is an instance of `ToolCallRepairError` using:
21
+
22
+ ```typescript
23
+ import { ToolCallRepairError } from 'ai';
24
+
25
+ if (ToolCallRepairError.isInstance(error)) {
26
+ // Handle the error
27
+ }
28
+ ```
@@ -0,0 +1,25 @@
1
+ ---
2
+ title: AI_TypeValidationError
3
+ description: Learn how to fix AI_TypeValidationError
4
+ ---
5
+
6
+ # AI_TypeValidationError
7
+
8
+ This error occurs when type validation fails.
9
+
10
+ ## Properties
11
+
12
+ - `value`: The value that failed validation
13
+ - `cause`: The underlying validation error (required in constructor)
14
+
15
+ ## Checking for this Error
16
+
17
+ You can check if an error is an instance of `AI_TypeValidationError` using:
18
+
19
+ ```typescript
20
+ import { TypeValidationError } from 'ai';
21
+
22
+ if (TypeValidationError.isInstance(error)) {
23
+ // Handle the error
24
+ }
25
+ ```
@@ -0,0 +1,67 @@
1
+ ---
2
+ title: AI_UIMessageStreamError
3
+ description: Learn how to fix AI_UIMessageStreamError
4
+ ---
5
+
6
+ # AI_UIMessageStreamError
7
+
8
+ This error occurs when a UI message stream contains invalid or out-of-sequence chunks.
9
+
10
+ Common causes:
11
+
12
+ - Receiving a `text-delta` chunk without a preceding `text-start` chunk
13
+ - Receiving a `text-end` chunk without a preceding `text-start` chunk
14
+ - Receiving a `reasoning-delta` chunk without a preceding `reasoning-start` chunk
15
+ - Receiving a `reasoning-end` chunk without a preceding `reasoning-start` chunk
16
+ - Receiving a `tool-input-delta` chunk without a preceding `tool-input-start` chunk
17
+ - Attempting to access a tool invocation that doesn't exist
18
+
19
+ This error often surfaces when an upstream request fails **before any tokens are streamed** and a custom transport tries to write an inline error message to the UI stream without the proper start chunk.
20
+
21
+ ## Properties
22
+
23
+ - `chunkType`: The type of chunk that caused the error (e.g., `text-delta`, `reasoning-end`, `tool-input-delta`)
24
+ - `chunkId`: The ID associated with the failing chunk (part ID or toolCallId)
25
+ - `message`: The error message with details about what went wrong
26
+
27
+ ## Checking for this Error
28
+
29
+ You can check if an error is an instance of `AI_UIMessageStreamError` using:
30
+
31
+ ```typescript
32
+ import { UIMessageStreamError } from 'ai';
33
+
34
+ if (UIMessageStreamError.isInstance(error)) {
35
+ console.log('Chunk type:', error.chunkType);
36
+ console.log('Chunk ID:', error.chunkId);
37
+ // Handle the error
38
+ }
39
+ ```
40
+
41
+ ## Common Solutions
42
+
43
+ 1. **Ensure proper chunk ordering**: Always send a `*-start` chunk before any `*-delta` or `*-end` chunks for the same ID:
44
+
45
+ ```typescript
46
+ // Correct order
47
+ writer.write({ type: 'text-start', id: 'my-text' });
48
+ writer.write({ type: 'text-delta', id: 'my-text', delta: 'Hello' });
49
+ writer.write({ type: 'text-end', id: 'my-text' });
50
+ ```
51
+
52
+ 2. **Verify IDs match**: Ensure the `id` used in `*-delta` and `*-end` chunks matches the `id` used in the corresponding `*-start` chunk.
53
+
54
+ 3. **Handle error paths correctly**: When writing error messages in custom transports, ensure you emit the full start/delta/end sequence:
55
+
56
+ ```typescript
57
+ // When handling errors in custom transports
58
+ writer.write({ type: 'text-start', id: errorId });
59
+ writer.write({
60
+ type: 'text-delta',
61
+ id: errorId,
62
+ delta: 'Request failed...',
63
+ });
64
+ writer.write({ type: 'text-end', id: errorId });
65
+ ```
66
+
67
+ 4. **Check stream producer logic**: Review your streaming implementation to ensure chunks are sent in the correct order, especially when dealing with concurrent operations or merged streams.
@@ -0,0 +1,25 @@
1
+ ---
2
+ title: AI_UnsupportedFunctionalityError
3
+ description: Learn how to fix AI_UnsupportedFunctionalityError
4
+ ---
5
+
6
+ # AI_UnsupportedFunctionalityError
7
+
8
+ This error occurs when functionality is not supported.
9
+
10
+ ## Properties
11
+
12
+ - `functionality`: The name of the unsupported functionality
13
+ - `message`: The error message (optional, auto-generated from `functionality`)
14
+
15
+ ## Checking for this Error
16
+
17
+ You can check if an error is an instance of `AI_UnsupportedFunctionalityError` using:
18
+
19
+ ```typescript
20
+ import { UnsupportedFunctionalityError } from 'ai';
21
+
22
+ if (UnsupportedFunctionalityError.isInstance(error)) {
23
+ // Handle the error
24
+ }
25
+ ```
@@ -0,0 +1,39 @@
1
+ ---
2
+ title: AI SDK Errors
3
+ description: Troubleshooting information for common AI SDK errors.
4
+ collapsed: true
5
+ ---
6
+
7
+ # AI SDK Errors
8
+
9
+ - [AI_APICallError](/docs/reference/ai-sdk-errors/ai-api-call-error)
10
+ - [AI_DownloadError](/docs/reference/ai-sdk-errors/ai-download-error)
11
+ - [AI_EmptyResponseBodyError](/docs/reference/ai-sdk-errors/ai-empty-response-body-error)
12
+ - [AI_InvalidArgumentError](/docs/reference/ai-sdk-errors/ai-invalid-argument-error)
13
+ - [AI_InvalidDataContentError](/docs/reference/ai-sdk-errors/ai-invalid-data-content-error)
14
+ - [AI_InvalidMessageRoleError](/docs/reference/ai-sdk-errors/ai-invalid-message-role-error)
15
+ - [AI_InvalidPromptError](/docs/reference/ai-sdk-errors/ai-invalid-prompt-error)
16
+ - [AI_InvalidResponseDataError](/docs/reference/ai-sdk-errors/ai-invalid-response-data-error)
17
+ - [AI_InvalidToolApprovalError](/docs/reference/ai-sdk-errors/ai-invalid-tool-approval-error)
18
+ - [AI_InvalidToolInputError](/docs/reference/ai-sdk-errors/ai-invalid-tool-input-error)
19
+ - [AI_JSONParseError](/docs/reference/ai-sdk-errors/ai-json-parse-error)
20
+ - [AI_LoadAPIKeyError](/docs/reference/ai-sdk-errors/ai-load-api-key-error)
21
+ - [AI_LoadSettingError](/docs/reference/ai-sdk-errors/ai-load-setting-error)
22
+ - [AI_MessageConversionError](/docs/reference/ai-sdk-errors/ai-message-conversion-error)
23
+ - [AI_NoSpeechGeneratedError](/docs/reference/ai-sdk-errors/ai-no-speech-generated-error)
24
+ - [AI_NoContentGeneratedError](/docs/reference/ai-sdk-errors/ai-no-content-generated-error)
25
+ - [AI_NoImageGeneratedError](/docs/reference/ai-sdk-errors/ai-no-image-generated-error)
26
+ - [AI_NoTranscriptGeneratedError](/docs/reference/ai-sdk-errors/ai-no-transcript-generated-error)
27
+ - [AI_NoVideoGeneratedError](/docs/reference/ai-sdk-errors/ai-no-video-generated-error)
28
+ - [AI_NoObjectGeneratedError](/docs/reference/ai-sdk-errors/ai-no-object-generated-error)
29
+ - [AI_NoOutputGeneratedError](/docs/reference/ai-sdk-errors/ai-no-output-generated-error)
30
+ - [AI_NoSuchModelError](/docs/reference/ai-sdk-errors/ai-no-such-model-error)
31
+ - [AI_NoSuchProviderError](/docs/reference/ai-sdk-errors/ai-no-such-provider-error)
32
+ - [AI_NoSuchToolError](/docs/reference/ai-sdk-errors/ai-no-such-tool-error)
33
+ - [AI_RetryError](/docs/reference/ai-sdk-errors/ai-retry-error)
34
+ - [AI_ToolCallNotFoundForApprovalError](/docs/reference/ai-sdk-errors/ai-tool-call-not-found-for-approval-error)
35
+ - [AI_ToolCallRepairError](/docs/reference/ai-sdk-errors/ai-tool-call-repair-error)
36
+ - [AI_TooManyEmbeddingValuesForCallError](/docs/reference/ai-sdk-errors/ai-too-many-embedding-values-for-call-error)
37
+ - [AI_TypeValidationError](/docs/reference/ai-sdk-errors/ai-type-validation-error)
38
+ - [AI_UIMessageStreamError](/docs/reference/ai-sdk-errors/ai-ui-message-stream-error)
39
+ - [AI_UnsupportedFunctionalityError](/docs/reference/ai-sdk-errors/ai-unsupported-functionality-error)
@@ -0,0 +1,28 @@
1
+ ---
2
+ title: Reference
3
+ description: Reference documentation for the AI SDK
4
+ ---
5
+
6
+ # API Reference
7
+
8
+ <IndexCards
9
+ cards={[
10
+ {
11
+ title: 'AI SDK Core',
12
+ description: 'Switch between model providers without changing your code.',
13
+ href: '/docs/reference/ai-sdk-core',
14
+ },
15
+ {
16
+ title: 'AI SDK RSC',
17
+ description:
18
+ 'Use React Server Components to stream user interfaces to the client.',
19
+ href: '/docs/reference/ai-sdk-rsc',
20
+ },
21
+ {
22
+ title: 'AI SDK UI',
23
+ description:
24
+ 'Use hooks to integrate user interfaces that interact with language models.',
25
+ href: '/docs/reference/ai-sdk-ui',
26
+ },
27
+ ]}
28
+ />