이 가이드는 Claude에서 이미지를 다루는 방법, 모범 사례, 코드 예제 및 염두에 두어야 할 제한 사항을 설명합니다.


비전 기능 사용 방법

다음을 통해 Claude의 비전 기능을 사용하세요:

  • claude.ai. 파일처럼 이미지를 업로드하거나 채팅 창에 이미지를 직접 끌어다 놓으세요.
  • Console Workbench. 이미지를 허용하는 모델(Claude 3 및 4 모델만 해당)을 선택하면 모든 사용자 메시지 블록의 오른쪽 상단에 이미지를 추가하는 버튼이 나타납니다.
  • API 요청. 이 가이드의 예제를 참조하세요.

업로드 전 알아두기

기본 사항 및 제한

하나의 요청에 여러 이미지를 포함할 수 있습니다(claude.ai의 경우 최대 20개, API 요청의 경우 최대 100개). Claude는 응답을 작성할 때 제공된 모든 이미지를 분석합니다. 이는 이미지를 비교하거나 대조할 때 유용할 수 있습니다.

8000x8000 픽셀보다 큰 이미지를 제출하면 거부됩니다. 하나의 API 요청에 20개 이상의 이미지를 제출하는 경우 이 제한은 2000x2000 픽셀입니다.

이미지 크기 평가

최적의 성능을 위해 이미지가 너무 큰 경우 업로드 전에 크기를 조정하는 것이 좋습니다. 이미지의 긴 쪽이 1568픽셀 이상이거나 이미지가 약 1,600 토큰 이상인 경우, 먼저 종횡비를 유지하면서 크기 제한 내로 축소됩니다.

입력 이미지가 너무 크고 크기 조정이 필요한 경우, 모델 성능을 추가로 향상시키지 않으면서 첫 토큰까지의 시간의 지연이 증가합니다. 한 쪽이 200픽셀 미만인 매우 작은 이미지는 성능이 저하될 수 있습니다.

첫 토큰까지의 시간을 개선하려면 이미지 크기를 1.15 메가픽셀 이하(두 차원 모두 1568픽셀 이내)로 조정하는 것이 좋습니다.

다음은 API에서 허용되는 일반적인 종횡비에 대해 크기 조정되지 않는 최대 이미지 크기 표입니다. Claude Sonnet 3.7 모델에서 이러한 이미지는 약 1,600 토큰을 사용하며 이미지 1,000개당 약 $4.80의 비용이 듭니다.

종횡비이미지 크기
1:11092x1092 px
3:4951x1268 px
2:3896x1344 px
9:16819x1456 px
1:2784x1568 px

이미지 비용 계산

Claude에 포함하는 각 이미지는 토큰 사용량에 포함됩니다. 대략적인 비용을 계산하려면 대략적인 이미지 토큰 수에 사용 중인 모델의 토큰당 가격을 곱하세요.

이미지 크기 조정이 필요하지 않은 경우 다음 알고리즘을 통해 사용된 토큰 수를 추정할 수 있습니다: 토큰 = (너비 px * 높이 px)/750

다음은 Claude Sonnet 3.7의 토큰당 가격인 백만 입력 토큰당 $3를 기준으로 API 크기 제한 내에서 다양한 이미지 크기에 대한 대략적인 토큰화 및 비용의 예입니다:

이미지 크기토큰 수이미지당 비용이미지 1,000개당 비용
200x200 px(0.04 메가픽셀)~54~$0.00016~$0.16
1000x1000 px(1 메가픽셀)~1334~$0.004~$4.00
1092x1092 px(1.19 메가픽셀)~1590~$0.0048~$4.80

이미지 품질 보장

Claude에 이미지를 제공할 때 최상의 결과를 위해 다음 사항을 고려하세요:

  • 이미지 형식: 지원되는 이미지 형식을 사용하세요: JPEG, PNG, GIF 또는 WebP.
  • 이미지 선명도: 이미지가 선명하고 너무 흐릿하거나 픽셀화되지 않도록 하세요.
  • 텍스트: 이미지에 중요한 텍스트가 포함된 경우 읽기 쉽고 너무 작지 않은지 확인하세요. 텍스트를 확대하기 위해 중요한 시각적 맥락을 잘라내지 마세요.

프롬프트 예제

Claude와의 텍스트 기반 상호작용에 잘 작동하는 많은 프롬프트 기법은 이미지 기반 프롬프트에도 적용할 수 있습니다.

이 예제들은 이미지와 관련된 모범 사례 프롬프트 구조를 보여줍니다.

문서-쿼리 배치와 마찬가지로 Claude는 텍스트 앞에 이미지가 오는 경우 가장 잘 작동합니다. 텍스트 뒤에 배치되거나 텍스트와 혼합된 이미지도 여전히 잘 작동하지만, 사용 사례가 허용한다면 이미지-텍스트 구조를 권장합니다.

프롬프트 예제 정보

