Skip to main content
What this builds. A vendor table whose schema is seeded with three typed columns (vendor: StringFormat, amount: NumberFormat(currency), status: SingleSelectFormat), evolved with add_column / rename_column / delete_column, and finally extended with two AI-generated columns — one filled by a Pipeline, one by an Agent. You’ll end up with. A working pattern for both the static-schema and AI-fill paths, including a run_and_wait(...) call that triggers the generators on the rows you’ve inserted.

Stage 1 — seed a typed schema

Stage 2 — evolve the schema

Stage 3 — add an AI-filled column backed by a Pipeline

A PipelineGenerator on a ColumnSpec binds a pipeline to that column. When you call table.run(columns=[...]), VectorShift runs the pipeline once per row, reading inputs from the other columns and writing the named output into the cell.

Stage 4 — add an AI-filled column backed by an Agent

An AgentGenerator swaps the pipeline for a conversational Agent, with optional KnowledgeBase retrieval context. Same run / run_and_wait flow.
input_mapping direction. Keys are the Pipeline/Agent input names; values are the table-column names read for each row. So {"vendor_name": "vendor"} means “send the value of the vendor column into the vendor_name input.”
This example assumes vendor-summarizer, vendor-risk-reviewer, and vendor-policies already exist in your account. Build them via the Pipeline / Agent / Knowledge Base SDKs (or the platform UI) first, or swap the names for objects you already have.

See also

ColumnFormat reference

Every format variant and its fields.

Generators in the overview

The mental model for AI-filled columns.

Aggregation + run

The polling shape of run / run_and_wait.