`jsonSchema()`
jsonSchema()
jsonSchema는 AI SDK와 호환되는 JSON 스키마 객체를 만드는 헬퍼 함수입니다. JSON 스키마와 선택적 검증 함수를 입력으로 받으며 타입을 지정할 수 있습니다. 구조화된 데이터 생성과 툴에서 사용할 수 있습니다.
jsonSchema는 Zod 스키마의 대안으로, 동적 상황(예: OpenAPI 정의 사용 시)이나 다른 검증 라이브러리를 사용할 때 유연성을 제공합니다.
출처: 문서
본문
import { jsonSchema } from 'ai';
const mySchema = jsonSchema<{
recipe: {
name: string;
ingredients: { name: string; amount: string }[];
steps: string[];
};
}>({
type: 'object',
properties: {
recipe: {
type: 'object',
properties: {
name: { type: 'string' },
ingredients: {
type: 'array',
items: {
type: 'object',
properties: {
name: { type: 'string' },
amount: { type: 'string' },
},
required: ['name', 'amount'],
},
},
steps: {
type: 'array',
items: { type: 'string' },
},
},
required: ['name', 'ingredients', 'steps'],
},
},
required: ['recipe'],
});
Import
import { jsonSchema } from "ai"
API Signature
Parameters (파라미터)
schema:JSONSchema7— JSON 스키마 정의입니다.options:SchemaOptions— JSON 스키마의 추가 옵션입니다.validate:(value: unknown) => { success: true; value: OBJECT } | { success: false; error: Error }(선택) — JSON 스키마에 대해 값을 검증하는 함수입니다. 값이 유효하면success속성이true이고value속성이 검증된 값인 객체를 반환해야 합니다. 값이 유효하지 않으면success속성이false이고error속성이 오류인 객체를 반환해야 합니다.
Returns (반환값)
AI SDK와 호환되는 JSON 스키마 객체를 반환합니다.