ai 6.0.31 → 6.0.32

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 (250) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/index.js +1 -1
  3. package/dist/index.mjs +1 -1
  4. package/dist/internal/index.js +1 -1
  5. package/dist/internal/index.mjs +1 -1
  6. package/docs/00-introduction/index.mdx +76 -0
  7. package/docs/02-foundations/01-overview.mdx +43 -0
  8. package/docs/02-foundations/02-providers-and-models.mdx +163 -0
  9. package/docs/02-foundations/03-prompts.mdx +620 -0
  10. package/docs/02-foundations/04-tools.mdx +160 -0
  11. package/docs/02-foundations/05-streaming.mdx +62 -0
  12. package/docs/02-foundations/index.mdx +43 -0
  13. package/docs/02-getting-started/00-choosing-a-provider.mdx +110 -0
  14. package/docs/02-getting-started/01-navigating-the-library.mdx +85 -0
  15. package/docs/02-getting-started/02-nextjs-app-router.mdx +556 -0
  16. package/docs/02-getting-started/03-nextjs-pages-router.mdx +542 -0
  17. package/docs/02-getting-started/04-svelte.mdx +627 -0
  18. package/docs/02-getting-started/05-nuxt.mdx +566 -0
  19. package/docs/02-getting-started/06-nodejs.mdx +512 -0
  20. package/docs/02-getting-started/07-expo.mdx +766 -0
  21. package/docs/02-getting-started/08-tanstack-start.mdx +583 -0
  22. package/docs/02-getting-started/index.mdx +44 -0
  23. package/docs/03-agents/01-overview.mdx +96 -0
  24. package/docs/03-agents/02-building-agents.mdx +367 -0
  25. package/docs/03-agents/03-workflows.mdx +370 -0
  26. package/docs/03-agents/04-loop-control.mdx +350 -0
  27. package/docs/03-agents/05-configuring-call-options.mdx +286 -0
  28. package/docs/03-agents/index.mdx +40 -0
  29. package/docs/03-ai-sdk-core/01-overview.mdx +33 -0
  30. package/docs/03-ai-sdk-core/05-generating-text.mdx +600 -0
  31. package/docs/03-ai-sdk-core/10-generating-structured-data.mdx +662 -0
  32. package/docs/03-ai-sdk-core/15-tools-and-tool-calling.mdx +1102 -0
  33. package/docs/03-ai-sdk-core/16-mcp-tools.mdx +375 -0
  34. package/docs/03-ai-sdk-core/20-prompt-engineering.mdx +144 -0
  35. package/docs/03-ai-sdk-core/25-settings.mdx +198 -0
  36. package/docs/03-ai-sdk-core/30-embeddings.mdx +247 -0
  37. package/docs/03-ai-sdk-core/31-reranking.mdx +218 -0
  38. package/docs/03-ai-sdk-core/35-image-generation.mdx +341 -0
  39. package/docs/03-ai-sdk-core/36-transcription.mdx +173 -0
  40. package/docs/03-ai-sdk-core/37-speech.mdx +167 -0
  41. package/docs/03-ai-sdk-core/40-middleware.mdx +480 -0
  42. package/docs/03-ai-sdk-core/45-provider-management.mdx +349 -0
  43. package/docs/03-ai-sdk-core/50-error-handling.mdx +149 -0
  44. package/docs/03-ai-sdk-core/55-testing.mdx +218 -0
  45. package/docs/03-ai-sdk-core/60-telemetry.mdx +313 -0
  46. package/docs/03-ai-sdk-core/65-devtools.mdx +107 -0
  47. package/docs/03-ai-sdk-core/index.mdx +88 -0
  48. package/docs/04-ai-sdk-ui/01-overview.mdx +44 -0
  49. package/docs/04-ai-sdk-ui/02-chatbot.mdx +1313 -0
  50. package/docs/04-ai-sdk-ui/03-chatbot-message-persistence.mdx +535 -0
  51. package/docs/04-ai-sdk-ui/03-chatbot-resume-streams.mdx +263 -0
  52. package/docs/04-ai-sdk-ui/03-chatbot-tool-usage.mdx +682 -0
  53. package/docs/04-ai-sdk-ui/04-generative-user-interfaces.mdx +389 -0
  54. package/docs/04-ai-sdk-ui/05-completion.mdx +186 -0
  55. package/docs/04-ai-sdk-ui/08-object-generation.mdx +344 -0
  56. package/docs/04-ai-sdk-ui/20-streaming-data.mdx +397 -0
  57. package/docs/04-ai-sdk-ui/21-error-handling.mdx +190 -0
  58. package/docs/04-ai-sdk-ui/21-transport.mdx +174 -0
  59. package/docs/04-ai-sdk-ui/24-reading-ui-message-streams.mdx +104 -0
  60. package/docs/04-ai-sdk-ui/25-message-metadata.mdx +152 -0
  61. package/docs/04-ai-sdk-ui/50-stream-protocol.mdx +477 -0
  62. package/docs/04-ai-sdk-ui/index.mdx +64 -0
  63. package/docs/05-ai-sdk-rsc/01-overview.mdx +45 -0
  64. package/docs/05-ai-sdk-rsc/02-streaming-react-components.mdx +209 -0
  65. package/docs/05-ai-sdk-rsc/03-generative-ui-state.mdx +279 -0
  66. package/docs/05-ai-sdk-rsc/03-saving-and-restoring-states.mdx +105 -0
  67. package/docs/05-ai-sdk-rsc/04-multistep-interfaces.mdx +282 -0
  68. package/docs/05-ai-sdk-rsc/05-streaming-values.mdx +158 -0
  69. package/docs/05-ai-sdk-rsc/06-loading-state.mdx +273 -0
  70. package/docs/05-ai-sdk-rsc/08-error-handling.mdx +96 -0
  71. package/docs/05-ai-sdk-rsc/09-authentication.mdx +42 -0
  72. package/docs/05-ai-sdk-rsc/10-migrating-to-ui.mdx +722 -0
  73. package/docs/05-ai-sdk-rsc/index.mdx +58 -0
  74. package/docs/06-advanced/01-prompt-engineering.mdx +96 -0
  75. package/docs/06-advanced/02-stopping-streams.mdx +184 -0
  76. package/docs/06-advanced/03-backpressure.mdx +173 -0
  77. package/docs/06-advanced/04-caching.mdx +169 -0
  78. package/docs/06-advanced/05-multiple-streamables.mdx +68 -0
  79. package/docs/06-advanced/06-rate-limiting.mdx +60 -0
  80. package/docs/06-advanced/07-rendering-ui-with-language-models.mdx +213 -0
  81. package/docs/06-advanced/08-model-as-router.mdx +120 -0
  82. package/docs/06-advanced/09-multistep-interfaces.mdx +115 -0
  83. package/docs/06-advanced/09-sequential-generations.mdx +55 -0
  84. package/docs/06-advanced/10-vercel-deployment-guide.mdx +117 -0
  85. package/docs/06-advanced/index.mdx +11 -0
  86. package/docs/07-reference/01-ai-sdk-core/01-generate-text.mdx +2142 -0
  87. package/docs/07-reference/01-ai-sdk-core/02-stream-text.mdx +3215 -0
  88. package/docs/07-reference/01-ai-sdk-core/03-generate-object.mdx +780 -0
  89. package/docs/07-reference/01-ai-sdk-core/04-stream-object.mdx +1140 -0
  90. package/docs/07-reference/01-ai-sdk-core/05-embed.mdx +190 -0
  91. package/docs/07-reference/01-ai-sdk-core/06-embed-many.mdx +171 -0
  92. package/docs/07-reference/01-ai-sdk-core/06-rerank.mdx +309 -0
  93. package/docs/07-reference/01-ai-sdk-core/10-generate-image.mdx +227 -0
  94. package/docs/07-reference/01-ai-sdk-core/11-transcribe.mdx +138 -0
  95. package/docs/07-reference/01-ai-sdk-core/12-generate-speech.mdx +214 -0
  96. package/docs/07-reference/01-ai-sdk-core/15-agent.mdx +203 -0
  97. package/docs/07-reference/01-ai-sdk-core/16-tool-loop-agent.mdx +449 -0
  98. package/docs/07-reference/01-ai-sdk-core/17-create-agent-ui-stream.mdx +148 -0
  99. package/docs/07-reference/01-ai-sdk-core/18-create-agent-ui-stream-response.mdx +168 -0
  100. package/docs/07-reference/01-ai-sdk-core/18-pipe-agent-ui-stream-to-response.mdx +144 -0
  101. package/docs/07-reference/01-ai-sdk-core/20-tool.mdx +196 -0
  102. package/docs/07-reference/01-ai-sdk-core/22-dynamic-tool.mdx +175 -0
  103. package/docs/07-reference/01-ai-sdk-core/23-create-mcp-client.mdx +410 -0
  104. package/docs/07-reference/01-ai-sdk-core/24-mcp-stdio-transport.mdx +68 -0
  105. package/docs/07-reference/01-ai-sdk-core/25-json-schema.mdx +94 -0
  106. package/docs/07-reference/01-ai-sdk-core/26-zod-schema.mdx +109 -0
  107. package/docs/07-reference/01-ai-sdk-core/27-valibot-schema.mdx +55 -0
  108. package/docs/07-reference/01-ai-sdk-core/28-output.mdx +342 -0
  109. package/docs/07-reference/01-ai-sdk-core/30-model-message.mdx +415 -0
  110. package/docs/07-reference/01-ai-sdk-core/31-ui-message.mdx +246 -0
  111. package/docs/07-reference/01-ai-sdk-core/32-validate-ui-messages.mdx +101 -0
  112. package/docs/07-reference/01-ai-sdk-core/33-safe-validate-ui-messages.mdx +113 -0
  113. package/docs/07-reference/01-ai-sdk-core/40-provider-registry.mdx +182 -0
  114. package/docs/07-reference/01-ai-sdk-core/42-custom-provider.mdx +121 -0
  115. package/docs/07-reference/01-ai-sdk-core/50-cosine-similarity.mdx +52 -0
  116. package/docs/07-reference/01-ai-sdk-core/60-wrap-language-model.mdx +59 -0
  117. package/docs/07-reference/01-ai-sdk-core/61-wrap-image-model.mdx +64 -0
  118. package/docs/07-reference/01-ai-sdk-core/65-language-model-v2-middleware.mdx +46 -0
  119. package/docs/07-reference/01-ai-sdk-core/66-extract-reasoning-middleware.mdx +68 -0
  120. package/docs/07-reference/01-ai-sdk-core/67-simulate-streaming-middleware.mdx +71 -0
  121. package/docs/07-reference/01-ai-sdk-core/68-default-settings-middleware.mdx +80 -0
  122. package/docs/07-reference/01-ai-sdk-core/69-add-tool-input-examples-middleware.mdx +155 -0
  123. package/docs/07-reference/01-ai-sdk-core/70-extract-json-middleware.mdx +147 -0
  124. package/docs/07-reference/01-ai-sdk-core/70-step-count-is.mdx +84 -0
  125. package/docs/07-reference/01-ai-sdk-core/71-has-tool-call.mdx +120 -0
  126. package/docs/07-reference/01-ai-sdk-core/75-simulate-readable-stream.mdx +94 -0
  127. package/docs/07-reference/01-ai-sdk-core/80-smooth-stream.mdx +145 -0
  128. package/docs/07-reference/01-ai-sdk-core/90-generate-id.mdx +43 -0
  129. package/docs/07-reference/01-ai-sdk-core/91-create-id-generator.mdx +89 -0
  130. package/docs/07-reference/01-ai-sdk-core/index.mdx +159 -0
  131. package/docs/07-reference/02-ai-sdk-ui/01-use-chat.mdx +446 -0
  132. package/docs/07-reference/02-ai-sdk-ui/02-use-completion.mdx +179 -0
  133. package/docs/07-reference/02-ai-sdk-ui/03-use-object.mdx +178 -0
  134. package/docs/07-reference/02-ai-sdk-ui/31-convert-to-model-messages.mdx +230 -0
  135. package/docs/07-reference/02-ai-sdk-ui/32-prune-messages.mdx +108 -0
  136. package/docs/07-reference/02-ai-sdk-ui/40-create-ui-message-stream.mdx +151 -0
  137. package/docs/07-reference/02-ai-sdk-ui/41-create-ui-message-stream-response.mdx +113 -0
  138. package/docs/07-reference/02-ai-sdk-ui/42-pipe-ui-message-stream-to-response.mdx +73 -0
  139. package/docs/07-reference/02-ai-sdk-ui/43-read-ui-message-stream.mdx +57 -0
  140. package/docs/07-reference/02-ai-sdk-ui/46-infer-ui-tools.mdx +99 -0
  141. package/docs/07-reference/02-ai-sdk-ui/47-infer-ui-tool.mdx +75 -0
  142. package/docs/07-reference/02-ai-sdk-ui/50-direct-chat-transport.mdx +333 -0
  143. package/docs/07-reference/02-ai-sdk-ui/index.mdx +89 -0
  144. package/docs/07-reference/03-ai-sdk-rsc/01-stream-ui.mdx +767 -0
  145. package/docs/07-reference/03-ai-sdk-rsc/02-create-ai.mdx +90 -0
  146. package/docs/07-reference/03-ai-sdk-rsc/03-create-streamable-ui.mdx +91 -0
  147. package/docs/07-reference/03-ai-sdk-rsc/04-create-streamable-value.mdx +48 -0
  148. package/docs/07-reference/03-ai-sdk-rsc/05-read-streamable-value.mdx +78 -0
  149. package/docs/07-reference/03-ai-sdk-rsc/06-get-ai-state.mdx +50 -0
  150. package/docs/07-reference/03-ai-sdk-rsc/07-get-mutable-ai-state.mdx +70 -0
  151. package/docs/07-reference/03-ai-sdk-rsc/08-use-ai-state.mdx +26 -0
  152. package/docs/07-reference/03-ai-sdk-rsc/09-use-actions.mdx +42 -0
  153. package/docs/07-reference/03-ai-sdk-rsc/10-use-ui-state.mdx +35 -0
  154. package/docs/07-reference/03-ai-sdk-rsc/11-use-streamable-value.mdx +46 -0
  155. package/docs/07-reference/03-ai-sdk-rsc/20-render.mdx +262 -0
  156. package/docs/07-reference/03-ai-sdk-rsc/index.mdx +67 -0
  157. package/docs/07-reference/04-stream-helpers/01-ai-stream.mdx +89 -0
  158. package/docs/07-reference/04-stream-helpers/02-streaming-text-response.mdx +79 -0
  159. package/docs/07-reference/04-stream-helpers/05-stream-to-response.mdx +108 -0
  160. package/docs/07-reference/04-stream-helpers/07-openai-stream.mdx +77 -0
  161. package/docs/07-reference/04-stream-helpers/08-anthropic-stream.mdx +79 -0
  162. package/docs/07-reference/04-stream-helpers/09-aws-bedrock-stream.mdx +91 -0
  163. package/docs/07-reference/04-stream-helpers/10-aws-bedrock-anthropic-stream.mdx +96 -0
  164. package/docs/07-reference/04-stream-helpers/10-aws-bedrock-messages-stream.mdx +96 -0
  165. package/docs/07-reference/04-stream-helpers/11-aws-bedrock-cohere-stream.mdx +93 -0
  166. package/docs/07-reference/04-stream-helpers/12-aws-bedrock-llama-2-stream.mdx +93 -0
  167. package/docs/07-reference/04-stream-helpers/13-cohere-stream.mdx +78 -0
  168. package/docs/07-reference/04-stream-helpers/14-google-generative-ai-stream.mdx +85 -0
  169. package/docs/07-reference/04-stream-helpers/15-hugging-face-stream.mdx +84 -0
  170. package/docs/07-reference/04-stream-helpers/16-langchain-adapter.mdx +98 -0
  171. package/docs/07-reference/04-stream-helpers/16-llamaindex-adapter.mdx +70 -0
  172. package/docs/07-reference/04-stream-helpers/17-mistral-stream.mdx +81 -0
  173. package/docs/07-reference/04-stream-helpers/18-replicate-stream.mdx +83 -0
  174. package/docs/07-reference/04-stream-helpers/19-inkeep-stream.mdx +80 -0
  175. package/docs/07-reference/04-stream-helpers/index.mdx +103 -0
  176. package/docs/07-reference/05-ai-sdk-errors/ai-api-call-error.mdx +30 -0
  177. package/docs/07-reference/05-ai-sdk-errors/ai-download-error.mdx +27 -0
  178. package/docs/07-reference/05-ai-sdk-errors/ai-empty-response-body-error.mdx +24 -0
  179. package/docs/07-reference/05-ai-sdk-errors/ai-invalid-argument-error.mdx +26 -0
  180. package/docs/07-reference/05-ai-sdk-errors/ai-invalid-data-content-error.mdx +25 -0
  181. package/docs/07-reference/05-ai-sdk-errors/ai-invalid-data-content.mdx +26 -0
  182. package/docs/07-reference/05-ai-sdk-errors/ai-invalid-message-role-error.mdx +25 -0
  183. package/docs/07-reference/05-ai-sdk-errors/ai-invalid-prompt-error.mdx +47 -0
  184. package/docs/07-reference/05-ai-sdk-errors/ai-invalid-response-data-error.mdx +25 -0
  185. package/docs/07-reference/05-ai-sdk-errors/ai-invalid-tool-approval-error.mdx +25 -0
  186. package/docs/07-reference/05-ai-sdk-errors/ai-invalid-tool-input-error.mdx +27 -0
  187. package/docs/07-reference/05-ai-sdk-errors/ai-json-parse-error.mdx +25 -0
  188. package/docs/07-reference/05-ai-sdk-errors/ai-load-api-key-error.mdx +24 -0
  189. package/docs/07-reference/05-ai-sdk-errors/ai-load-setting-error.mdx +24 -0
  190. package/docs/07-reference/05-ai-sdk-errors/ai-message-conversion-error.mdx +25 -0
  191. package/docs/07-reference/05-ai-sdk-errors/ai-no-content-generated-error.mdx +24 -0
  192. package/docs/07-reference/05-ai-sdk-errors/ai-no-image-generated-error.mdx +36 -0
  193. package/docs/07-reference/05-ai-sdk-errors/ai-no-object-generated-error.mdx +43 -0
  194. package/docs/07-reference/05-ai-sdk-errors/ai-no-speech-generated-error.mdx +25 -0
  195. package/docs/07-reference/05-ai-sdk-errors/ai-no-such-model-error.mdx +26 -0
  196. package/docs/07-reference/05-ai-sdk-errors/ai-no-such-provider-error.mdx +28 -0
  197. package/docs/07-reference/05-ai-sdk-errors/ai-no-such-tool-error.mdx +26 -0
  198. package/docs/07-reference/05-ai-sdk-errors/ai-no-transcript-generated-error.mdx +25 -0
  199. package/docs/07-reference/05-ai-sdk-errors/ai-retry-error.mdx +27 -0
  200. package/docs/07-reference/05-ai-sdk-errors/ai-too-many-embedding-values-for-call-error.mdx +27 -0
  201. package/docs/07-reference/05-ai-sdk-errors/ai-tool-call-not-found-for-approval-error.mdx +26 -0
  202. package/docs/07-reference/05-ai-sdk-errors/ai-tool-call-repair-error.mdx +28 -0
  203. package/docs/07-reference/05-ai-sdk-errors/ai-type-validation-error.mdx +25 -0
  204. package/docs/07-reference/05-ai-sdk-errors/ai-unsupported-functionality-error.mdx +25 -0
  205. package/docs/07-reference/05-ai-sdk-errors/index.mdx +38 -0
  206. package/docs/07-reference/index.mdx +34 -0
  207. package/docs/08-migration-guides/00-versioning.mdx +46 -0
  208. package/docs/08-migration-guides/24-migration-guide-6-0.mdx +823 -0
  209. package/docs/08-migration-guides/25-migration-guide-5-0-data.mdx +882 -0
  210. package/docs/08-migration-guides/26-migration-guide-5-0.mdx +3427 -0
  211. package/docs/08-migration-guides/27-migration-guide-4-2.mdx +99 -0
  212. package/docs/08-migration-guides/28-migration-guide-4-1.mdx +14 -0
  213. package/docs/08-migration-guides/29-migration-guide-4-0.mdx +1157 -0
  214. package/docs/08-migration-guides/36-migration-guide-3-4.mdx +14 -0
  215. package/docs/08-migration-guides/37-migration-guide-3-3.mdx +64 -0
  216. package/docs/08-migration-guides/38-migration-guide-3-2.mdx +46 -0
  217. package/docs/08-migration-guides/39-migration-guide-3-1.mdx +168 -0
  218. package/docs/08-migration-guides/index.mdx +22 -0
  219. package/docs/09-troubleshooting/01-azure-stream-slow.mdx +33 -0
  220. package/docs/09-troubleshooting/02-client-side-function-calls-not-invoked.mdx +22 -0
  221. package/docs/09-troubleshooting/03-server-actions-in-client-components.mdx +40 -0
  222. package/docs/09-troubleshooting/04-strange-stream-output.mdx +36 -0
  223. package/docs/09-troubleshooting/05-streamable-ui-errors.mdx +16 -0
  224. package/docs/09-troubleshooting/05-tool-invocation-missing-result.mdx +106 -0
  225. package/docs/09-troubleshooting/06-streaming-not-working-when-deployed.mdx +31 -0
  226. package/docs/09-troubleshooting/06-streaming-not-working-when-proxied.mdx +31 -0
  227. package/docs/09-troubleshooting/06-timeout-on-vercel.mdx +60 -0
  228. package/docs/09-troubleshooting/07-unclosed-streams.mdx +34 -0
  229. package/docs/09-troubleshooting/08-use-chat-failed-to-parse-stream.mdx +26 -0
  230. package/docs/09-troubleshooting/09-client-stream-error.mdx +25 -0
  231. package/docs/09-troubleshooting/10-use-chat-tools-no-response.mdx +32 -0
  232. package/docs/09-troubleshooting/11-use-chat-custom-request-options.mdx +149 -0
  233. package/docs/09-troubleshooting/12-typescript-performance-zod.mdx +46 -0
  234. package/docs/09-troubleshooting/12-use-chat-an-error-occurred.mdx +59 -0
  235. package/docs/09-troubleshooting/13-repeated-assistant-messages.mdx +73 -0
  236. package/docs/09-troubleshooting/14-stream-abort-handling.mdx +73 -0
  237. package/docs/09-troubleshooting/14-tool-calling-with-structured-outputs.mdx +48 -0
  238. package/docs/09-troubleshooting/15-abort-breaks-resumable-streams.mdx +55 -0
  239. package/docs/09-troubleshooting/15-stream-text-not-working.mdx +33 -0
  240. package/docs/09-troubleshooting/16-streaming-status-delay.mdx +63 -0
  241. package/docs/09-troubleshooting/17-use-chat-stale-body-data.mdx +141 -0
  242. package/docs/09-troubleshooting/18-ontoolcall-type-narrowing.mdx +66 -0
  243. package/docs/09-troubleshooting/19-unsupported-model-version.mdx +50 -0
  244. package/docs/09-troubleshooting/20-no-object-generated-content-filter.mdx +72 -0
  245. package/docs/09-troubleshooting/30-model-is-not-assignable-to-type.mdx +21 -0
  246. package/docs/09-troubleshooting/40-typescript-cannot-find-namespace-jsx.mdx +24 -0
  247. package/docs/09-troubleshooting/50-react-maximum-update-depth-exceeded.mdx +39 -0
  248. package/docs/09-troubleshooting/60-jest-cannot-find-module-ai-rsc.mdx +22 -0
  249. package/docs/09-troubleshooting/index.mdx +11 -0
  250. package/package.json +8 -4
