import { Agent } from "@ai_kit/core";
import { Output } from "@ai_kit/core/agents";
import { z } from "zod";
import { openaiProvider } from "@ai-sdk/openai";
const siretOutput = Output.object({
schema: z.object({
siret: z.string().length(14, "Le SIRET doit contenir 14 chiffres."),
}),
});
const assistantSiret = new Agent({
name: "assistant_siret",
instructions:
"Tu trouves le SIRET des entreprises en combinant recherche web et registres.",
model: openaiProvider("gpt-4.1-mini"),
tools: {
web_search: openaiProvider.tools.webSearch({}),
},
toon: true, // TOON activé par défaut sur generate()
});
const result = await assistantSiret.generate({
prompt:
'Trouve le SIRET d’« Aidalinfo ». Retourne uniquement l’ID de 14 chiffres sous forme de chaîne.',
structuredOutput: siretOutput,
});
console.log(result.experimental_output);
// -> { siret: "38347481400100" }