Loading...
    • 개발자 가이드
    • API 레퍼런스
    • MCP
    • 리소스
    • 릴리스 노트
    Search...
    ⌘K
    시작하기
    Claude 소개빠른 시작
    모델 및 가격
    모델 개요모델 선택Claude 4.6의 새로운 기능마이그레이션 가이드모델 지원 중단가격
    Claude로 구축하기
    기능 개요Messages API 사용중지 사유 처리프롬프트 모범 사례
    모델 기능
    확장 사고적응형 사고노력도빠른 모드 (연구 프리뷰)구조화된 출력인용스트리밍 메시지배치 처리PDF 지원검색 결과다국어 지원임베딩비전
    도구
    개요도구 사용 구현 방법웹 검색 도구웹 페치 도구코드 실행 도구메모리 도구Bash 도구컴퓨터 사용 도구텍스트 편집기 도구
    도구 인프라
    도구 검색프로그래밍 방식 도구 호출세분화된 도구 스트리밍
    컨텍스트 관리
    컨텍스트 윈도우압축컨텍스트 편집프롬프트 캐싱토큰 카운팅
    파일 및 자산
    Files API
    Agent Skills
    개요빠른 시작모범 사례엔터프라이즈용 SkillsAPI에서 Skills 사용
    Agent SDK
    개요빠른 시작TypeScript SDKTypeScript V2 (프리뷰)Python SDK마이그레이션 가이드
    API에서 MCP 사용
    MCP 커넥터원격 MCP 서버
    서드파티 플랫폼의 Claude
    Amazon BedrockMicrosoft FoundryVertex AI
    프롬프트 엔지니어링
    개요프롬프트 생성기프롬프트 템플릿 사용프롬프트 개선기명확하고 직접적으로 작성하기예시 사용 (멀티샷 프롬프팅)Claude에게 생각하게 하기 (CoT)XML 태그 사용Claude에게 역할 부여 (시스템 프롬프트)복잡한 프롬프트 연결긴 컨텍스트 팁확장 사고 팁
    테스트 및 평가
    성공 기준 정의테스트 케이스 개발평가 도구 사용지연 시간 줄이기
    가드레일 강화
    환각 줄이기출력 일관성 높이기탈옥 방지스트리밍 거부프롬프트 유출 줄이기Claude 캐릭터 유지
    관리 및 모니터링
    Admin API 개요데이터 레지던시워크스페이스사용량 및 비용 APIClaude Code Analytics API제로 데이터 보존
    Console
    Log in
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Partners

    • Amazon Bedrock
    • Google Cloud's Vertex AI

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Help and security

    • Availability
    • Status
    • Support
    • Discord

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy
    모델 기능

    구조화된 출력

    에이전트 워크플로우에서 검증된 JSON 결과 얻기

    구조화된 출력은 Claude의 응답이 특정 스키마를 따르도록 제한하여, 다운스트림 처리를 위한 유효하고 파싱 가능한 출력을 보장합니다. 두 가지 보완적인 기능을 사용할 수 있습니다:

    • JSON 출력 (output_config.format): Claude의 응답을 특정 JSON 형식으로 받기
    • 엄격한 도구 사용 (strict: true): 도구 이름 및 입력에 대한 스키마 검증 보장

    이러한 기능은 동일한 요청에서 독립적으로 또는 함께 사용할 수 있습니다.

    구조화된 출력은 Claude Opus 4.6, Claude Sonnet 4.6, Claude Sonnet 4.5, Claude Opus 4.5, Claude Haiku 4.5에 대해 Claude API 및 Amazon Bedrock에서 일반적으로 사용 가능합니다. 구조화된 출력은 Microsoft Foundry에서 공개 베타로 유지됩니다.

    This feature qualifies for Zero Data Retention (ZDR) with limited technical retention. See the Data retention section for details on what is retained and why.

    베타에서 마이그레이션하시나요? output_format 파라미터가 output_config.format으로 이동했으며, 베타 헤더는 더 이상 필요하지 않습니다. 이전 베타 헤더(structured-outputs-2025-11-13)와 output_format 파라미터는 전환 기간 동안 계속 작동합니다. 업데이트된 API 형태는 아래 코드 예제를 참조하세요.

    구조화된 출력을 사용하는 이유

    구조화된 출력 없이는 Claude가 잘못된 형식의 JSON 응답이나 유효하지 않은 도구 입력을 생성하여 애플리케이션을 중단시킬 수 있습니다. 신중한 프롬프팅을 사용하더라도 다음과 같은 문제가 발생할 수 있습니다:

    • 유효하지 않은 JSON 구문으로 인한 파싱 오류
    • 필수 필드 누락
    • 일관성 없는 데이터 타입
    • 오류 처리 및 재시도가 필요한 스키마 위반

    구조화된 출력은 제약된 디코딩을 통해 스키마 준수 응답을 보장합니다:

    • 항상 유효: 더 이상 JSON.parse() 오류 없음
    • 타입 안전: 보장된 필드 타입 및 필수 필드
    • 신뢰성: 스키마 위반으로 인한 재시도 불필요

    JSON 출력

    JSON 출력은 Claude의 응답 형식을 제어하여, Claude가 스키마와 일치하는 유효한 JSON을 반환하도록 보장합니다. 다음과 같은 경우에 JSON 출력을 사용하세요:

    • Claude의 응답 형식 제어
    • 이미지 또는 텍스트에서 데이터 추출
    • 구조화된 보고서 생성
    • API 응답 형식 지정

    빠른 시작

    curl https://api.anthropic.com/v1/messages \
      -H "content-type: application/json" \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -d '{
        "model": "claude-opus-4-6",
        "max_tokens": 1024,
        "messages": [
          {
            "role": "user",
            "content": "Extract the key information from this email: John Smith ([email protected]) is interested in our Enterprise plan and wants to schedule a demo for next Tuesday at 2pm."
          }
        ],
        "output_config": {
          "format": {
            "type": "json_schema",
            "schema": {
              "type": "object",
              "properties": {
                "name": {"type": "string"},
                "email": {"type": "string"},
                "plan_interest": {"type": "string"},
                "demo_requested": {"type": "boolean"}
              },
              "required": ["name", "email", "plan_interest", "demo_requested"],
              "additionalProperties": false
            }
          }
        }
      }'

    응답 형식: response.content[0].text에서 스키마와 일치하는 유효한 JSON

    {
      "name": "John Smith",
      "email": "[email protected]",
      "plan_interest": "Enterprise",
      "demo_requested": true
    }

    작동 방식

    1. 1

      JSON 스키마 정의

      Claude가 따르길 원하는 구조를 설명하는 JSON 스키마를 만드세요. 스키마는 일부 제한 사항이 있는 표준 JSON Schema 형식을 사용합니다(JSON 스키마 제한 사항 참조).

    2. 2

      output_config.format 파라미터 추가

      type: "json_schema" 및 스키마 정의와 함께 API 요청에 output_config.format 파라미터를 포함하세요.

    3. 3

      응답 파싱

      Claude의 응답은 스키마와 일치하는 유효한 JSON이며, response.content[0].text에 반환됩니다.

    SDK에서 JSON 출력 작업하기

    SDK는 스키마 변환, 자동 유효성 검사, 인기 있는 스키마 라이브러리와의 통합을 포함하여 JSON 출력 작업을 더 쉽게 만드는 헬퍼를 제공합니다.

    SDK 헬퍼 메서드(.parse() 및 Pydantic/Zod 통합 등)는 편의 파라미터로 output_format을 여전히 허용합니다. SDK는 내부적으로 output_config.format으로의 변환을 처리합니다. 아래 예제는 SDK 헬퍼 구문을 보여줍니다.

    네이티브 스키마 정의 사용하기

    원시 JSON 스키마를 직접 작성하는 대신, 사용하는 언어에서 익숙한 스키마 정의 도구를 사용할 수 있습니다:

    • Python: client.messages.parse()와 함께 Pydantic 모델 사용
    • TypeScript: zodOutputFormat()과 함께 Zod 스키마 사용
    • Java: outputFormat(Class<T>)를 통한 자동 스키마 파생이 있는 일반 Java 클래스
    • Ruby: output_config: {format: Model}과 함께 Anthropic::BaseModel 클래스 사용
    • C#, Go, PHP: output_config를 통해 전달되는 원시 JSON 스키마
    from pydantic import BaseModel
    from anthropic import Anthropic
    
    
    class ContactInfo(BaseModel):
        name: str
        email: str
        plan_interest: str
        demo_requested: bool
    
    
    client = Anthropic()
    
    response = client.messages.parse(
        model="claude-opus-4-6",
        max_tokens=1024,
        messages=[
            {
                "role": "user",
                "content": "Extract the key information from this email: John Smith ([email protected]) is interested in our Enterprise plan and wants to schedule a demo for next Tuesday at 2pm.",
            }
        ],
        output_format=ContactInfo,
    )
    
    print(response.parsed_output)

    SDK별 메서드

    각 SDK는 구조화된 출력 작업을 더 쉽게 만드는 헬퍼를 제공합니다. 자세한 내용은 개별 SDK 페이지를 참조하세요.

    SDK 변환 작동 방식

    Python 및 TypeScript SDK는 지원되지 않는 기능이 있는 스키마를 자동으로 변환합니다:

    1. 지원되지 않는 제약 조건 제거 (예: minimum, maximum, minLength, maxLength)
    2. 제약 조건 정보로 설명 업데이트 (예: "최소 100이어야 합니다"), 구조화된 출력에서 제약 조건이 직접 지원되지 않는 경우
    3. 모든 객체에 additionalProperties: false 추가
    4. 문자열 형식을 지원되는 목록으로만 필터링
    5. 원래 스키마에 대해 응답 유효성 검사 (모든 제약 조건 포함)

    이는 Claude가 단순화된 스키마를 받지만, 코드는 유효성 검사를 통해 모든 제약 조건을 여전히 적용한다는 것을 의미합니다.

    예시: minimum: 100이 있는 Pydantic 필드는 전송된 스키마에서 일반 정수가 되지만, 설명이 "최소 100이어야 합니다"로 업데이트되고 SDK는 원래 제약 조건에 대해 응답을 유효성 검사합니다.

    일반적인 사용 사례

    엄격한 도구 사용

    엄격한 도구 사용은 도구 파라미터를 유효성 검사하여 Claude가 올바르게 타입이 지정된 인수로 함수를 호출하도록 보장합니다. 다음과 같은 경우에 엄격한 도구 사용을 사용하세요:

    • 도구 파라미터 유효성 검사
    • 에이전트 워크플로우 구축
    • 타입 안전 함수 호출 보장
    • 중첩된 속성이 있는 복잡한 도구 처리

    에이전트에 엄격한 도구 사용이 중요한 이유

    신뢰할 수 있는 에이전트 시스템을 구축하려면 스키마 준수가 보장되어야 합니다. 엄격 모드 없이는 Claude가 호환되지 않는 타입(2 대신 "2")이나 누락된 필수 필드를 반환하여 함수를 중단시키고 런타임 오류를 발생시킬 수 있습니다.

    엄격한 도구 사용은 타입 안전 파라미터를 보장합니다:

    • 함수는 매번 올바르게 타입이 지정된 인수를 받습니다
    • 도구 호출을 유효성 검사하고 재시도할 필요가 없습니다
    • 대규모로 일관되게 작동하는 프로덕션 준비 에이전트

    예를 들어, 예약 시스템에 passengers: int가 필요하다고 가정합니다. 엄격 모드 없이는 Claude가 passengers: "two" 또는 passengers: "2"를 제공할 수 있습니다. strict: true를 사용하면 응답에 항상 passengers: 2가 포함됩니다.

    빠른 시작

    curl https://api.anthropic.com/v1/messages \
      -H "content-type: application/json" \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -d '{
        "model": "claude-opus-4-6",
        "max_tokens": 1024,
        "messages": [
          {"role": "user", "content": "What is the weather in San Francisco?"}
        ],
        "tools": [{
          "name": "get_weather",
          "description": "Get the current weather in a given location",
          "strict": true,
          "input_schema": {
            "type": "object",
            "properties": {
              "location": {
                "type": "string",
                "description": "The city and state, e.g. San Francisco, CA"
              },
              "unit": {
                "type": "string",
                "enum": ["celsius", "fahrenheit"]
              }
            },
            "required": ["location"],
            "additionalProperties": false
          }
        }]
      }'

    응답 형식: response.content[x].input에 유효성 검사된 입력이 있는 도구 사용 블록

    {
      "type": "tool_use",
      "name": "get_weather",
      "input": {
        "location": "San Francisco, CA"
      }
    }

    보장 사항:

    • 도구 input은 input_schema를 엄격하게 따릅니다
    • 도구 name은 항상 유효합니다 (제공된 도구 또는 서버 도구에서)

    작동 방식

    1. 1

      도구 스키마 정의

      도구의 input_schema에 대한 JSON 스키마를 생성합니다. 스키마는 일부 제한 사항이 있는 표준 JSON Schema 형식을 사용합니다(JSON Schema 제한 사항 참조).

    2. 2

      strict: true 추가

      도구 정의에서 name, description, input_schema와 함께 최상위 속성으로 "strict": true를 설정합니다.

    3. 3

      도구 호출 처리

      Claude가 도구를 사용할 때, tool_use 블록의 input 필드는 input_schema를 엄격하게 따르며, name은 항상 유효합니다.

    일반적인 사용 사례

    두 기능을 함께 사용하기

    JSON 출력과 엄격한 도구 사용은 서로 다른 문제를 해결하며 함께 사용할 수 있습니다:

    • JSON 출력은 Claude의 응답 형식을 제어합니다 (Claude가 말하는 내용)
    • 엄격한 도구 사용은 도구 매개변수를 검증합니다 (Claude가 함수를 호출하는 방식)

    결합하면 Claude는 보장된 유효 매개변수로 도구를 호출하고 구조화된 JSON 응답을 반환할 수 있습니다. 이는 신뢰할 수 있는 도구 호출과 구조화된 최종 출력이 모두 필요한 에이전트 워크플로에 유용합니다.

    response = client.messages.create(
        model="claude-opus-4-6",
        max_tokens=1024,
        messages=[
            {"role": "user", "content": "Help me plan a trip to Paris for next month"}
        ],
        # JSON outputs: structured response format
        output_config={
            "format": {
                "type": "json_schema",
                "schema": {
                    "type": "object",
                    "properties": {
                        "summary": {"type": "string"},
                        "next_steps": {"type": "array", "items": {"type": "string"}},
                    },
                    "required": ["summary", "next_steps"],
                    "additionalProperties": False,
                },
            }
        },
        # Strict tool use: guaranteed tool parameters
        tools=[
            {
                "name": "search_flights",
                "strict": True,
                "input_schema": {
                    "type": "object",
                    "properties": {
                        "destination": {"type": "string"},
                        "date": {"type": "string", "format": "date"},
                    },
                    "required": ["destination", "date"],
                    "additionalProperties": False,
                },
            }
        ],
    )

    중요한 고려 사항

    문법 컴파일 및 캐싱

    구조화된 출력은 컴파일된 문법 아티팩트를 사용한 제약 샘플링을 사용합니다. 이로 인해 알아야 할 몇 가지 성능 특성이 있습니다:

    • 첫 번째 요청 지연: 특정 스키마를 처음 사용할 때 문법이 컴파일되는 동안 추가 지연이 발생합니다
    • 자동 캐싱: 컴파일된 문법은 마지막 사용 후 24시간 동안 캐시되어 이후 요청이 훨씬 빠릅니다
    • 캐시 무효화: 다음을 변경하면 캐시가 무효화됩니다:
      • JSON 스키마 구조
      • 요청의 도구 집합 (구조화된 출력과 도구 사용을 모두 사용할 때)
      • name 또는 description 필드만 변경하면 캐시가 무효화되지 않습니다

    프롬프트 수정 및 토큰 비용

    구조화된 출력을 사용할 때 Claude는 예상 출력 형식을 설명하는 추가 시스템 프롬프트를 자동으로 받습니다. 이는 다음을 의미합니다:

    • 입력 토큰 수가 약간 높아집니다
    • 주입된 프롬프트는 다른 시스템 프롬프트와 마찬가지로 토큰 비용이 발생합니다
    • output_config.format 매개변수를 변경하면 해당 대화 스레드의 프롬프트 캐시가 무효화됩니다

    JSON 스키마 제한 사항

    구조화된 출력은 일부 제한이 있는 표준 JSON 스키마를 지원합니다. JSON 출력과 엄격한 도구 사용 모두 이러한 제한을 공유합니다.

    Python 및 TypeScript SDK는 지원되지 않는 기능이 있는 스키마를 자동으로 변환하여 해당 기능을 제거하고 필드 설명에 제약 조건을 추가할 수 있습니다. 자세한 내용은 SDK별 메서드를 참조하세요.

    속성 순서

    구조화된 출력을 사용할 때 객체의 속성은 스키마에서 정의된 순서를 유지하지만, 한 가지 중요한 주의 사항이 있습니다: 필수 속성이 먼저 나타나고 선택적 속성이 그 뒤에 옵니다.

    예를 들어, 다음 스키마가 주어진 경우:

    {
      "type": "object",
      "properties": {
        "notes": { "type": "string" },
        "name": { "type": "string" },
        "email": { "type": "string" },
        "age": { "type": "integer" }
      },
      "required": ["name", "email"],
      "additionalProperties": false
    }

    출력은 다음과 같이 속성을 정렬합니다:

    1. name (필수, 스키마 순서)
    2. email (필수, 스키마 순서)
    3. notes (선택적, 스키마 순서)
    4. age (선택적, 스키마 순서)

    즉, 출력은 다음과 같이 보일 수 있습니다:

    {
      "name": "John Smith",
      "email": "[email protected]",
      "notes": "Interested in enterprise plan",
      "age": 35
    }

    출력의 속성 순서가 애플리케이션에 중요한 경우, 모든 속성을 필수로 표시하거나 파싱 로직에서 이 재정렬을 고려하세요.

    유효하지 않은 출력

    구조화된 출력은 대부분의 경우 스키마 준수를 보장하지만, 출력이 스키마와 일치하지 않을 수 있는 시나리오가 있습니다:

    거부 (stop_reason: "refusal")

    Claude는 구조화된 출력을 사용할 때도 안전성과 유용성 속성을 유지합니다. Claude가 안전상의 이유로 요청을 거부하는 경우:

    • 응답에 stop_reason: "refusal"이 포함됩니다
    • 200 상태 코드를 받습니다
    • 생성된 토큰에 대해 청구됩니다
    • 거부 메시지가 스키마 제약 조건보다 우선하기 때문에 출력이 스키마와 일치하지 않을 수 있습니다

    토큰 한도 도달 (stop_reason: "max_tokens")

    max_tokens 한도에 도달하여 응답이 중단된 경우:

    • 응답에 stop_reason: "max_tokens"이 포함됩니다
    • 출력이 불완전하여 스키마와 일치하지 않을 수 있습니다
    • 완전한 구조화된 출력을 얻으려면 더 높은 max_tokens 값으로 재시도하세요

    스키마 복잡성 한도

    구조화된 출력은 JSON 스키마를 Claude의 출력을 제약하는 문법으로 컴파일하여 작동합니다. 더 복잡한 스키마는 컴파일하는 데 더 오래 걸리는 더 큰 문법을 생성합니다. 과도한 컴파일 시간을 방지하기 위해 API는 여러 복잡성 한도를 적용합니다.

    명시적 한도

    다음 한도는 output_config.format 또는 strict: true가 있는 모든 요청에 적용됩니다:

    한도값설명
    요청당 엄격한 도구 수20strict: true가 있는 최대 도구 수. 비엄격 도구는 이 한도에 포함되지 않습니다.
    선택적 매개변수24모든 엄격한 도구 스키마와 JSON 출력 스키마에 걸친 총 선택적 매개변수 수. required에 나열되지 않은 각 매개변수가 이 한도에 포함됩니다.
    유니온 유형이 있는 매개변수16모든 엄격한 스키마에 걸쳐 anyOf 또는 유형 배열 (예: "type": ["string", "null"])을 사용하는 총 매개변수 수. 이는 지수적 컴파일 비용을 생성하기 때문에 특히 비용이 많이 듭니다.

    이러한 한도는 단일 요청의 모든 엄격한 스키마에 걸친 합산 총계에 적용됩니다. 예를 들어, 각각 6개의 선택적 매개변수가 있는 4개의 엄격한 도구가 있는 경우, 단일 도구가 복잡해 보이지 않더라도 24개 매개변수 한도에 도달합니다.

    추가 내부 한도

    위의 명시적 한도 외에도 컴파일된 문법 크기에 대한 추가 내부 한도가 있습니다. 이러한 한도는 스키마 복잡성이 단일 차원으로 줄어들지 않기 때문에 존재합니다: 선택적 매개변수, 유니온 유형, 중첩된 객체, 도구 수와 같은 기능들이 서로 상호 작용하여 컴파일된 문법을 불균형적으로 크게 만들 수 있습니다.

    이러한 한도를 초과하면 "Schema is too complex for compilation."이라는 메시지와 함께 400 오류가 발생합니다. 이러한 오류는 위의 각 개별 한도가 충족되더라도 스키마의 결합된 복잡성이 효율적으로 컴파일할 수 있는 수준을 초과함을 의미합니다. 최후의 안전장치로 API는 180초의 컴파일 타임아웃도 적용합니다. 모든 명시적 검사를 통과하지만 매우 큰 컴파일된 문법을 생성하는 스키마는 이 타임아웃에 도달할 수 있습니다.

    스키마 복잡성 줄이기 위한 팁

    복잡성 한도에 도달하는 경우 다음 전략을 순서대로 시도해 보세요:

    1. 중요한 도구만 엄격하게 표시하세요. 도구가 많은 경우 스키마 위반이 실제 문제를 일으키는 도구에만 예약하고, 더 단순한 도구에는 Claude의 자연스러운 준수에 의존하세요.

    2. 선택적 매개변수를 줄이세요. 가능한 경우 매개변수를 required로 만드세요. 각 선택적 매개변수는 문법의 상태 공간의 일부를 대략 두 배로 만듭니다. 매개변수에 항상 합리적인 기본값이 있는 경우, 필수로 만들고 Claude가 해당 기본값을 명시적으로 제공하도록 고려하세요.

    3. 중첩된 구조를 단순화하세요. 선택적 필드가 있는 깊이 중첩된 객체는 복잡성을 복합적으로 증가시킵니다. 가능한 경우 구조를 평탄화하세요.

    4. 여러 요청으로 분할하세요. 엄격한 도구가 많은 경우 별도의 요청이나 하위 에이전트로 분할하는 것을 고려하세요.

    유효한 스키마에 대한 지속적인 문제의 경우 스키마 정의와 함께 지원팀에 문의하세요.

    데이터 보존

    구조화된 출력을 사용할 때 프롬프트와 응답은 ZDR로 처리됩니다. 그러나 JSON 스키마 자체는 최적화 목적으로 마지막 사용 후 최대 24시간 동안 임시로 캐시됩니다. 프롬프트나 응답 데이터는 API 응답 이후에는 보존되지 않습니다.

    모든 기능에 걸친 ZDR 적격성에 대해서는 API 및 데이터 보존을 참조하세요.

    기능 호환성

    다음과 함께 작동합니다:

    • 배치 처리: 50% 할인으로 대규모 구조화된 출력 처리
    • 토큰 계산: 컴파일 없이 토큰 계산
    • 스트리밍: 일반 응답처럼 구조화된 출력 스트리밍
    • 결합 사용: 동일한 요청에서 JSON 출력 (output_config.format)과 엄격한 도구 사용 (strict: true)을 함께 사용

    다음과 호환되지 않습니다:

    • 인용: 인용은 텍스트와 인용 블록을 인터리빙해야 하므로 엄격한 JSON 스키마 제약 조건과 충돌합니다. output_config.format과 함께 인용이 활성화된 경우 400 오류를 반환합니다.
    • 메시지 프리필링: JSON 출력과 호환되지 않습니다

    문법 범위: 문법은 Claude의 직접 출력에만 적용되며, 도구 사용 호출, 도구 결과 또는 사고 태그 (확장된 사고 사용 시)에는 적용되지 않습니다. 문법 상태는 섹션 간에 재설정되어 Claude가 자유롭게 생각하면서도 최종 응답에서 구조화된 출력을 생성할 수 있습니다.

    Was this page helpful?

    • JSON 출력
    • SDK에서 JSON 출력 작업하기
    • JSON 스키마 제한 사항