LLM Deep Dive 2025: 왜 Claude 4와 GPT‑5.1이 모든 것을 바꾸는가

발행: (2025년 12월 29일 오후 05:59 GMT+9)
15 min read
원문: Dev.to

Source: Dev.to

컨텍스트 관리: 토큰 제한에서 지능형 요약으로

연장된 상호작용에서 일관되고 관련성 있는 컨텍스트를 유지하는 것은 항상 어려운 과제였습니다. 2025년 말까지 OpenAI와 Anthropic은 단순히 토큰 제한을 늘리는 것을 넘어, 보다 스마트한 컨텍스트 관리 전략을 구현하게 되었습니다.

OpenAI – The Responses API

  • 전략 전환 – 기존 Assistants API(v1, 2024년 말에 폐기)에서 Assistants API v2를 거쳐 현재는 Responses API(2025년 3월 11일 출시)로 전환되었습니다.
  • 중요성 – Responses API는 대화 기록과 컨텍스트를 보다 효율적으로 처리하도록 처음부터 설계되었으며, 개발자가 이전에 직접 구현해야 했던 수동 상태 관리를 크게 추상화합니다.
  • 기술적 기반
    • 슬라이딩‑윈도우 어텐션: 모델이 대화의 최근 구간에 집중하면서 덜 관련된 오래된 정보를 지능적으로 요약하거나 버립니다.
    • 이차 비용 완화: 토큰 윈도우가 크게 확대되었음에도 어텐션 비용은 여전히 이차적이므로 요약이 필수적입니다.
  • 모델 하이라이트GPT‑4.1은 코딩 작업에서 뛰어난 성능을 보이며, 방대한 코드베이스에서도 향상된 컨텍스트 유지 능력을 보여줍니다.

Anthropic – Claude의 확장된 윈도우

모델출시컨텍스트 윈도우
Claude Opus 4.12025 년 8월200 k 토큰
Claude Sonnet 4 (public beta)20251 M 토큰 (실험적)
  • 중요성 – 이러한 윈도우는 전체 책, 방대한 코드베이스, 혹은 수시간에 걸친 리팩터링 세션을 한 번에 소화할 수 있게 합니다.
  • SDK 헬퍼 – Anthropic SDK에는 compaction_control 헬퍼가 포함되어 있어, 사전에 정의된 임계값에 도달하면 자동으로 요약하고 컨텍스트를 정리해 주므로 별도의 커스텀 압축 로직이 필요 없습니다.

Claude와 compaction_control 사용하기 (Python 예제)

import anthropic
import os

# Ensure your ANTHROPIC_API_KEY is set as an environment variable
# os.environ["ANTHROPIC_API_KEY"] = "YOUR_ANTHROPIC_API_KEY"

client = anthropic.Anthropic()

# ----------------------------------------------------------------------
# Configuration for automatic context compaction
# ----------------------------------------------------------------------
compaction_settings = {
    "token_threshold": 5_000,                     # Summarize when history > 5k tokens
    "summarization_model": "claude-sonnet-4.5-20251130",
    "summarization_prompt": (
        "Summarize the preceding conversation for Claude, focusing on key facts "
        "and the user's ultimate goal to help it continue accurately."
    ),
}

def chat_with_claude_with_compaction(user_message: str, history: list):
    """Send a message to Claude, automatically compacting the history if needed."""
    # Append the new user message to the history
    history.append({"role": "user", "content": user_message})

    try:
        response = client.messages.create(
            model="claude-opus-4.1-20250805",
            max_tokens=1_024,
            messages=history,
            compaction_control=compaction_settings,
        )
        assistant_response = response.content[0].text
        history.append({"role": "assistant", "content": assistant_response})
        return assistant_response
    except Exception as e:
        print(f"An error occurred: {e}")
        return "Sorry, I encountered an error."

# ----------------------------------------------------------------------
# Example usage
# ----------------------------------------------------------------------
conversation_history = []

