번역 자료 / / 2025. 5. 23. 07:38

[langgraph] 모델(Models)

[langgraph] 모델

원문 출처: https://langchain-ai.github.io/langgraph/agents/models/

이 페이지에서는 에이전트가 사용하는 챗 모델(chat model)을 설정하는 방법을 설명합니다.

도구 호출 지원(Tool calling support)

도구 호출이 가능한 에이전트를 사용하려면, 하위 LLM이 도구 호출을 지원해야 합니다.

호환 가능한 모델 목록은 LangChain integrations 디렉터리에서 확인할 수 있습니다.

모델 이름으로 지정하기(Specifying a model by name)

에이전트는 모델 이름 문자열로 설정할 수 있습니다:

OpenAI 예시

import os
from langgraph.prebuilt import create_react_agent

os.environ["OPENAI_API_KEY"] = "sk-..."

agent = create_react_agent(
    model="openai:gpt-4.1",
    # 기타 파라미터
)

Anthropic 예시

import os
from langgraph.prebuilt import create_react_agent

os.environ["ANTHROPIC_API_KEY"] = "sk-..."

agent = create_react_agent(
    model="anthropic:claude-3-7-sonnet-latest",
    # 기타 파라미터
)

Azure 예시

import os
from langgraph.prebuilt import create_react_agent

os.environ["AZURE_OPENAI_API_KEY"] = "..."
os.environ["AZURE_OPENAI_ENDPOINT"] = "..."
os.environ["OPENAI_API_VERSION"] = "2025-03-01-preview"

agent = create_react_agent(
    model="azure_openai:gpt-4.1",
    # 기타 파라미터
)

Google Gemini 예시

import os
from langgraph.prebuilt import create_react_agent

os.environ["GOOGLE_API_KEY"] = "..."

agent = create_react_agent(
    model="google_genai:gemini-2.0-flash",
    # 기타 파라미터
)

AWS Bedrock 예시

from langgraph.prebuilt import create_react_agent

# 자격 증명 설정 방법은 공식 문서 참고:
# https://docs.aws.amazon.com/bedrock/latest/userguide/getting-started.html

agent = create_react_agent(
    model="bedrock_converse:anthropic.claude-3-5-sonnet-20240620-v1:0",
    # 기타 파라미터
)

init_chat_model 사용하기

init_chat_model 유틸리티를 사용하면 다양한 파라미터로 모델을 간편하게 초기화할 수 있습니다.

OpenAI 예시

pip install -U "langchain[openai]"
import os
from langchain.chat_models import init_chat_model

os.environ["OPENAI_API_KEY"] = "sk-..."

model = init_chat_model(
    "openai:gpt-4.1",
    temperature=0,
    # 기타 파라미터
)

Anthropic 예시

pip install -U "langchain[anthropic]"
import os
from langchain.chat_models import init_chat_model

os.environ["ANTHROPIC_API_KEY"] = "sk-..."

model = init_chat_model(
    "anthropic:claude-3-5-sonnet-latest",
    temperature=0,
    # 기타 파라미터
)

Azure 예시

pip install -U "langchain[openai]"
import os
from langchain.chat_models import init_chat_model

os.environ["AZURE_OPENAI_API_KEY"] = "..."
os.environ["AZURE_OPENAI_ENDPOINT"] = "..."
os.environ["OPENAI_API_VERSION"] = "2025-03-01-preview"

model = init_chat_model(
    "azure_openai:gpt-4.1",
    azure_deployment=os.environ["AZURE_OPENAI_DEPLOYMENT_NAME"],
    temperature=0,
    # 기타 파라미터
)

Google Gemini 예시

pip install -U "langchain[google-genai]"
import os
from langchain.chat_models import init_chat_model

os.environ["GOOGLE_API_KEY"] = "..."

model = init_chat_model(
    "google_genai:gemini-2.0-flash",
    temperature=0,
    # 기타 파라미터
)

AWS Bedrock 예시

pip install -U "langchain[aws]"
from langchain.chat_models import init_chat_model

# 자격 증명 설정 방법은 공식 문서 참고:
# https://docs.aws.amazon.com/bedrock/latest/userguide/getting-started.html

model = init_chat_model(
    "anthropic.claude-3-5-sonnet-20240620-v1:0",
    model_provider="bedrock_converse",
    temperature=0,
    # 기타 파라미터
)

고급 옵션은 API 레퍼런스를 참고하세요.

공급자별 LLM 직접 사용(Using provider-specific LLMs)

init_chat_model로 지원되지 않는 모델 공급자는 해당 공급자의 모델 클래스를 직접 인스턴스화할 수 있습니다. 이 모델은 BaseChatModel 인터페이스를 구현하고 도구 호출을 지원해야 합니다.

예시: Anthropic

from langchain_anthropic import ChatAnthropic
from langgraph.prebuilt import create_react_agent

model = ChatAnthropic(
    model="claude-3-7-sonnet-latest",
    temperature=0,
    max_tokens=2048
)

agent = create_react_agent(
    model=model,
    # 기타 파라미터
)

위 예시는 ChatAnthropic을 사용했지만, 이 패턴은 init_chat_model로 지원되지 않는 모델을 수동으로 인스턴스화할 때 참고용입니다.

스트리밍 비활성화(Disable streaming)

개별 LLM 토큰의 스트리밍을 비활성화하려면 모델 초기화 시 disable_streaming=True를 지정하세요.

init_chat_model 예시

from langchain.chat_models import init_chat_model

model = init_chat_model(
    "anthropic:claude-3-7-sonnet-latest",
    disable_streaming=True
)

직접 모델 클래스 사용 예시

from langchain_anthropic import ChatAnthropic

model = ChatAnthropic(
    model="claude-3-7-sonnet-latest",
    disable_streaming=True
)

자세한 내용은 API 레퍼런스를 참고하세요.

모델 폴백(fallbacks) 추가하기

model.with_fallbacks([...])를 사용해 다른 모델이나 LLM 공급자로 폴백을 추가할 수 있습니다.

init_chat_model 예시

from langchain.chat_models import init_chat_model

model_with_fallbacks = (
    init_chat_model("anthropic:claude-3-5-haiku-latest")
    .with_fallbacks([
        init_chat_model("openai:gpt-4.1-mini"),
    ])
)

직접 모델 클래스 사용 예시

from langchain_anthropic import ChatAnthropic
from langchain_openai import ChatOpenAI

model_with_fallbacks = (
    ChatAnthropic(model="claude-3-5-haiku-latest")
    .with_fallbacks([
        ChatOpenAI(model="gpt-4.1-mini"),
    ])
)

자세한 폴백 사용법은 별도 가이드를 참고하세요.

추가 자료

반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유