Skip to content

AIDK API Reference / aidk-ai-sdk / AiSdkCompiler

Class: AiSdkCompiler ​

Defined in: packages/adapters/ai-sdk/src/compiler.ts:432

AI SDK Compiler.

Provides progressive adoption from simple compilation to full execution management.

Examples ​

typescript
const compiler = createCompiler();

const result = await compiler.run(<MyAgent />, async (input) => {
  return await generateText({ model: openai('gpt-4o'), ...input });
});
typescript
const compiler = createCompiler({ model: openai('gpt-4o') });
const result = await compiler.run(<MyAgent />);
typescript
const compiler = createCompiler({ model: openai('gpt-4o') });
const result = await compiler.generateText(<MyAgent />, { temperature: 0.8 });

Constructors ​

Constructor ​

ts
new AiSdkCompiler(config: CompilerConfig): AiSdkCompiler;

Defined in: packages/adapters/ai-sdk/src/compiler.ts:440

Parameters ​

ParameterType
configCompilerConfig

Returns ​

AiSdkCompiler

Methods ​

destroy() ​

ts
destroy(): Promise<void>;

Defined in: packages/adapters/ai-sdk/src/compiler.ts:792

Returns ​

Promise<void>


run() ​

ts
run(
   jsx: Element, 
   executorOrMessages?: ModelMessage[] | Executor, 
   maybeExecutor?: Executor): Promise<GenerateTextResult<ToolSet, unknown>>;

Defined in: packages/adapters/ai-sdk/src/compiler.ts:568

Execute a JSX program.

If executor is provided (Level 2), user controls model execution. If not provided (Level 3), we manage execution using configured model.

Parameters ​

ParameterTypeDescription
jsxElementRoot JSX element
executorOrMessages?ModelMessage[] | ExecutorOptional executor function OR initial messages
maybeExecutor?ExecutorOptional executor (if second arg was messages)

Returns ​

Promise<GenerateTextResult<ToolSet, unknown>>


stream() ​

ts
stream(
   jsx: Element, 
   executorOrMessages?: ModelMessage[] | StreamExecutor, 
   maybeExecutor?: StreamExecutor): AsyncGenerator<CompilerStreamEvent>;

Defined in: packages/adapters/ai-sdk/src/compiler.ts:652

Execute a JSX program with streaming.

Parameters ​

ParameterTypeDescription
jsxElementRoot JSX element
executorOrMessages?ModelMessage[] | StreamExecutorOptional executor function OR initial messages
maybeExecutor?StreamExecutorOptional executor (if second arg was messages)

Returns ​

AsyncGenerator<CompilerStreamEvent>

Released under the MIT License.