print("User: Hello, I need help planning a complex project.")
resp = chat_with_claude_with_compaction(
    "Hello, I need help planning a complex project. It involves multiple stakeholders and strict deadlines.",
    conversation_history,
)
print(f"Claude: {resp}")

print("\nUser: The project scope has expanded significantly. We now need to integrate three new modules.")
resp = chat_with_claude_with_compaction(
    "The project scope has expanded significantly. We now need to integrate three new modules. How does this impact our timeline?",
    conversation_history,
)
print(f"Claude: {resp}")

Note: 거대한 컨텍스트 윈도우를 갖추고 있더라도, 최적의 검색 및 합성을 위한 프롬프트 작성은 여전히 기술입니다. 특히 “바늘 찾기”와 같은 검색이 중요한 경우, 신중한 프롬프트 엔지니어링이 여전히 필요합니다.

Tool Use & Agentic Workflows

LLM이 외부 시스템—데이터베이스, API, 코드 인터프리터—과 상호 작용할 수 있는 능력은 이를 강력한 에이전트로 변모시켰습니다. OpenAI와 Anthropic 모두 도구 사용 기능을 다듬어 보다 자율적이고 효율적인 오케스트레이션을 향해 나아가고 있습니다.

Anthropic’s Recent Enhancements (Nov 2025)

  1. Programmatic Tool Calling – Claude는 이제 관리되는 실행 환경 내에서 여러 도구를 직접 호출하는 코드를 생성하고 실행할 수 있게 되었으며, API를 통한 왕복 호출을 없애 토큰 사용량과 지연 시간을 크게 줄였습니다.
  2. (Additional features would be listed here…)

이러한 개선은 최소한의 개발자 개입으로 복잡하고 다단계 작업을 관리할 수 있는 진정한 자율 AI 어시스턴트라는 비전을 한층 앞당깁니다.

Tool Search and Use Enhancements

  • Tool Search – 방대한 수의 도구를 관리하는 문제를 해결합니다. 모든 도구 정의를 미리 로드하는 대신, Claude는 새로운 검색 기능을 통해 필요한 도구만 동적으로 발견하고 로드할 수 있습니다.
  • Tool Use Examples – 개발자는 이제 도구 정의에 실제 LLM 출력과 정확히 동일한 형식의 구체적인 사용 패턴을 직접 추가할 수 있습니다. 이러한 예시는 언제어떻게 도구를 사용해야 하는지를 보여줌으로써 Claude의 도구 사용 성능을 향상시킵니다.

OpenAI의 Responses API

OpenAI의 접근 방식, 특히 새로운 Responses API는 강력한 도구 통합을 강조합니다.

  • Assistants API v2는 이미 향상된 함수 호출과 Code Interpreter, File Search와 같은 OpenAI가 호스팅하는 도구에 대한 접근을 제공했습니다.
  • Responses API는 이러한 도구들을 더욱 원활하게 통합하도록 설계되었습니다.
  • 모델이 호출할 수 있도록 JSON 스키마를 사용해 개발자가 맞춤형 도구를 정의할 수 있게 계속 지원합니다.

Claude – 프로그램적 도구 호출 (Python 예제)

import anthropic
import json
import os

client = anthropic.Anthropic()

def get_user_profile(user_id: str):
    if user_id == "user123":
        return {
            "id": "user123",
            "name": "Alice Smith",
            "email": "alice@example.com",
            "plan": "premium"
        }
    return {"error": "User not found"}

def update_user_subscription(user_id: str, new_plan: str):
    if user_id == "user123":
        return {
            "status": "success",
            "user_id": user_id,
            "old_plan": "premium",
            "new_plan": new_plan
        }
    return {"error": "User not found"}