@@ -0,0 +1,227 @@
1
+ ---
2
+ title: generateImage
3
+ description: API Reference for generateImage.
4
+ ---
5
+
6
+ # `generateImage()`
7
+
8
+ Generates images based on a given prompt using an image model.
9
+
10
+ It is ideal for use cases where you need to generate images programmatically,
11
+ such as creating visual content or generating images for data augmentation.
12
+
13
+ ```ts
14
+ import { generateImage } from 'ai';
15
+
16
+ const { images } = await generateImage({
17
+ model: openai.image('dall-e-3'),
18
+ prompt: 'A futuristic cityscape at sunset',
19
+ n: 3,
20
+ size: '1024x1024',
21
+ });
22
+
23
+ console.log(images);
24
+ ```
25
+
26
+ ## Import
27
+
28
+ <Snippet text={`import { generateImage } from "ai"`} prompt={false} />
29
+
30
+ ## API Signature
31
+
32
+ ### Parameters
33
+
34
+ <PropertiesTable
35
+ content={[
36
+ {
37
+ name: 'model',
38
+ type: 'ImageModelV3',
39
+ description: 'The image model to use.',
40
+ },
41
+ {
42
+ name: 'prompt',
43
+ type: 'string | GenerateImagePrompt',
44
+ description: 'The input prompt to generate the image from.',
45
+ properties: [
46
+ {
47
+ type: 'GenerateImagePrompt',
48
+ type: 'object',
49
+ description: 'A prompt object for image editing',
50
+ parameters: [
51
+ {
52
+ name: 'images',
53
+ type: 'Array<DataContent>',
54
+ description:
55
+ 'an image item can be one of: base64-encoded string, a `Uint8Array`, an `ArrayBuffer`, or a `Buffer`.',
56
+ },
57
+ {
58
+ name: 'text',
59
+ type: 'string',
60
+ description: 'The text prompt.',
61
+ },
62
+ {
63
+ name: 'mask',
64
+ type: 'DataContent',
65
+ description:
66
+ 'base64-encoded string, a `Uint8Array`, an `ArrayBuffer`, or a `Buffer`.',
67
+ },
68
+ ],
69
+ },
70
+ ],
71
+ },
72
+ {
73
+ name: 'n',
74
+ type: 'number',
75
+ isOptional: true,
76
+ description: 'Number of images to generate.',
77
+ },
78
+ {
79
+ name: 'size',
80
+ type: 'string',
81
+ isOptional: true,
82
+ description:
83
+ 'Size of the images to generate. Format: `{width}x{height}`.',
84
+ },
85
+ {
86
+ name: 'aspectRatio',
87
+ type: 'string',
88
+ isOptional: true,
89
+ description:
90
+ 'Aspect ratio of the images to generate. Format: `{width}:{height}`.',
91
+ },
92
+ {
93
+ name: 'seed',
94
+ type: 'number',
95
+ isOptional: true,
96
+ description: 'Seed for the image generation.',
97
+ },
98
+ {
99
+ name: 'providerOptions',
100
+ type: 'ProviderOptions',
101
+ isOptional: true,
102
+ description: 'Additional provider-specific options.',
103
+ },
104
+ {
105
+ name: 'maxRetries',
106
+ type: 'number',
107
+ isOptional: true,
108
+ description: 'Maximum number of retries. Default: 2.',
109
+ },
110
+ {
111
+ name: 'abortSignal',
112
+ type: 'AbortSignal',
113
+ isOptional: true,
114
+ description: 'An optional abort signal to cancel the call.',
115
+ },
116
+ {
117
+ name: 'headers',
118
+ type: 'Record<string, string>',
119
+ isOptional: true,
120
+ description: 'Additional HTTP headers for the request.',
121
+ },
122
+ ]}
123
+ />
124
+
125
+ ### Returns
126
+
127
+ <PropertiesTable
128
+ content={[
129
+ {
130
+ name: 'image',
131
+ type: 'GeneratedFile',
132
+ description: 'The first image that was generated.',
133
+ properties: [
134
+ {
135
+ type: 'GeneratedFile',
136
+ parameters: [
137
+ {
138
+ name: 'base64',
139
+ type: 'string',
140
+ description: 'Image as a base64 encoded string.',
141
+ },
142
+ {
143
+ name: 'uint8Array',
144
+ type: 'Uint8Array',
145
+ description: 'Image as a Uint8Array.',
146
+ },
147
+ {
148
+ name: 'mediaType',
149
+ type: 'string',
150
+ description: 'The IANA media type of the image.',
151
+ },
152
+ ],
153
+ },
154
+ ],
155
+ },
156
+ {
157
+ name: 'images',
158
+ type: 'Array<GeneratedFile>',
159
+ description: 'All images that were generated.',
160
+ properties: [
161
+ {
162
+ type: 'GeneratedFile',
163
+ parameters: [
164
+ {
165
+ name: 'base64',
166
+ type: 'string',
167
+ description: 'Image as a base64 encoded string.',
168
+ },
169
+ {
170
+ name: 'uint8Array',
171
+ type: 'Uint8Array',
172
+ description: 'Image as a Uint8Array.',
173
+ },
174
+ {
175
+ name: 'mediaType',
176
+ type: 'string',
177
+ description: 'The IANA media type of the image.',
178
+ },
179
+ ],
180
+ },
181
+ ],
182
+ },
183
+ {
184
+ name: 'warnings',
185
+ type: 'Warning[]',
186
+ description:
187
+ 'Warnings from the model provider (e.g. unsupported settings).',
188
+ },
189
+ {
190
+ name: 'providerMetadata',
191
+ type: 'ImageModelProviderMetadata',
192
+ isOptional: true,
193
+ description:
194
+ 'Optional metadata from the provider. The outer key is the provider name. The inner values are the metadata. An `images` key is always present in the metadata and is an array with the same length as the top level `images` key. Details depend on the provider.',
195
+ },
196
+ {
197
+ name: 'responses',
198
+ type: 'Array<ImageModelResponseMetadata>',
199
+ description:
200
+ 'Response metadata from the provider. There may be multiple responses if we made multiple calls to the model.',
201
+ properties: [
202
+ {
203
+ type: 'ImageModelResponseMetadata',
204
+ parameters: [
205
+ {
206
+ name: 'timestamp',
207
+ type: 'Date',
208
+ description: 'Timestamp for the start of the generated response.',
209
+ },
210
+ {
211
+ name: 'modelId',
212
+ type: 'string',
213
+ description:
214
+ 'The ID of the response model that was used to generate the response.',
215
+ },
216
+ {
217
+ name: 'headers',
218
+ type: 'Record<string, string>',
219
+ isOptional: true,
220
+ description: 'Response headers.',
221
+ },
222
+ ],
223
+ },
224
+ ],
225
+ },
226
+ ]}
227
+ />
@@ -0,0 +1,138 @@
1
+ ---
2
+ title: transcribe
3
+ description: API Reference for transcribe.
4
+ ---
5
+
6
+ # `transcribe()`
7
+
8
+ <Note type="warning">`transcribe` is an experimental feature.</Note>
9
+
10
+ Generates a transcript from an audio file.
11
+
12
+ ```ts
13
+ import { experimental_transcribe as transcribe } from 'ai';
14
+ import { openai } from '@ai-sdk/openai';
15
+ import { readFile } from 'fs/promises';
16
+
17
+ const { text: transcript } = await transcribe({
18
+ model: openai.transcription('whisper-1'),
19
+ audio: await readFile('audio.mp3'),
20
+ });
21
+
22
+ console.log(transcript);
23
+ ```
24
+
25
+ ## Import
26
+
27
+ <Snippet
28
+ text={`import { experimental_transcribe as transcribe } from "ai"`}
29
+ prompt={false}
30
+ />
31
+
32
+ ## API Signature
33
+
34
+ ### Parameters
35
+
36
+ <PropertiesTable
37
+ content={[
38
+ {
39
+ name: 'model',
40
+ type: 'TranscriptionModelV3',
41
+ description: 'The transcription model to use.',
42
+ },
43
+ {
44
+ name: 'audio',
45
+ type: 'DataContent (string | Uint8Array | ArrayBuffer | Buffer) | URL',
46
+ description: 'The audio file to generate the transcript from.',
47
+ },
48
+ {
49
+ name: 'providerOptions',
50
+ type: 'Record<string, JSONObject>',
51
+ isOptional: true,
52
+ description: 'Additional provider-specific options.',
53
+ },
54
+ {
55
+ name: 'maxRetries',
56
+ type: 'number',
57
+ isOptional: true,
58
+ description: 'Maximum number of retries. Default: 2.',
59
+ },
60
+ {
61
+ name: 'abortSignal',
62
+ type: 'AbortSignal',
63
+ isOptional: true,
64
+ description: 'An optional abort signal to cancel the call.',
65
+ },
66
+ {
67
+ name: 'headers',
68
+ type: 'Record<string, string>',
69
+ isOptional: true,
70
+ description: 'Additional HTTP headers for the request.',
71
+ },
72
+ ]}
73
+ />
74
+
75
+ ### Returns
76
+
77
+ <PropertiesTable
78
+ content={[
79
+ {
80
+ name: 'text',
81
+ type: 'string',
82
+ description: 'The complete transcribed text from the audio input.',
83
+ },
84
+ {
85
+ name: 'segments',
86
+ type: 'Array<{ text: string; startSecond: number; endSecond: number }>',
87
+ description:
88
+ 'An array of transcript segments, each containing a portion of the transcribed text along with its start and end times in seconds.',
89
+ },
90
+ {
91
+ name: 'language',
92
+ type: 'string | undefined',
93
+ description:
94
+ 'The language of the transcript in ISO-639-1 format e.g. "en" for English.',
95
+ },
96
+ {
97
+ name: 'durationInSeconds',
98
+ type: 'number | undefined',
99
+ description: 'The duration of the transcript in seconds.',
100
+ },
101
+ {
102
+ name: 'warnings',
103
+ type: 'Warning[]',
104
+ description:
105
+ 'Warnings from the model provider (e.g. unsupported settings).',
106
+ },
107
+ {
108
+ name: 'responses',
109
+ type: 'Array<TranscriptionModelResponseMetadata>',
110
+ description:
111
+ 'Response metadata from the provider. There may be multiple responses if we made multiple calls to the model.',
112
+ properties: [
113
+ {
114
+ type: 'TranscriptionModelResponseMetadata',
115
+ parameters: [
116
+ {
117
+ name: 'timestamp',
118
+ type: 'Date',
119
+ description: 'Timestamp for the start of the generated response.',
120
+ },
121
+ {
122
+ name: 'modelId',
123
+ type: 'string',
124
+ description:
125
+ 'The ID of the response model that was used to generate the response.',
126
+ },
127
+ {
128
+ name: 'headers',
129
+ type: 'Record<string, string>',
130
+ isOptional: true,
131
+ description: 'Response headers.',
132
+ },
133
+ ],
134
+ },
135
+ ],
136
+ },
137
+ ]}
138
+ />
@@ -0,0 +1,214 @@
1
+ ---
2
+ title: generateSpeech
3
+ description: API Reference for generateSpeech.
4
+ ---
5
+
6
+ # `generateSpeech()`
7
+
8
+ <Note type="warning">`generateSpeech` is an experimental feature.</Note>
9
+
10
+ Generates speech audio from text.
11
+
12
+ ```ts
13
+ import { experimental_generateSpeech as generateSpeech } from 'ai';
14
+ import { openai } from '@ai-sdk/openai';
15
+
16
+ const { audio } = await generateSpeech({
17
+ model: openai.speech('tts-1'),
18
+ text: 'Hello from the AI SDK!',
19
+ voice: 'alloy',
20
+ });
21
+
22
+ console.log(audio);
23
+ ```
24
+
25
+ ## Examples
26
+
27
+ ### OpenAI
28
+
29
+ ```ts
30
+ import { experimental_generateSpeech as generateSpeech } from 'ai';
31
+ import { openai } from '@ai-sdk/openai';
32
+
33
+ const { audio } = await generateSpeech({
34
+ model: openai.speech('tts-1'),
35
+ text: 'Hello from the AI SDK!',
36
+ voice: 'alloy',
37
+ });
38
+ ```
39
+
40
+ ### ElevenLabs
41
+
42
+ ```ts
43
+ import { experimental_generateSpeech as generateSpeech } from 'ai';
44
+ import { elevenlabs } from '@ai-sdk/elevenlabs';
45
+
46
+ const { audio } = await generateSpeech({
47
+ model: elevenlabs.speech('eleven_multilingual_v2'),
48
+ text: 'Hello from the AI SDK!',
49
+ voice: 'your-voice-id', // Required: get this from your ElevenLabs account
50
+ });
51
+ ```
52
+
53
+ ## Import
54
+
55
+ <Snippet
56
+ text={`import { experimental_generateSpeech as generateSpeech } from "ai"`}
57
+ prompt={false}
58
+ />
59
+
60
+ ## API Signature
61
+
62
+ ### Parameters
63
+
64
+ <PropertiesTable
65
+ content={[
66
+ {
67
+ name: 'model',
68
+ type: 'SpeechModelV3',
69
+ description: 'The speech model to use.',
70
+ },
71
+ {
72
+ name: 'text',
73
+ type: 'string',
74
+ description: 'The text to generate the speech from.',
75
+ },
76
+ {
77
+ name: 'voice',
78
+ type: 'string',
79
+ isOptional: true,
80
+ description: 'The voice to use for the speech.',
81
+ },
82
+ {
83
+ name: 'outputFormat',
84
+ type: 'string',
85
+ isOptional: true,
86
+ description:
87
+ 'The output format to use for the speech e.g. "mp3", "wav", etc.',
88
+ },
89
+ {
90
+ name: 'instructions',
91
+ type: 'string',
92
+ isOptional: true,
93
+ description: 'Instructions for the speech generation.',
94
+ },
95
+ {
96
+ name: 'speed',
97
+ type: 'number',
98
+ isOptional: true,
99
+ description: 'The speed of the speech generation.',
100
+ },
101
+ {
102
+ name: 'language',
103
+ type: 'string',
104
+ isOptional: true,
105
+ description:
106
+ 'The language for speech generation. This should be an ISO 639-1 language code (e.g. "en", "es", "fr") or "auto" for automatic language detection. Provider support varies.',
107
+ },
108
+ {
109
+ name: 'providerOptions',
110
+ type: 'Record<string, JSONObject>',
111
+ isOptional: true,
112
+ description: 'Additional provider-specific options.',
113
+ },
114
+ {
115
+ name: 'maxRetries',
116
+ type: 'number',
117
+ isOptional: true,
118
+ description: 'Maximum number of retries. Default: 2.',
119
+ },
120
+ {
121
+ name: 'abortSignal',
122
+ type: 'AbortSignal',
123
+ isOptional: true,
124
+ description: 'An optional abort signal to cancel the call.',
125
+ },
126
+ {
127
+ name: 'headers',
128
+ type: 'Record<string, string>',
129
+ isOptional: true,
130
+ description: 'Additional HTTP headers for the request.',
131
+ },
132
+ ]}
133
+ />
134
+
135
+ ### Returns
136
+
137
+ <PropertiesTable
138
+ content={[
139
+ {
140
+ name: 'audio',
141
+ type: 'GeneratedAudioFile',
142
+ description: 'The generated audio.',
143
+ properties: [
144
+ {
145
+ type: 'GeneratedAudioFile',
146
+ parameters: [
147
+ {
148
+ name: 'base64',
149
+ type: 'string',
150
+ description: 'Audio as a base64 encoded string.',
151
+ },
152
+ {
153
+ name: 'uint8Array',
154
+ type: 'Uint8Array',
155
+ description: 'Audio as a Uint8Array.',
156
+ },
157
+ {
158
+ name: 'mimeType',
159
+ type: 'string',
160
+ description: 'MIME type of the audio (e.g. "audio/mpeg").',
161
+ },
162
+ {
163
+ name: 'format',
164
+ type: 'string',
165
+ description: 'Format of the audio (e.g. "mp3").',
166
+ },
167
+ ],
168
+ },
169
+ ],
170
+ },
171
+ {
172
+ name: 'warnings',
173
+ type: 'Warning[]',
174
+ description:
175
+ 'Warnings from the model provider (e.g. unsupported settings).',
176
+ },
177
+ {
178
+ name: 'responses',
179
+ type: 'Array<SpeechModelResponseMetadata>',
180
+ description:
181
+ 'Response metadata from the provider. There may be multiple responses if we made multiple calls to the model.',
182
+ properties: [
183
+ {
184
+ type: 'SpeechModelResponseMetadata',
185
+ parameters: [
186
+ {
187
+ name: 'timestamp',
188
+ type: 'Date',
189
+ description: 'Timestamp for the start of the generated response.',
190
+ },
191
+ {
192
+ name: 'modelId',
193
+ type: 'string',
194
+ description:
195
+ 'The ID of the response model that was used to generate the response.',
196
+ },
197
+ {
198
+ name: 'body',
199
+ isOptional: true,
200
+ type: 'unknown',
201
+ description: 'Optional response body.',
202
+ },
203
+ {
204
+ name: 'headers',
205
+ type: 'Record<string, string>',
206
+ isOptional: true,
207
+ description: 'Response headers.',
208
+ },
209
+ ],
210
+ },
211
+ ],
212
+ },
213
+ ]}
214
+ />