Sign in to save your progressYou can keep reading without an account, but completed lessons won't be saved.
Sign in

Temperature는 Claude의 응답이 얼마나 창의적이거나 결정론적일지를 제어하는 강력한 매개변수입니다. 이를 효과적으로 사용하는 방법을 이해하면 AI 애플리케이션을 크게 개선할 수 있습니다.

Claude가 텍스트를 생성하는 방법

Temperature를 자세히 살펴보기 전에, Claude의 텍스트 생성 과정을 이해하는 것이 도움이 됩니다. "What do you think?"와 같은 프롬프트를 Claude에 보내면, 다음 세 단계를 거칩니다:

  • 토큰화(Tokenization): 입력을 더 작은 청크로 분할
  • 예측(Prediction): 가능한 다음 토큰에 대한 확률 계산
  • 샘플링(Sampling): 해당 확률을 기반으로 토큰 선택

위 다이어그램에서 Claude가 잠재적인 다음 토큰에 서로 다른 확률을 어떻게 할당할 수 있는지 확인할 수 있습니다. "about"이라는 단어는 30%의 확률을, "would"는 20%의 확률을 가지는 식입니다. 이 과정은 응답이 완료될 때까지 각 토큰마다 반복됩니다.

Temperature가 하는 일

Temperature는 0과 1 사이의 소수 값으로, 이러한 토큰 선택 확률에 직접적인 영향을 미칩니다. 이를 창의성 다이얼로 생각해 보세요:

  • 낮은 temperature(0에 가까움): 가장 높은 확률의 토큰이 선택될 가능성을 훨씬 더 높게 만듭니다
  • 높은 temperature(1에 가까움): 가능한 모든 토큰에 확률을 더 균등하게 분산시킵니다

temperature가 0일 때, Claude는 결정론적이 됩니다 - 항상 가장 확률이 높은 토큰을 선택합니다. temperature가 1일 때는 확률이 낮은 토큰도 선택될 가능성이 훨씬 높아져, 더 창의적이고 다양한 출력으로 이어집니다.

Temperature 범위와 사용 사례

작업에 따라 서로 다른 temperature 설정이 필요합니다:

낮은 Temperature (0.0 - 0.3)

  • 사실 기반 응답
  • 코딩 지원
  • 데이터 추출
  • 콘텐츠 검토

중간 Temperature (0.4 - 0.7)

  • 요약
  • 교육 콘텐츠
  • 문제 해결
  • 제약이 있는 창작 글쓰기

높은 Temperature (0.8 - 1.0)

  • 브레인스토밍
  • 창작 글쓰기
  • 마케팅 콘텐츠
  • 유머 생성

코드에서 Temperature 설정하기

기본적으로 Claude의 temperature는 1.0으로 설정되어 있으며, 이는 최대 창의성을 의미합니다. 추론 구성에 temperature를 추가하여 이를 재정의할 수 있습니다:

python
def chat(messages, system=None, temperature=1.0):
    params = {
        "modelId": model_id,
        "messages": messages,
        "inferenceConfig": {"temperature": temperature}
    }
    
    if system:
        params["system"] = [{"text": system}]
    
    response = client.converse(**params)
    return response["output"]["message"]["content"][0]["text"]

실제 사례로 보는 Temperature

영화 아이디어 생성을 사용한 실용적인 예시를 살펴보겠습니다. temperature를 기본값(1.0)으로 설정하면 다음과 같은 창의적인 응답을 얻을 수 있습니다:

"은둔 생활을 하는 종이접기 장인이 자신의 정교한 종이 작품들이 밤마다 살아나는 것을 발견하고, 그들의 작은 세계를 존재를 위협하는 신비로운 그림자 생물로부터 구하기 위한 마법 같은 여정에 나선다."

하지만 동일한 프롬프트에 대해 temperature를 0.0으로 설정하면, 일관되게 더 예측 가능한 응답을 얻게 됩니다:

"시간을 여행하는 고고학자가 잊혀진 힘을 이용해 종말 장치를 만드는 기술 억만장자에게 고대 유물이 도난당하는 것을 막아야 한다."

낮은 temperature 버전을 여러 번 실행하면 매우 유사한 응답이 생성되며, "시간을 여행하는 역사학자"나 "시간을 여행하는 고고학자"와 같은 반복되는 주제가 자주 나타납니다.

핵심 요약

Temperature는 Claude의 창의성 수준을 직접 제어할 수 있게 해줍니다. 일관되고 사실에 기반한 응답이 필요할 때는 낮은 temperature를 사용하고, 창의적이고 다양한 출력을 원할 때는 높은 temperature를 사용하세요. 기본 temperature 값인 1.0은 창의성을 최대화하므로, 정확성과 일관성이 필요한 작업에는 이를 낮추는 것을 고려하세요.