AI Fields
Seven field types compute their value with an LLM from one or more sourceFields. All share the base field properties and a common set of AI controls.
| Type | Produces |
|---|---|
ai-generate |
Free-form generated text from a prompt template. |
ai-summary |
A summary of the source fields. |
ai-categorize |
A single category chosen from a predefined list. |
ai-extract |
Structured data matching a JSON Schema. |
ai-sentiment |
Sentiment analysis of the source text. |
ai-tag |
Multiple tags chosen from an allow-list. |
ai-translate |
A translation of one source field into a target language. |
Common AI Properties
Most AI fields accept these shared properties (in addition to their type-specific ones):
| Property | Description |
|---|---|
sourceFields |
Required. Field names used as input context. At least one (exactly one for ai-translate). |
prompt |
Custom prompt to guide the AI. ai-generate uses a {{fieldName}} template; others fall back to a sensible default when omitted. |
systemPrompt |
System prompt setting the AI persona and context. |
model |
AI model override (e.g. gpt-4o, claude-sonnet). Non-empty string. |
temperature |
Output creativity, 0 to 1. |
ai-generate
Generates free-form text from a prompt template.
| Property | Description |
|---|---|
prompt |
Prompt template with {{fieldName}} variable substitution. (Recommended for generate fields.) |
- id: 1
name: marketing_copy
type: ai-generate
sourceFields: [product_name, features]
prompt: 'Write a compelling 2-paragraph marketing description for {{product_name}}. Key features: {{features}}.'
ai-summary
Summarizes the source fields. Uses a default "Summarize the following" prompt when prompt is omitted.
- { id: 2, name: ticket_summary, type: ai-summary, sourceFields: [body, thread] }
ai-categorize
Classifies the source into exactly one of a fixed category list.
| Property | Description |
|---|---|
categories |
Required. Predefined categories the AI must choose from. Minimum 2, no duplicates. |
- {
id: 3,
name: ticket_category,
type: ai-categorize,
sourceFields: [subject, body],
categories: [billing, technical, account, general],
}
ai-extract
Extracts structured data described by a JSON Schema. Supports nested objects and arrays.
| Property | Description |
|---|---|
schema |
Required. JSON Schema object describing the structure of the extracted data. |
- id: 4
name: invoice_data
type: ai-extract
sourceFields: [raw_text]
schema:
type: object
properties:
vendor_name: { type: string, description: Name of the vendor }
total_amount: { type: number, description: Total amount due }
ai-sentiment
Analyzes sentiment of the source text. prompt can adjust the focus (e.g. urgency, satisfaction).
- { id: 5, name: review_sentiment, type: ai-sentiment, sourceFields: [review_text] }
ai-tag
Assigns multiple tags from a predefined allow-list.
| Property | Description |
|---|---|
tags |
Required. Allowed tags the AI may assign. Minimum 2, no duplicates. |
maxTags |
Maximum number of tags to assign (positive integer). No limit when omitted. |
- {
id: 6,
name: article_tags,
type: ai-tag,
sourceFields: [title, body],
tags: [technology, business, science, health, politics],
maxTags: 3,
}
ai-translate
Translates one source field into a target language.
| Property | Description |
|---|---|
sourceFields |
Required. Exactly one field name. |
targetLanguage |
Required. ISO 639-1 language code, optionally region-suffixed (e.g. fr, es, ja, zh-CN). |
prompt |
Custom prompt to control translation tone, formality, and style. |
- {
id: 7,
name: description_fr,
type: ai-translate,
sourceFields: [description],
targetLanguage: fr,
}
AI provider routing. AI fields route through Sovrium's provider-precedence resolver (env-controlled, local-first by default). The optional model property overrides the default model for that field. The connecting role still gates execution wherever the table is exposed via the MCP server.
Last updated July 12, 2026