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.
- package/CHANGELOG.md +6 -0
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/dist/internal/index.js +1 -1
- package/dist/internal/index.mjs +1 -1
- package/docs/00-introduction/index.mdx +76 -0
- package/docs/02-foundations/01-overview.mdx +43 -0
- package/docs/02-foundations/02-providers-and-models.mdx +163 -0
- package/docs/02-foundations/03-prompts.mdx +620 -0
- package/docs/02-foundations/04-tools.mdx +160 -0
- package/docs/02-foundations/05-streaming.mdx +62 -0
- package/docs/02-foundations/index.mdx +43 -0
- package/docs/02-getting-started/00-choosing-a-provider.mdx +110 -0
- package/docs/02-getting-started/01-navigating-the-library.mdx +85 -0
- package/docs/02-getting-started/02-nextjs-app-router.mdx +556 -0
- package/docs/02-getting-started/03-nextjs-pages-router.mdx +542 -0
- package/docs/02-getting-started/04-svelte.mdx +627 -0
- package/docs/02-getting-started/05-nuxt.mdx +566 -0
- package/docs/02-getting-started/06-nodejs.mdx +512 -0
- package/docs/02-getting-started/07-expo.mdx +766 -0
- package/docs/02-getting-started/08-tanstack-start.mdx +583 -0
- package/docs/02-getting-started/index.mdx +44 -0
- package/docs/03-agents/01-overview.mdx +96 -0
- package/docs/03-agents/02-building-agents.mdx +367 -0
- package/docs/03-agents/03-workflows.mdx +370 -0
- package/docs/03-agents/04-loop-control.mdx +350 -0
- package/docs/03-agents/05-configuring-call-options.mdx +286 -0
- package/docs/03-agents/index.mdx +40 -0
- package/docs/03-ai-sdk-core/01-overview.mdx +33 -0
- package/docs/03-ai-sdk-core/05-generating-text.mdx +600 -0
- package/docs/03-ai-sdk-core/10-generating-structured-data.mdx +662 -0
- package/docs/03-ai-sdk-core/15-tools-and-tool-calling.mdx +1102 -0
- package/docs/03-ai-sdk-core/16-mcp-tools.mdx +375 -0
- package/docs/03-ai-sdk-core/20-prompt-engineering.mdx +144 -0
- package/docs/03-ai-sdk-core/25-settings.mdx +198 -0
- package/docs/03-ai-sdk-core/30-embeddings.mdx +247 -0
- package/docs/03-ai-sdk-core/31-reranking.mdx +218 -0
- package/docs/03-ai-sdk-core/35-image-generation.mdx +341 -0
- package/docs/03-ai-sdk-core/36-transcription.mdx +173 -0
- package/docs/03-ai-sdk-core/37-speech.mdx +167 -0
- package/docs/03-ai-sdk-core/40-middleware.mdx +480 -0
- package/docs/03-ai-sdk-core/45-provider-management.mdx +349 -0
- package/docs/03-ai-sdk-core/50-error-handling.mdx +149 -0
- package/docs/03-ai-sdk-core/55-testing.mdx +218 -0
- package/docs/03-ai-sdk-core/60-telemetry.mdx +313 -0
- package/docs/03-ai-sdk-core/65-devtools.mdx +107 -0
- package/docs/03-ai-sdk-core/index.mdx +88 -0
- package/docs/04-ai-sdk-ui/01-overview.mdx +44 -0
- package/docs/04-ai-sdk-ui/02-chatbot.mdx +1313 -0
- package/docs/04-ai-sdk-ui/03-chatbot-message-persistence.mdx +535 -0
- package/docs/04-ai-sdk-ui/03-chatbot-resume-streams.mdx +263 -0
- package/docs/04-ai-sdk-ui/03-chatbot-tool-usage.mdx +682 -0
- package/docs/04-ai-sdk-ui/04-generative-user-interfaces.mdx +389 -0
- package/docs/04-ai-sdk-ui/05-completion.mdx +186 -0
- package/docs/04-ai-sdk-ui/08-object-generation.mdx +344 -0
- package/docs/04-ai-sdk-ui/20-streaming-data.mdx +397 -0
- package/docs/04-ai-sdk-ui/21-error-handling.mdx +190 -0
- package/docs/04-ai-sdk-ui/21-transport.mdx +174 -0
- package/docs/04-ai-sdk-ui/24-reading-ui-message-streams.mdx +104 -0
- package/docs/04-ai-sdk-ui/25-message-metadata.mdx +152 -0
- package/docs/04-ai-sdk-ui/50-stream-protocol.mdx +477 -0
- package/docs/04-ai-sdk-ui/index.mdx +64 -0
- package/docs/05-ai-sdk-rsc/01-overview.mdx +45 -0
- package/docs/05-ai-sdk-rsc/02-streaming-react-components.mdx +209 -0
- package/docs/05-ai-sdk-rsc/03-generative-ui-state.mdx +279 -0
- package/docs/05-ai-sdk-rsc/03-saving-and-restoring-states.mdx +105 -0
- package/docs/05-ai-sdk-rsc/04-multistep-interfaces.mdx +282 -0
- package/docs/05-ai-sdk-rsc/05-streaming-values.mdx +158 -0
- package/docs/05-ai-sdk-rsc/06-loading-state.mdx +273 -0
- package/docs/05-ai-sdk-rsc/08-error-handling.mdx +96 -0
- package/docs/05-ai-sdk-rsc/09-authentication.mdx +42 -0
- package/docs/05-ai-sdk-rsc/10-migrating-to-ui.mdx +722 -0
- package/docs/05-ai-sdk-rsc/index.mdx +58 -0
- package/docs/06-advanced/01-prompt-engineering.mdx +96 -0
- package/docs/06-advanced/02-stopping-streams.mdx +184 -0
- package/docs/06-advanced/03-backpressure.mdx +173 -0
- package/docs/06-advanced/04-caching.mdx +169 -0
- package/docs/06-advanced/05-multiple-streamables.mdx +68 -0
- package/docs/06-advanced/06-rate-limiting.mdx +60 -0
- package/docs/06-advanced/07-rendering-ui-with-language-models.mdx +213 -0
- package/docs/06-advanced/08-model-as-router.mdx +120 -0
- package/docs/06-advanced/09-multistep-interfaces.mdx +115 -0
- package/docs/06-advanced/09-sequential-generations.mdx +55 -0
- package/docs/06-advanced/10-vercel-deployment-guide.mdx +117 -0
- package/docs/06-advanced/index.mdx +11 -0
- package/docs/07-reference/01-ai-sdk-core/01-generate-text.mdx +2142 -0
- package/docs/07-reference/01-ai-sdk-core/02-stream-text.mdx +3215 -0
- package/docs/07-reference/01-ai-sdk-core/03-generate-object.mdx +780 -0
- package/docs/07-reference/01-ai-sdk-core/04-stream-object.mdx +1140 -0
- package/docs/07-reference/01-ai-sdk-core/05-embed.mdx +190 -0
- package/docs/07-reference/01-ai-sdk-core/06-embed-many.mdx +171 -0
- package/docs/07-reference/01-ai-sdk-core/06-rerank.mdx +309 -0
- package/docs/07-reference/01-ai-sdk-core/10-generate-image.mdx +227 -0
- package/docs/07-reference/01-ai-sdk-core/11-transcribe.mdx +138 -0
- package/docs/07-reference/01-ai-sdk-core/12-generate-speech.mdx +214 -0
- package/docs/07-reference/01-ai-sdk-core/15-agent.mdx +203 -0
- package/docs/07-reference/01-ai-sdk-core/16-tool-loop-agent.mdx +449 -0
- package/docs/07-reference/01-ai-sdk-core/17-create-agent-ui-stream.mdx +148 -0
- package/docs/07-reference/01-ai-sdk-core/18-create-agent-ui-stream-response.mdx +168 -0
- package/docs/07-reference/01-ai-sdk-core/18-pipe-agent-ui-stream-to-response.mdx +144 -0
- package/docs/07-reference/01-ai-sdk-core/20-tool.mdx +196 -0
- package/docs/07-reference/01-ai-sdk-core/22-dynamic-tool.mdx +175 -0
- package/docs/07-reference/01-ai-sdk-core/23-create-mcp-client.mdx +410 -0
- package/docs/07-reference/01-ai-sdk-core/24-mcp-stdio-transport.mdx +68 -0
- package/docs/07-reference/01-ai-sdk-core/25-json-schema.mdx +94 -0
- package/docs/07-reference/01-ai-sdk-core/26-zod-schema.mdx +109 -0
- package/docs/07-reference/01-ai-sdk-core/27-valibot-schema.mdx +55 -0
- package/docs/07-reference/01-ai-sdk-core/28-output.mdx +342 -0
- package/docs/07-reference/01-ai-sdk-core/30-model-message.mdx +415 -0
- package/docs/07-reference/01-ai-sdk-core/31-ui-message.mdx +246 -0
- package/docs/07-reference/01-ai-sdk-core/32-validate-ui-messages.mdx +101 -0
- package/docs/07-reference/01-ai-sdk-core/33-safe-validate-ui-messages.mdx +113 -0
- package/docs/07-reference/01-ai-sdk-core/40-provider-registry.mdx +182 -0
- package/docs/07-reference/01-ai-sdk-core/42-custom-provider.mdx +121 -0
- package/docs/07-reference/01-ai-sdk-core/50-cosine-similarity.mdx +52 -0
- package/docs/07-reference/01-ai-sdk-core/60-wrap-language-model.mdx +59 -0
- package/docs/07-reference/01-ai-sdk-core/61-wrap-image-model.mdx +64 -0
- package/docs/07-reference/01-ai-sdk-core/65-language-model-v2-middleware.mdx +46 -0
- package/docs/07-reference/01-ai-sdk-core/66-extract-reasoning-middleware.mdx +68 -0
- package/docs/07-reference/01-ai-sdk-core/67-simulate-streaming-middleware.mdx +71 -0
- package/docs/07-reference/01-ai-sdk-core/68-default-settings-middleware.mdx +80 -0
- package/docs/07-reference/01-ai-sdk-core/69-add-tool-input-examples-middleware.mdx +155 -0
- package/docs/07-reference/01-ai-sdk-core/70-extract-json-middleware.mdx +147 -0
- package/docs/07-reference/01-ai-sdk-core/70-step-count-is.mdx +84 -0
- package/docs/07-reference/01-ai-sdk-core/71-has-tool-call.mdx +120 -0
- package/docs/07-reference/01-ai-sdk-core/75-simulate-readable-stream.mdx +94 -0
- package/docs/07-reference/01-ai-sdk-core/80-smooth-stream.mdx +145 -0
- package/docs/07-reference/01-ai-sdk-core/90-generate-id.mdx +43 -0
- package/docs/07-reference/01-ai-sdk-core/91-create-id-generator.mdx +89 -0
- package/docs/07-reference/01-ai-sdk-core/index.mdx +159 -0
- package/docs/07-reference/02-ai-sdk-ui/01-use-chat.mdx +446 -0
- package/docs/07-reference/02-ai-sdk-ui/02-use-completion.mdx +179 -0
- package/docs/07-reference/02-ai-sdk-ui/03-use-object.mdx +178 -0
- package/docs/07-reference/02-ai-sdk-ui/31-convert-to-model-messages.mdx +230 -0
- package/docs/07-reference/02-ai-sdk-ui/32-prune-messages.mdx +108 -0
- package/docs/07-reference/02-ai-sdk-ui/40-create-ui-message-stream.mdx +151 -0
- package/docs/07-reference/02-ai-sdk-ui/41-create-ui-message-stream-response.mdx +113 -0
- package/docs/07-reference/02-ai-sdk-ui/42-pipe-ui-message-stream-to-response.mdx +73 -0
- package/docs/07-reference/02-ai-sdk-ui/43-read-ui-message-stream.mdx +57 -0
- package/docs/07-reference/02-ai-sdk-ui/46-infer-ui-tools.mdx +99 -0
- package/docs/07-reference/02-ai-sdk-ui/47-infer-ui-tool.mdx +75 -0
- package/docs/07-reference/02-ai-sdk-ui/50-direct-chat-transport.mdx +333 -0
- package/docs/07-reference/02-ai-sdk-ui/index.mdx +89 -0
- package/docs/07-reference/03-ai-sdk-rsc/01-stream-ui.mdx +767 -0
- package/docs/07-reference/03-ai-sdk-rsc/02-create-ai.mdx +90 -0
- package/docs/07-reference/03-ai-sdk-rsc/03-create-streamable-ui.mdx +91 -0
- package/docs/07-reference/03-ai-sdk-rsc/04-create-streamable-value.mdx +48 -0
- package/docs/07-reference/03-ai-sdk-rsc/05-read-streamable-value.mdx +78 -0
- package/docs/07-reference/03-ai-sdk-rsc/06-get-ai-state.mdx +50 -0
- package/docs/07-reference/03-ai-sdk-rsc/07-get-mutable-ai-state.mdx +70 -0
- package/docs/07-reference/03-ai-sdk-rsc/08-use-ai-state.mdx +26 -0
- package/docs/07-reference/03-ai-sdk-rsc/09-use-actions.mdx +42 -0
- package/docs/07-reference/03-ai-sdk-rsc/10-use-ui-state.mdx +35 -0
- package/docs/07-reference/03-ai-sdk-rsc/11-use-streamable-value.mdx +46 -0
- package/docs/07-reference/03-ai-sdk-rsc/20-render.mdx +262 -0
- package/docs/07-reference/03-ai-sdk-rsc/index.mdx +67 -0
- package/docs/07-reference/04-stream-helpers/01-ai-stream.mdx +89 -0
- package/docs/07-reference/04-stream-helpers/02-streaming-text-response.mdx +79 -0
- package/docs/07-reference/04-stream-helpers/05-stream-to-response.mdx +108 -0
- package/docs/07-reference/04-stream-helpers/07-openai-stream.mdx +77 -0
- package/docs/07-reference/04-stream-helpers/08-anthropic-stream.mdx +79 -0
- package/docs/07-reference/04-stream-helpers/09-aws-bedrock-stream.mdx +91 -0
- package/docs/07-reference/04-stream-helpers/10-aws-bedrock-anthropic-stream.mdx +96 -0
- package/docs/07-reference/04-stream-helpers/10-aws-bedrock-messages-stream.mdx +96 -0
- package/docs/07-reference/04-stream-helpers/11-aws-bedrock-cohere-stream.mdx +93 -0
- package/docs/07-reference/04-stream-helpers/12-aws-bedrock-llama-2-stream.mdx +93 -0
- package/docs/07-reference/04-stream-helpers/13-cohere-stream.mdx +78 -0
- package/docs/07-reference/04-stream-helpers/14-google-generative-ai-stream.mdx +85 -0
- package/docs/07-reference/04-stream-helpers/15-hugging-face-stream.mdx +84 -0
- package/docs/07-reference/04-stream-helpers/16-langchain-adapter.mdx +98 -0
- package/docs/07-reference/04-stream-helpers/16-llamaindex-adapter.mdx +70 -0
- package/docs/07-reference/04-stream-helpers/17-mistral-stream.mdx +81 -0
- package/docs/07-reference/04-stream-helpers/18-replicate-stream.mdx +83 -0
- package/docs/07-reference/04-stream-helpers/19-inkeep-stream.mdx +80 -0
- package/docs/07-reference/04-stream-helpers/index.mdx +103 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-api-call-error.mdx +30 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-download-error.mdx +27 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-empty-response-body-error.mdx +24 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-invalid-argument-error.mdx +26 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-invalid-data-content-error.mdx +25 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-invalid-data-content.mdx +26 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-invalid-message-role-error.mdx +25 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-invalid-prompt-error.mdx +47 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-invalid-response-data-error.mdx +25 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-invalid-tool-approval-error.mdx +25 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-invalid-tool-input-error.mdx +27 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-json-parse-error.mdx +25 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-load-api-key-error.mdx +24 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-load-setting-error.mdx +24 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-message-conversion-error.mdx +25 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-no-content-generated-error.mdx +24 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-no-image-generated-error.mdx +36 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-no-object-generated-error.mdx +43 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-no-speech-generated-error.mdx +25 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-no-such-model-error.mdx +26 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-no-such-provider-error.mdx +28 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-no-such-tool-error.mdx +26 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-no-transcript-generated-error.mdx +25 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-retry-error.mdx +27 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-too-many-embedding-values-for-call-error.mdx +27 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-tool-call-not-found-for-approval-error.mdx +26 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-tool-call-repair-error.mdx +28 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-type-validation-error.mdx +25 -0
- package/docs/07-reference/05-ai-sdk-errors/ai-unsupported-functionality-error.mdx +25 -0
- package/docs/07-reference/05-ai-sdk-errors/index.mdx +38 -0
- package/docs/07-reference/index.mdx +34 -0
- package/docs/08-migration-guides/00-versioning.mdx +46 -0
- package/docs/08-migration-guides/24-migration-guide-6-0.mdx +823 -0
- package/docs/08-migration-guides/25-migration-guide-5-0-data.mdx +882 -0
- package/docs/08-migration-guides/26-migration-guide-5-0.mdx +3427 -0
- package/docs/08-migration-guides/27-migration-guide-4-2.mdx +99 -0
- package/docs/08-migration-guides/28-migration-guide-4-1.mdx +14 -0
- package/docs/08-migration-guides/29-migration-guide-4-0.mdx +1157 -0
- package/docs/08-migration-guides/36-migration-guide-3-4.mdx +14 -0
- package/docs/08-migration-guides/37-migration-guide-3-3.mdx +64 -0
- package/docs/08-migration-guides/38-migration-guide-3-2.mdx +46 -0
- package/docs/08-migration-guides/39-migration-guide-3-1.mdx +168 -0
- package/docs/08-migration-guides/index.mdx +22 -0
- package/docs/09-troubleshooting/01-azure-stream-slow.mdx +33 -0
- package/docs/09-troubleshooting/02-client-side-function-calls-not-invoked.mdx +22 -0
- package/docs/09-troubleshooting/03-server-actions-in-client-components.mdx +40 -0
- package/docs/09-troubleshooting/04-strange-stream-output.mdx +36 -0
- package/docs/09-troubleshooting/05-streamable-ui-errors.mdx +16 -0
- package/docs/09-troubleshooting/05-tool-invocation-missing-result.mdx +106 -0
- package/docs/09-troubleshooting/06-streaming-not-working-when-deployed.mdx +31 -0
- package/docs/09-troubleshooting/06-streaming-not-working-when-proxied.mdx +31 -0
- package/docs/09-troubleshooting/06-timeout-on-vercel.mdx +60 -0
- package/docs/09-troubleshooting/07-unclosed-streams.mdx +34 -0
- package/docs/09-troubleshooting/08-use-chat-failed-to-parse-stream.mdx +26 -0
- package/docs/09-troubleshooting/09-client-stream-error.mdx +25 -0
- package/docs/09-troubleshooting/10-use-chat-tools-no-response.mdx +32 -0
- package/docs/09-troubleshooting/11-use-chat-custom-request-options.mdx +149 -0
- package/docs/09-troubleshooting/12-typescript-performance-zod.mdx +46 -0
- package/docs/09-troubleshooting/12-use-chat-an-error-occurred.mdx +59 -0
- package/docs/09-troubleshooting/13-repeated-assistant-messages.mdx +73 -0
- package/docs/09-troubleshooting/14-stream-abort-handling.mdx +73 -0
- package/docs/09-troubleshooting/14-tool-calling-with-structured-outputs.mdx +48 -0
- package/docs/09-troubleshooting/15-abort-breaks-resumable-streams.mdx +55 -0
- package/docs/09-troubleshooting/15-stream-text-not-working.mdx +33 -0
- package/docs/09-troubleshooting/16-streaming-status-delay.mdx +63 -0
- package/docs/09-troubleshooting/17-use-chat-stale-body-data.mdx +141 -0
- package/docs/09-troubleshooting/18-ontoolcall-type-narrowing.mdx +66 -0
- package/docs/09-troubleshooting/19-unsupported-model-version.mdx +50 -0
- package/docs/09-troubleshooting/20-no-object-generated-content-filter.mdx +72 -0
- package/docs/09-troubleshooting/30-model-is-not-assignable-to-type.mdx +21 -0
- package/docs/09-troubleshooting/40-typescript-cannot-find-namespace-jsx.mdx +24 -0
- package/docs/09-troubleshooting/50-react-maximum-update-depth-exceeded.mdx +39 -0
- package/docs/09-troubleshooting/60-jest-cannot-find-module-ai-rsc.mdx +22 -0
- package/docs/09-troubleshooting/index.mdx +11 -0
- 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
|
+
/>
|