tools = [
    {
        "name": "get_user_profile",
        "description": "Retrieves the profile information for a given user ID.",
        "input_schema": {
            "type": "object",
            "properties": {
                "user_id": {
                    "type": "string",
                    "description": "The ID of the user."
                }
            },
            "required": ["user_id"]
        }
    },
    {
        "name": "update_user_subscription",
        "description": "Updates the subscription plan for a user.",
        "input_schema": {
            "type": "object",
            "properties": {
                "user_id": {
                    "type": "string",
                    "description": "The ID of the user."
                },
                "new_plan": {
                    "type": "string",
                    "description": "The new subscription plan."
                }
            },
            "required": ["user_id", "new_plan"]
        }
    }
]

def chat_with_claude_tools(user_message: str, history: list):
    """Send a message to Claude with tool definitions attached."""
    history.append({"role": "user", "content": user_message})
    response = client.messages.create(
        model="claude-opus-4.1-20250805",
        max_tokens=2048,
        messages=history,
        tools=tools
    )
    # Logic to handle `tool_code` or `tool_use` stop reasons would follow here
    return response.content[0].text

이 프로그램적 접근 방식은 보다 견고하고 오류가 적은 에이전시 행동으로의 전환을 의미합니다. 여기서 LLM의 추론은 도구 호출을 위한 자연어 프롬프트가 아니라 코드로 표현됩니다.

멀티모달 기능 (2025)

멀티모달 기능이 미래형 데모에서 실용적인 API 기반 애플리케이션으로 전환되었습니다.

OpenAI – GPT‑4o 및 GPT‑5.1 시리즈

  • GPT‑4o (“Omni”) – 2024년 5월 출시; 텍스트, 오디오, 이미지 모달리티를 하나의 신경망으로 통합합니다.
  • API 폐지 – GPT‑4o의 API 접근은 2026년 2월에 종료되며, 보다 강력한 GPT‑5.1 시리즈와 특화 모델 o3o4‑mini(2025년 4월 출시)를 위한 길을 엽니다.
  • 주요 기능 – 이미지 입력을 받아 텍스트 이미지로 응답; 모달리티 간 “멀티모달 사고 사슬” 추론을 지원합니다.

Anthropic – Claude Vision

  • Claude OpusSonnet 모델에 이제 비전 기능이 포함되었습니다.
  • 문서 분석, 다이어그램 해석, 시각적 콘텐츠 검토 등에 유용합니다.

OpenAI 멀티모달 예제 (Python)

import openai
import base64
import requests
import os

def encode_image(image_path):
    """Read an image file and return a base64‑encoded string."""
    with open(image_path, "rb") as image_file:
        return base64.b64encode(image_file.read()).decode("utf-8")

def analyze_image_with_openai_multimodal(image_path: str, prompt: str):
    """Send an image + text prompt to a multimodal OpenAI model."""
    base64_image = encode_image(image_path)

    headers = {
        "Content-Type": "application/json",
        "Authorization": f"Bearer {os.getenv('OPENAI_API_KEY')}"
    }

    payload = {
        "model": "gpt-5.1-latest-20251115",
        "messages": [
            {
                "role": "user",
                "content": [
                    {"type": "text", "text": prompt},
                    {
                        "type": "image_url",
                        "image_url": {
                            "url": f"data:image/jpeg;base64,{base64_image}"
                        }
                    }
                ]
            }
        ],
        "max_tokens": 500
    }

    response = requests.post(
        "https://api.openai.com/v1/chat/completions",
        headers=headers,
        json=payload
    )
    return response.json()["choices"][0]["message"]["content"]

인상적이지만, 멀티모달 모델은 여전히 몇 가지 과제를 안고 있습니다:

  • 세밀한 객체 인식이나 복잡한 공간 추론은 전용 컴퓨터 비전 모델만큼 견고하지 않을 수 있습니다.
  • 모호한 시각적 단서나 매우 도메인 특화된 이미지가 여전히 “환각”을 일으킬 수 있습니다.

자율 에이전트 워크플로우의 부상 (2025년 말)

