Primitives.org.ai

generate

The core generation primitive with schema support

The core primitive. All other functions call generate under the hood.

Import

import { generate } from 'ai-functions'

Syntax

generate(type: string, prompt: string, options?: GenerateOptions)

Output Types

// JSON (default)
const analysis = await generate('json', `competitive analysis of ${company}`)

// With schema
const user = await generate('json', 'fake user profile', {
  schema: {
    name: 'Full name',
    email: 'Email address',
    age: 'Age in years (number)',
  },
})

// Code
const config = await generate('code', 'webpack config for React', {
  language: 'javascript',
})

// Markdown
const readme = await generate('markdown', `README for ${project}`)

// Other formats
const deployment = await generate('yaml', `kubernetes deployment for ${app}`)
const feed = await generate('rss', `feed for ${posts}`)

Schema Syntax

SyntaxTypeExample
'description'stringname: 'User name'
'desc (number)'numberage: 'Age (number)'
'desc (boolean)'booleanactive: 'Active? (boolean)'
'opt1 | opt2'enumstatus: 'pending | done'
['description']arraytags: ['List of tags']
{ nested }objectaddress: { city: '...' }

Built-in Mappings

// Convenience functions use generate:
write(prompt)      → generate('text', prompt)
code(prompt)       → generate('code', prompt)
list(prompt)       → generate('list', prompt)
summarize(prompt)  → generate('summary', prompt)
diagram(prompt)    → generate('diagram', prompt)
Was this page helpful?

On this page