다음 예제는 다양한 프로그래밍 언어와 접근 방식을 사용하여 Claude의 비전 기능을 사용하는 방법을 보여줍니다. Claude에 이미지를 제공하는 세 가지 방법이 있습니다:

  1. image 콘텐츠 블록에 base64로 인코딩된 이미지로 제공
  2. 온라인에 호스팅된 이미지에 대한 URL 참조로 제공
  3. Files API 사용(한 번 업로드하고 여러 번 사용)

base64 예제 프롬프트는 다음 변수를 사용합니다:

    # URL 기반 이미지의 경우 JSON 요청에서 URL을 직접 사용할 수 있습니다
    
    # base64로 인코딩된 이미지의 경우 먼저 이미지를 인코딩해야 합니다
    # bash에서 이미지를 base64로 인코딩하는 방법 예시:
    BASE64_IMAGE_DATA=$(curl -s "https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg" | base64)
    
    # 인코딩된 데이터는 이제 API 호출에서 사용할 수 있습니다

다음은 base64로 인코딩된 이미지와 URL 참조를 사용하여 Messages API 요청에 이미지를 포함하는 방법의 예입니다:

Base64로 인코딩된 이미지 예제

curl https://api.anthropic.com/v1/messages \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-sonnet-4-20250514",
    "max_tokens": 1024,
    "messages": [
      {
        "role": "user",
        "content": [
          {
            "type": "image",
            "source": {
              "type": "base64",
              "media_type": "image/jpeg",
              "data": "'"$BASE64_IMAGE_DATA"'"
            }
          },
          {
            "type": "text",
            "text": "Describe this image."
          }
        ]
      }
    ]
  }'

URL 기반 이미지 예제

curl https://api.anthropic.com/v1/messages \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-sonnet-4-20250514",
    "max_tokens": 1024,
    "messages": [
      {
        "role": "user",
        "content": [
          {
            "type": "image",
            "source": {
              "type": "url",
              "url": "https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg"
            }
          },
          {
            "type": "text",
            "text": "Describe this image."
          }
        ]
      }
    ]
  }'

Files API 이미지 예제

반복적으로 사용할 이미지나 인코딩 오버헤드를 피하고 싶을 때는 Files API를 사용하세요:

# 먼저 이미지를 Files API에 업로드합니다
curl -X POST https://api.anthropic.com/v1/files \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "anthropic-beta: files-api-2025-04-14" \
  -F "file=@image.jpg"

# 그런 다음 반환된 file_id를 메시지에 사용합니다
curl https://api.anthropic.com/v1/messages \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "anthropic-beta: files-api-2025-04-14" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-sonnet-4-20250514",
    "max_tokens": 1024,
    "messages": [
      {
        "role": "user",
        "content": [
          {
            "type": "image",
            "source": {
              "type": "file",
              "file_id": "file_abc123"
            }
          },
          {
            "type": "text",
            "text": "Describe this image."
          }
        ]
      }
    ]
  }'

더 많은 예제 코드와 매개변수 세부 정보는 Messages API 예제를 참조하세요.


제한 사항

Claude의 이미지 이해 기능은 최첨단이지만, 알아두어야 할 몇 가지 제한 사항이 있습니다:

  • 사람 식별: Claude는 이미지에서 사람을 식별(즉, 이름 지정)하는 데 사용할 수 없으며 이를 거부합니다.
  • 정확도: Claude는 저품질, 회전된 이미지나 200픽셀 미만의 매우 작은 이미지를 해석할 때 환각을 경험하거나 실수를 할 수 있습니다.
  • 공간 추론: Claude의 공간 추론 능력은 제한적입니다. 아날로그 시계 판독이나 체스 말의 정확한 위치 설명과 같이 정확한 위치 파악이나 레이아웃이 필요한 작업에 어려움을 겪을 수 있습니다.
  • 계수: Claude는 이미지에 있는 물체의 대략적인 수를 제공할 수 있지만, 특히 작은 물체가 많은 경우 항상 정확하지 않을 수 있습니다.
  • AI 생성 이미지: Claude는 이미지가 AI로 생성되었는지 알지 못하며 질문을 받으면 부정확할 수 있습니다. 가짜 또는 합성 이미지를 감지하는 데 의존하지 마세요.
  • 부적절한 콘텐츠: Claude는 이용 정책을 위반하는 부적절하거나 노골적인 이미지를 처리하지 않습니다.
  • 의료 응용: Claude는 일반적인 의료 이미지를 분석할 수 있지만, CT나 MRI와 같은 복잡한 진단 스캔을 해석하도록 설계되지 않았습니다. Claude의 출력은 전문적인 의학적 조언이나 진단을 대체할 수 없습니다.

특히 중요한 사용 사례에서는 항상 Claude의 이미지 해석을 신중하게 검토하고 확인하세요. 인간의 감독 없이 완벽한 정밀도나 민감한 이미지 분석이 필요한 작업에 Claude를 사용하지 마세요.


FAQ


비전에 대해 더 깊이 알아보기

Claude를 사용하여 이미지로 구축할 준비가 되셨나요? 다음은 몇 가지 유용한 리소스입니다:

다른 질문이 있으시면 지원 팀에 문의하세요. 개발자 커뮤니티에 가입하여 다른 창작자들과 연결하고 Anthropic 전문가의 도움을 받을 수도 있습니다.