GPT 모델명
CORE
OPENAI_MODELS = [
'gpt-4',
'gpt-4o',
'gpt-4-turbo',
'gpt-3.5-turbo'
]
GPT에서 제공하는 모델들은 실제 입력과 사용자에게 표시되는 내용이 크게 다르지 않습니다.
Claude 모델명

Claude 상세 모델명은 일반 사용자나 관리자가 보기에 너무 복잡하기 때문에, 실제 코드상에 넣어야 할 모델명을 전부 표시하는 것은 가독성을 떨어뜨립니다.
Claude 모델명 변환
from core.config import CLAUDE_MODELS
def fit_anthropic_model(model_name : str):
if model_name == 'claude-3-opus':
return CLAUDE_MODELS[0]
if model_name == 'claude-3-sonnect':
return CLAUDE_MODELS[1]
if model_name == 'claude-3-haiku':
return CLAUDE_MODELS[2]
CORE 디렉터리에 tools라는 파이썬 코드를 새로 추가했습니다.
여기선 CORE와 함께 범용적으로 사용될 수 있는 함수들을 정의합니다.
이 코드의 역할은 사용자가 흔히 쓰는 ‘Claude-3-Sonnect’와 같은 모델명을 입력했을 때,
이를 LangChain 함수가 이해할 수 있는 상세 모델명으로 바꿔주는 것입니다.
LLM 호출 코드 수정
def get_llm(provider="openai", model=None, api_key : str = None):
if provider == "openai":
model_name = model or config.DEFAULT_CHAT_MODEL
return ChatOpenAI(
openai_api_key = api_key,
model_name=model_name,
temperature=0.7
)
elif provider == "anthropic":
model = fit_anthropic_model(model_name = model)
model_name = model or "claude-3-sonnet-20240229"
return ChatAnthropic(
anthropic_api_key = api_key,
model=model_name,
temperature=0.7
)
else:
raise ValueError(f"지원되지 않는 제공자: {provider}")
LLM 호출 코드에서 Anthropic의 모델을 가져올 경우, 사전 정의한 fit_anthopic_model 함수를 거쳐서 모델명을 입력하도록 합니다.
DB 내 모델명 수정

화면에 표기될 모델명을 간략한 모델명으로 수정해도 정상적으로 인식됩니다.