
# Generate Text with Image Prompt

Some language models that support vision capabilities accept images as part of the prompt. Here are some of the different [formats](/docs/reference/ai-sdk-core/generate-text#content-image) you can use to include images as input.

## URL

```ts file='index.ts'
import { generateText } from 'ai';

const result = await generateText({
  model: 'openai/gpt-4.1',
  maxOutputTokens: 512,
  messages: [
    {
      role: 'user',
      content: [
        {
          type: 'text',
          text: 'what are the red things in this image?',
        },
        {
          type: 'image',
          image: new URL(
            'https://upload.wikimedia.org/wikipedia/commons/thumb/3/3e/2024_Solar_Eclipse_Prominences.jpg/720px-2024_Solar_Eclipse_Prominences.jpg',
          ),
        },
      ],
    },
  ],
});

console.log(result);
```

## File Buffer

```ts file='index.ts'
import { generateText } from 'ai';
import fs from 'fs';

const result = await generateText({
  model: 'openai/gpt-4.1',
  maxOutputTokens: 512,
  messages: [
    {
      role: 'user',
      content: [
        {
          type: 'text',
          text: 'what are the red things in this image?',
        },
        {
          type: 'image',
          image: fs.readFileSync('./node/attachments/eclipse.jpg', {
            encoding: 'base64',
          }),
        },
      ],
    },
  ],
});

console.log(result);
```


## Navigation

- [Generate Text](/v5/cookbook/node/generate-text)
- [Retrieval Augmented Generation](/v5/cookbook/node/retrieval-augmented-generation)
- [Knowledge Base Agent](/v5/cookbook/node/knowledge-base-agent)
- [Generate Text with Chat Prompt](/v5/cookbook/node/generate-text-with-chat-prompt)
- [Generate Text with Image Prompt](/v5/cookbook/node/generate-text-with-image-prompt)
- [Stream Text](/v5/cookbook/node/stream-text)
- [Stream Text with Chat Prompt](/v5/cookbook/node/stream-text-with-chat-prompt)
- [Stream Text with Image Prompt](/v5/cookbook/node/stream-text-with-image-prompt)
- [Stream Text with File Prompt](/v5/cookbook/node/stream-text-with-file-prompt)
- [Generate Object with a Reasoning Model](/v5/cookbook/node/generate-object-reasoning)
- [Generate Object](/v5/cookbook/node/generate-object)
- [Stream Object](/v5/cookbook/node/stream-object)
- [Stream Object with Image Prompt](/v5/cookbook/node/stream-object-with-image-prompt)
- [Record Token Usage After Streaming Object](/v5/cookbook/node/stream-object-record-token-usage)
- [Record Final Object after Streaming Object](/v5/cookbook/node/stream-object-record-final-object)
- [Call Tools](/v5/cookbook/node/call-tools)
- [Call Tools with Image Prompt](/v5/cookbook/node/call-tools-with-image-prompt)
- [Call Tools in Multiple Steps](/v5/cookbook/node/call-tools-multiple-steps)
- [Model Context Protocol (MCP) Tools](/v5/cookbook/node/mcp-tools)
- [Manual Agent Loop](/v5/cookbook/node/manual-agent-loop)
- [Web Search Agent](/v5/cookbook/node/web-search-agent)
- [Model Context Protocol (MCP) Elicitation](/v5/cookbook/node/mcp-elicitation)
- [Embed Text](/v5/cookbook/node/embed-text)
- [Embed Text in Batch](/v5/cookbook/node/embed-text-batch)
- [Intercepting Fetch Requests](/v5/cookbook/node/intercept-fetch-requests)
- [Local Caching Middleware](/v5/cookbook/node/local-caching-middleware)


[Full Sitemap](/sitemap.md)
