콘텐츠로 이동

AI SDK로 어떤 모델이든 사용

기본적으로 Agents SDK는 Responses API 또는 Chat Completions API를 통해 OpenAI 모델과 작동합니다. 그러나 다른 모델을 사용하려면, 이 어댑터를 통해 Vercel’s AI SDK가 지원하는 다양한 모델을 Agents 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 합니다:

    import { openai } from '@ai-sdk/openai';
    import { aisdk } from '@openai/agents-extensions/ai-sdk';
  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?');

메시지와 함께 provider별 옵션을 보내야 하는 경우 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 앱을 참고하세요.