For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
기본 탐색 메뉴
Theme

도구 사용하기

원격 MCP 서버나 웹 검색 같은 도구로 모델의 기능을 확장하세요.

모델 응답을 생성하거나 에이전트를 구축할 때 기본 제공 도구, 함수 호출, 프로그래밍 방식의 도구 호출, 도구 검색, 원격 MCP 서버를 사용해 모델의 기능을 확장할 수 있습니다. 모델은 이러한 기능으로 웹을 검색하거나 파일에서 정보를 가져오고, 필요할 때까지 로드를 미뤄 둔 도구 정의를 런타임에 불러올 수 있습니다. 개발자가 직접 정의한 함수를 호출하거나 JavaScript로 도구 호출을 조합하고 외부 서비스에 접근할 수도 있습니다. gpt-5.4 이상 모델만 tool_search를 지원합니다.

런타임에 맞는 통합 방식을 선택하세요. 도구는 Responses API 요청, Agents API 에이전트 또는 Agents SDK의 에이전트 정의에서 설정할 수 있습니다. 사용할 수 있는 도구와 설정 방법, 호출 처리 방식은 통합 방식에 따라 달라집니다. 아래 예제에서는 Responses API를 사용합니다.

모델 응답 생성에 웹 검색 결과 포함하기
import OpenAI from "openai";
const client = new OpenAI();

const response = await client.responses.create({
  model: "gpt-6-astra",
  tools: [{ type: "web_search" }],
  input: "What was a positive news story from today?",
});

console.log(response.output_text);

사용 가능한 도구

OpenAI 플랫폼에서 사용할 수 있는 도구는 다음과 같습니다. 자세한 사용법을 보려면 도구를 선택하세요.

함수 호출

직접 작성한 코드를 호출해 모델이 추가 데이터와 기능을 사용할 수 있게 합니다.

웹 검색

모델이 응답을 생성할 때 인터넷에서 찾은 데이터를 활용합니다.

원격 MCP 서버

Model Context Protocol(MCP) 서버를 연결해 모델이 새로운 기능을 사용할 수 있게 합니다.

스킬

호스팅 셸 환경에서 버전별로 관리되는 스킬 번들을 업로드하고 재사용합니다.

셸

호스팅 컨테이너나 자체 로컬 런타임에서 셸 명령어를 실행합니다.

컴퓨터 사용

모델이 컴퓨터 인터페이스를 직접 조작할 수 있는 에이전트 워크플로우를 만듭니다.

이미지 생성

GPT Image로 이미지를 생성하거나 편집합니다.

파일 검색

업로드한 파일의 내용을 검색해 응답 생성에 필요한 컨텍스트를 찾습니다.

도구 검색

관련 도구를 모델의 컨텍스트에 동적으로 불러와 토큰 사용량을 최적화합니다.

프로그래밍 방식의 도구 호출

모델이 도구 호출을 조율하는 JavaScript 코드를 작성하고 실행할 수 있게 합니다.

API에서 도구 사용하기

모델 응답 생성을 요청할 때는 일반적으로 tools 매개변수에 설정을 지정해 모델이 도구를 사용할 수 있게 합니다. 필요한 설정은 도구마다 다릅니다. 자세한 설정 방법은 사용 가능한 도구 섹션을 참고하세요.

모델은 입력받은 프롬프트를 바탕으로 설정된 도구를 사용할지 자동으로 결정합니다. 예를 들어 웹 검색이 활성화된 상태에서 모델의 학습 데이터 기준일 이후의 정보를 요청하면, 모델은 일반적으로 웹 검색 도구를 호출해 요청과 관련된 최신 정보를 가져옵니다.

일부 고급 워크플로우에서는 상호작용 중에 도구 정의를 추가로 불러올 수도 있습니다. 예를 들어 도구 검색을 사용하면 모델이 특정 함수가 필요하다고 판단할 때까지 해당 함수 정의를 불러오는 시점을 미룰 수 있습니다.

tool_choice 매개변수를 API 요청에 설정하면 모델의 도구 선택을 명시적으로 제어하거나 유도할 수 있습니다.

Agents API

Agents API는 에이전트 루프를 대신 실행합니다. agent.tools에서 도구를 설정하고 애플리케이션에서 함수 호출을 처리하세요. 도구에 실행 환경이 필요하면 샌드박스를 연결하세요.

애플리케이션 코드를 호출하려면 함수를, 도구 서버를 연결하려면 MCP 연결을 참고하세요. 도구에 실행 환경이 필요하면 샌드박스 설정을 참고하세요. 프로그래밍 방식의 도구 호출은 기본적으로 활성화되어 있습니다. 스킬은 샌드박스의 기능 디렉터리에서 자동으로 검색됩니다.

Agents SDK에서 도구 사용하기

Agents SDK에서도 도구의 동작 방식은 같습니다. 다만 개별 Responses API 요청에서 도구를 연결하는 대신 에이전트를 정의하고 워크플로우를 설계할 때 도구를 연결합니다.

  • 전문 에이전트가 도구를 직접 호출해야 한다면 호스팅 도구, 함수 도구 또는 호스팅 MCP 도구를 해당 에이전트에 직접 연결하세요.
  • 관리 에이전트가 사용자에게 전달할 답변을 계속 제어해야 한다면 전문 에이전트를 도구로 제공하세요.
  • SDK에서 도구 사용 결정을 모델링하더라도 셸, 패치 적용, 컴퓨터 사용을 위한 하네스는 자체 런타임에 두세요.
로컬 로직을 함수 도구로 감싸기
import { tool } from "@openai/agents";
import { z } from "zod";

const getWeatherTool = tool({
  name: "get_weather",
  description: "Get the weather for a given city.",
  parameters: z.object({ city: z.string() }),
  async execute({ city }) {
    return `The weather in ${city} is sunny.`;
  },
});
전문 에이전트를 도구로 제공하기
import { Agent } from "@openai/agents";

const summarizer = new Agent({
  name: "Summarizer",
  instructions: "Generate a concise summary of the supplied text.",
});

const mainAgent = new Agent({
  name: "Research assistant",
  tools: [
    summarizer.asTool({
      toolName: "summarize_text",
      toolDescription: "Generate a concise summary of the supplied text.",
    }),
  ],
});

전문 에이전트 하나를 설계할 때는 에이전트 정의를, 도구에 따라 작업을 담당하는 에이전트가 달라질 때는 오케스트레이션 및 핸드오프를 참고하세요. 도구가 승인 절차에 영향을 주는 경우에는 가드레일 및 사람의 검토를, MCP에서 제공하는 기능을 사용하는 경우에는 통합 및 관측 가능성을 참고하세요.