400===Dev Library/Claude

Citations - AI 응답의 신뢰성을 높이는 출처 인용 기능 🔍

블로글러 2025. 3. 22. 21:54

여러분은 논문을 쓸 때 인용문헌을 꼼꼼히 달아본 경험이 있으실 겁니다. 마치 학술 논문의 참고문헌처럼, AI도 자신의 답변에 대한 '출처'를 제시할 수 있다면 얼마나 신뢰할 수 있을까요? 🤔 Anthropic이 새롭게 선보인 Citations API는 바로 이런 필요성에 응답합니다.

  • AI가 제공하는 정보의 출처를 정확히 알고 싶으신가요?
  • 문서 기반 AI 응답의 신뢰성을 높이고 싶으신가요?
  • 할루시네이션(환각) 문제 없이 정확한 AI 응답을 원하시나요?

왜 필요한가?

Citations API가 해결하는 문제들은 다음과 같습니다:

  1. AI 응답의 출처 검증 어려움: AI가 어디서 정보를 가져왔는지 알 수 없어 신뢰하기 어려웠습니다.
  2. 복잡한 프롬프트 엔지니어링 필요: 기존에는 AI에게 출처를 인용하도록 하려면 복잡한 프롬프트 작성이 필요했습니다.
  3. 일관성 없는 인용 성능: 프롬프트 기반 접근법은 종종 불일치한 결과를 보여주었습니다.

기본 원리

Citations API의 핵심 원리를 알아볼까요? 🧐

1. 문서 처리 및 청킹

# 문서 제공 및 Citations 활성화
{
    "type": "document",
    "source": {
        "type": "text",
        "media_type": "text/plain",
        "data": "문서 내용..."
    },
    "title": "문서 제목",
    "citations": {"enabled": true}
}

Citations API는 사용자가 제공한 문서(PDF 또는 텍스트 파일)를 문장 단위로 '청킹(chunking)'합니다. 이렇게 나눠진 청크들은 사용자의 질의와 함께 모델에 전달됩니다. 또한 사용자가 직접 청크를 제공할 수도 있어요!

2. 정확한 인용 생성

Claude는 제공된 청크와 컨텍스트를 분석하여 소스 자료에서 파생된 주장에 대한 정확한 인용을 포함한 응답을 생성합니다. 인용된 텍스트는 소스 문서를 참조하여 할루시네이션을 최소화합니다.

# 응답 예시
{
    "content": [
        {
            "type": "text",
            "text": "문서에 따르면, "
        },
        {
            "type": "text",
            "text": "잔디는 녹색입니다",
            "citations": [{
                "type": "char_location",
                "cited_text": "잔디는 녹색입니다.",
                "document_index": 0,
                "document_title": "예시 문서",
                "start_char_index": 0,
                "end_char_index": 20
            }]
        }
    ]
}

실제 예제

실제 비즈니스 환경에서 Citations API는 어떻게 활용될까요?

Thomson Reuters의 법률 AI 플랫폼

Thomson Reuters는 Claude를 활용하여 법률 및 세무 전문가를 위한 AI 플랫폼 CoCounsel을 개발했습니다.

"변호사들이 즉시 활용할 수 있는 신뢰할 수 있는 CoCounsel을 위해서는 출처 인용이 필수적입니다. 우리는 처음에 자체적으로 이 기능을 구축했지만, 개발과 유지보수가 정말 어려웠습니다. Anthropic의 Citations 기능을 테스트하게 되어 매우 기뻤습니다. 이 기능은 원천 자료를 인용하고 연결하는 것을 훨씬 쉽게 만들어줍니다." - Jake Heller, Head of Product, CoCounsel, Thomson Reuters

Endex의 금융 연구 자동화

Endex는 금융 회사를 위한 자율 에이전트 개발에 Claude를 활용하고 있습니다.

"Anthropic의 Citations를 통해 출처 할루시네이션과 형식 관련 문제를 10%에서 0%로 줄이고, 응답당 참조 수를 20% 증가시켰습니다. 이로 인해 참조 관련 복잡한 프롬프트 엔지니어링이 필요 없어졌고, 복잡한 다단계 금융 연구 수행 시 정확도가 향상되었습니다." - Tarun Amasa, CEO, Endex

기본 사용법

# 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-3-7-sonnet-20250219",
    "max_tokens": 1024,
    "messages": [
      {
        "role": "user",
        "content": [
          {
            "type": "document",
            "source": {
              "type": "text",
              "media_type": "text/plain",
              "data": "잔디는 녹색입니다. 하늘은 파랑색입니다."
            },
            "title": "내 문서",
            "context": "이 문서는 신뢰할 수 있는 문서입니다.",
            "citations": {"enabled": true}
          },
          {
            "type": "text",
            "text": "잔디와 하늘의 색깔은 무엇인가요?"
          }
        ]
      }
    ]
  }'

다음은 Citations API에서 지원하는 문서 유형을 정리한 표입니다:

문서 유형 최적 사용 사례 청킹 방식 인용 형식
일반 텍스트 단순 텍스트 문서, 산문 문장 단위 문자 인덱스(0부터 시작)
PDF 텍스트 내용이 있는 PDF 파일 문장 단위 페이지 번호(1부터 시작)
사용자 정의 컨텐츠 목록, 대본, 특수 형식, 세분화된 인용 추가 청킹 없음 블록 인덱스(0부터 시작)

주의사항 및 팁 💡

⚠️ 이것만은 주의하세요!

  1. 토큰 비용 증가 가능성

    • Citations를 활성화하면 시스템 프롬프트 추가와 문서 청킹으로 인해 입력 토큰이 약간 증가할 수 있습니다.
    • 그러나 인용된 텍스트는 출력 토큰으로 계산되지 않아 비용 효율적입니다.
  2. PDF 이미지 인용 불가

    • 현재 Citations API는 텍스트 인용만 지원하며, 이미지 인용은 아직 불가능합니다.
    • 스캔된 PDF 문서에서 추출 가능한 텍스트가 없는 경우 인용할 수 없습니다.

💡 꿀팁

  • Claude 3.7 Sonnet 모델을 사용할 때는 "답변에 인용을 사용해주세요."와 같은 명시적인 지시를 포함하세요.
  • 응답 구조화를 요청할 때는 해당 형식 내에서도 인용을 사용하도록 명시적으로 지시하세요.
  • 인용 세분성을 더 세밀하게 제어하려면 사용자 정의 컨텐츠 문서를 활용하세요.

마치며

지금까지 Anthropic의 Citations API에 대해 알아보았습니다. 이 기능은 AI 응답의 신뢰성과 검증 가능성을 크게 향상시키는 혁신적인 도구입니다. 내부 평가에 따르면, Citations 기능은 대부분의 사용자 정의 구현보다 우수한 성능을 보이며, 검색 정확도를 최대 15%까지 향상시킨다고 합니다. 😎

Citations API는 현재 Claude 3.7 Sonnet, Claude 3.5 Sonnet, Claude 3.5 Haiku 모델에서 사용 가능하며, Anthropic API 및 Google Cloud의 Vertex AI를 통해 제공됩니다.

혹시 AI 응답의 출처 검증이나 Citations API 활용에 대해 더 궁금한 점이 있으시면 댓글로 남겨주세요!

참고 자료 🔖

728x90