단순한 프롬프트‑응답 사이클에서 복잡하고 자율적인 에이전트 워크플로우로의 전환이 현재 시대를 정의합니다.

  • 개발자들은 LLM이 지능형 오케스트레이터 역할을 하는 다단계 시스템을 구축하고 있습니다. 이들은 작업을 추론하고, 도구를 선택하며, 행동을 실행하고, 피드백을 기반으로 접근 방식을 다듬습니다.
  • 연구AI Agents 2025: Why AutoGPT and CrewAI Still Struggle with Autonomy는 자기 주도형 시스템의 기존 한계를 강조합니다.
  • OpenAIAnthropic의 네이티브 플랫폼은 이러한 격차를 메우기 위해 도구 통합을 강화하고, 동적 도구 탐색 및 보다 풍부한 멀티모달 추론을 제공하는 것을 목표로 합니다.

AI 에이전트 현황 (2025)

New Agents platformResponses API 위에 구축된 이 플랫폼은 이 움직임의 최전선에 있습니다. 다음과 같은 개념을 도입합니다:

  • 대화 메모리를 위한 Persistent threads
  • OpenAI가 호스팅하는 도구에 대한 접근: Web Search, File Search, Computer Use

Agents SDK with Tracing은 복잡한 워크플로에 대한 중요한 가시성을 제공하여 개발자가 에이전트의 의사결정 과정을 디버깅하고 이해할 수 있게 합니다.

Anthropic의 에이전시 기능

Anthropic은 특히 기업용 사례에 대해 에이전시 솔루션에 크게 투자하고 있습니다:

  • Claude Code – 프로그래밍 지원을 위한 특화된 에이전트(현재 Team 및 Enterprise 구독에 포함)
  • Claude Artifacts – 창의적 작업을 위한 또 다른 특화 에이전트

Compliance API를 통해 IT 및 보안 담당자는 사용량 및 콘텐츠 메트릭에 프로그래밍 방식으로 접근할 수 있으며, 이는 대규모 팀에서 AI 지원 코딩을 관리하는 데 필수적입니다.

인기 있는 에이전시 AI 프레임워크

강력한 프레임워크 생태계가 성숙하여, 상태 관리와 도구 오케스트레이션의 복잡성을 크게 추상화하면서 정교한 에이전트를 구축하는 데 필요한 아키텍처 스캐폴딩을 제공합니다:

  • LangChain
  • CrewAI
  • AutoGen (Microsoft)
  • Phidata
  • LlamaIndex
  • LangGraph (LangChain의 일부)

이 프레임워크들은 업계 전반에 걸쳐 널리 채택되고 있습니다.

DataFormatHub 도구 관련 주제

도구설명
JSON FormatterAPI 응답을 위한 JSON 포맷 및 정렬
Base64 EncoderAPI 페이로드를 위한 데이터 인코딩
AI Agents 2025: Why AutoGPT and CrewAI Still Struggle with Autonomy현재 에이전트 제한에 대한 심층 분석
Neon Postgres 2025: Why the New Serverless Features Change Everything서버리스 데이터베이스 혁신 탐구
Pandas vs Polars: Why the 2025 Evolution Changes Everything데이터프레임 라이브러리 비교 연구

이 기사는 원래 DataFormatHub에 게재되었으며, 데이터 포맷 및 개발자 도구 인사이트를 위한 최고의 리소스입니다.

Back to Blog

관련 글

더 보기 »

Agent Flows V2와 Model Context Protocol 마스터하기

우리 모두 그런 경험을 해봤습니다. 로컬 머신에서 아름답게 동작하는 챗봇을 만들었을 때, 아마도 간단한 RAG Retrieval‑Augmented Generation 시스템일 것입니다. 그것은 질문에 답변을…

GPT‑5.2를 소개합니다

GPT-5.2는 일상적인 전문 업무를 위한 가장 진보된 frontier 모델이며, state-of-the-art reasoning, long-context understanding, coding, vision을 갖추고 있습니다. 사용…