콘텐츠로 이동

AI SDK로 어떤 모델이든 사용

기본적으로 Agents SDK는 Responses API 또는 Chat Completions API를 통해 OpenAI 모델과 함께 작동합니다. 그러나 다른 모델을 사용하려면, 이 어댑터를 통해 Agents SDK에 통합할 수 있는 다양한 지원 모델을 제공하는 Vercel’s AI SDK를 사용할 수 있습니다.

  1. extensions 패키지를 설치하여 AI SDK 어댑터를 설치합니다:

    Terminal window
    npm install @openai/agents-extensions
  2. Vercel’s AI SDK에서 원하는 모델 패키지를 선택하여 설치합니다:

    Terminal window
    npm install @ai-sdk/openai
  3. 어댑터와 모델을 임포트하여 에이전트에 연결합니다:

    import { openai } from '@ai-sdk/openai';
    import { aisdk } from '@openai/agents-extensions';
  4. 에이전트가 사용할 모델 인스턴스를 초기화합니다:

    const model = aisdk(openai('gpt-5-mini'));
AI SDK Setup
import { Agent, run } from '@openai/agents';
// Import the model package you installed
import { openai } from '@ai-sdk/openai';
// Import the adapter
import { aisdk } from '@openai/agents-extensions';
// Create a model instance to be used by the agent
const model = aisdk(openai('gpt-5-mini'));
// Create an agent with the model
const agent = new Agent({
name: 'My Agent',
instructions: 'You are a helpful assistant.',
model,
});
// Run the agent with the new model
run(agent, 'What is the capital of Germany?');

메시지에 프로바이더별 옵션을 전송해야 하는 경우 providerMetadata를 통해 전달하세요. 값은 기본 AI SDK 모델로 직접 전달됩니다. 예를 들어, Agents SDK에서 다음과 같은 providerData

providerData: {
anthropic: {
cacheControl: {
type: 'ephemeral';
}
}
}

는 AI SDK 통합을 사용할 때

providerMetadata: {
anthropic: {
cacheControl: {
type: 'ephemeral';
}
}
}

로 변환됩니다.

@openai/agents-extensions/ai-sdk-ui는 Agents SDK 스트림을 AI SDK UI 라우트에 연결하기 위한 응답 헬퍼를 제공합니다:

  • 일반 텍스트 스트리밍 응답을 위한 createAiSdkTextStreamResponse(source, options?)
  • UIMessageChunk 스트리밍 응답을 위한 createAiSdkUiMessageStreamResponse(source, options?)

두 헬퍼는 StreamedRunResult, 스트림과 유사한 소스, 또는 호환되는 래퍼 객체를 받아 스트리밍에 적합한 헤더가 포함된 Response를 반환합니다.

엔드 투 엔드 사용 예시는 이 저장소의 examples/ai-sdk-ui 앱을 참고하세요.