LLM 온도란 무엇인가요?

작성자

Joshua Noble

Data Scientist

LLM 온도란 무엇인가요?

인공지능(AI)과 머신러닝에서 온도는 대규모 언어 모델(LLM)의 아웃풋을 조정하기 위한 매개변수입니다. 온도는 추론 중에 LLM에 의해 생성되는 텍스트의 무작위성을 제어합니다.

LLM은 확률 분포에 따라 다음 단어(그보다는 다음 토큰)를 예측하여 텍스트를 생성합니다. 각 토큰에는 LLM의 로짓(숫자 값)이 할당되고 총 토큰 세트는 '소프트맥스 확률 분포'로 정규화됩니다. 각 토큰에는 0과 1 사이에 존재하는 '소프트맥스 함수'가 할당되며 모든 토큰의 소프트맥스 확률의 합은 1입니다.

LLM 온도 매개변수는 이 분포를 수정합니다. 온도가 낮을수록 본질적으로 확률이 가장 높은 토큰이 선택될 가능성이 높아지며 온도가 높을수록 모델이 가능성이 낮은 토큰을 선택할 가능성이 높아집니다. 이는 온도 값이 높을수록 LLM의 토큰 선택에 더 많은 변동성이 발생하기 때문에 발생합니다. 다양한 온도 설정에 따라 본질적으로 생성형 AI 모델이 텍스트를 출력할 때 다양한 수준의 무작위성이 도입됩니다.

온도는 모델 성능의 무작위성을 제어하는 데 중요한 기능입니다. 이를 통해 사용자는 텍스트 생성의 다양한 실제 애플리케이션에 더 적합하도록 LLM 아웃풋을 조정할 수 있습니다. 보다 구체적으로, 이 LLM 설정을 통해 사용자는 특정 사용 사례에 대한 아웃풋을 생성할 때 일관성과 창의성의 균형을 맞출 수 있습니다. 예를 들어, 기술적 문서나 챗봇을 통한 대화형 응답과 같이 정밀도와 사실적 정확성이 필요한 작업의 경우 낮은 온도가 더 적합할 수 있습니다. 온도 값이 낮을수록 LLM이 보다 일관된 텍스트를 생성하고 관련 없는 응답을 방지하는 데 도움이 됩니다. 대조적으로, 창의적인 아웃풋이나 창의적 글쓰기나 개념 브레인스토밍과 같은 창의적인 작업에는 높은 온도가 선호됩니다. 온도 설정을 통해 사용자는 LLM을 효과적으로 미세 조정하고 모델의 아웃풋을 원하는 결과로 조정할 수 있습니다.

온도는 종종 '창의성'과 혼동되지만, 항상 그런 것은 아닙니다. 모델이 학습 데이터의 텍스트를 얼마나 광범위하게 사용하는지로 보는 것이 더 도움이 됩니다. Max Peeperkorn 외 다수1는 다양한 온도 값에 대한 LLM 아웃풋에 대한 실증적 분석을 수행하고 다음과 같이 썼습니다.

"우리는 온도가 참신함과 약한 상관관계가 있고, 당연히 일관성 없음과 중간 정도의 상관관계가 있지만 응집력이나 전형성과는 관계가 없다는 것을 발견했습니다. 그러나 창의성에 대한 온도의 영향은 '창의성 매개변수' 주장에서 제안하는 것보다 훨씬 더 미묘하고 약합니다. 전반적인 결과는 LLM이 온도가 높아질수록 약간 더 새로운 아웃풋을 생성한다는 것을 시사합니다."

온도 값이 높으면 모델 아웃풋이 더 창의적으로 보일 수 있지만 학습 데이터에 의해 결정되는 정도가 줄어드는 것으로 보는 것이 더 정확합니다.

전문가가 전하는 최신 AI 트렌드

가장 중요하고 흥미로운 AI 뉴스에 대한 선별된 인사이트를 확인하세요. 주간 Think 뉴스레터를 구독하세요. IBM 개인정보 보호정책을 참조하세요.

감사합니다! 구독이 완료되었습니다.

구독은 영어로 제공됩니다. 모든 뉴스레터에는 구독 취소 링크가 있습니다. 여기에서 구독을 관리하거나 취소할 수 있습니다. 자세한 정보는 IBM 개인정보 보호정책을 참조하세요.

온도 구성

IBM Granite Instruct 또는 OpenAIs ChatGPT를 포함한 모델에 액세스하는 많은 API에는 다양한 다른 LLM 매개변수와 함께 온도를 구성하는 매개변수가 있습니다. 가장 일반적인 세 가지는 다음과 같습니다.

do_sample: 이 매개변수는 텍스트 생성 중에 모델이 샘플링되는지 여부를 제어합니다. 샘플링은 텍스트 아웃풋을 변경하는 방법입니다. 'true'로 설정하면 모델이 항상 데이터 세트의 시퀀스에서 가장 가능성이 높은 단어를 선택하는 대신 수정된 토큰 확률에서 무작위로 샘플링합니다. 실제로 사전 학습된 LLM에 대한 온도 조정을 활성화하려면 이 값을 true로 설정해야 합니다.

top_k: 이 매개변수는 무작위 샘플링 시 모델의 가능한 선택을 가장 가능성이 높은 상위 k개 토큰으로 제한합니다. 이전 매개변수는 가장 가능성이 높은 다른 예측 토큰에 대한 무작위 샘플링을 허용하는 반면, 이 매개변수는 모델이 선택하는 잠재적 토큰의 수를 제한합니다. 무작위 샘플링은 더 다양하고 다양한 아웃풋을 생성하는 데 도움이 되지만, 이 매개변수는 가능성이 더 낮은 토큰을 샘플링에서 제외하여 생성된 텍스트의 품질을 유지하는 데 도움이 됩니다.

top_p: 이 매개변수는 때때로 핵 샘플링이라고도 불립니다. 일관되지 않고 무의미한 아웃풋을 피하기 위해 무작위 샘플링의 선택을 제한하는 또 다른 방법입니다. 이 매개변수를 사용하면 모델에서 누적 확률이 지정된 확률 값보다 큰 토큰을 고려할 수 있습니다. 생성된 아웃풋에 대한 토큰을 선택할 때 모델은 총 확률이 예를 들어 95% 이상인 토큰 그룹만 선택합니다. 무작위 샘플링을 사용하여 모델이 보다 동적인 아웃풋을 가질 수 있지만, 상위 p 매개변수는 아웃풋이 어느 정도 일관성과 일관성을 유지하도록 합니다.

AI 아카데미

파운데이션 모델이 AI 패러다임의 전환을 가져오는 이유

새로운 수익을 창출하고 비용을 절감하며 생산성을 높일 수 있는, 유연하고 재사용 가능한 새로운 AI 모델을 살펴봅니다. 그다음, 가이드북을 통해 보다 심층적으로 알아봅니다.

아웃풋 제어

종종 모델을 통해 사용자가 모델의 아웃풋을 보다 명시적으로 제어할 수 있는 경우도 있습니다. 아웃풋 제어에 일반적으로 사용되는 몇 가지 매개변수는 다음과 같습니다.

최대 길이: 최대 길이는 AI가 생성할 수 있는 토큰의 총 개수입니다. 이 설정은 사용자가 모델 응답의 길이를 관리할 수 있고 지나치게 길거나 관련 없는 응답을 방지할 수 있기 때문에 유용합니다. 

중지 시퀀스: 이러한 시퀀스는 모델이 아웃풋 생성을 중지해야 하는 시점을 알려주고 콘텐츠 길이와 구조를 제어하는 데 도움이 됩니다. LLM에게 중지 시퀀스로 '감사합니다' 또는 '좋은 하루 되세요'를 사용하여 이메일을 작성하라는 프롬프트를 생성하면 모델이 마무리 인사말 전에 중지하도록 지시합니다. 이 프롬프트는 이메일을 간단하게 유지하는 데 도움이 될 수 있습니다. 중지 시퀀스는 아웃풋이 이메일, 번호가 매겨진 목록 또는 대화 상자와 같은 구조화된 형식으로 나올 것으로 예상되는 경우에 유용합니다.

빈도 페널티: 빈도 페널티는 토큰이 나타나는 빈도에 비례하여 해당 페널티를 적용하여 생성된 텍스트에서 반복을 방지하는 설정입니다. 텍스트에서 토큰이 더 자주 사용될수록 LLM이 해당 토큰을 다시 사용할 가능성이 줄어듭니다.

존재 페널티: 존재 페널티는 빈도 페널티와 비슷하지만 토큰을 비례적으로 페널티를 주는 것이 아니라 발생 여부에 따라 토큰에 페널티를 줍니다.

IBM Granite와 아웃풋 비교

온도가 LLM의 아웃풋에 어떤 영향을 미치는지 알아보려면 IBM Granite 3.1 2억 개 매개변수 모델에서 생성된 아웃풋을 살펴보세요. 여기에 제공된 프롬프트는 "Python을 사랑하는 데이터 과학자에 대한 이야기를 작성하세요."였습니다.

Granite는 온도가 0.1일 때 다음을 생성합니다.

옛날 옛적에 분주한 도시 샌프란시스코에 뛰어난 데이터 과학자 Alex가 살았습니다. Alex는 Python 프로그래밍 및 데이터 분석에 대한 탁월한 기술로 유명했습니다. 그는 Python을 사용하여 인사이트를 얻고 예측하면서 밤낮으로 데이터의 세계에 몰입했습니다.

어느 날, Alex는 인기 있는 스트리밍 서비스의 고객 이탈을 분석하는 임무를 맡았습니다. 그는 Python의 scikit-learn 라이브러리를 사용하여 구독을 취소할 가능성이 있는 고객을 예측할 수 있는 머신 러닝 모델을 구축했습니다.

Granite는 온도가 0.75일 때 다음을 생성합니다.

옛날 옛적에 분주한 도시 샌프란시스코에 뛰어난 데이터 과학자 Alex가 살았습니다. Alex는 데이터 분석 및 머신 러닝을 위한 완벽한 도구라고 믿는 프로그래밍 언어인 Python에 대한 깊은 사랑으로 유명했습니다.

매일 Alex는 일찍 일어나 커피 한 잔을 끓이고 책상에 앉았습니다. 그는 몇 시간 동안 Python으로 코드를 작성하고, 데이터 세트를 탐색하며, 예측 모델을 구축했습니다. Python에 대한 그의 사랑은 언어 자체뿐만 아니라 이를 중심으로 성장한 커뮤니티에 관한 것이기도 했습니다.

Granite는 온도가 1.25일 때 다음을 생성합니다.

옛날 옛적에 우뚝 솟은 고층 빌딩과 네온 불빛으로 가득한 번화한 도시에 Python을 무엇보다도 사랑하는 데이터 과학자가 있었습니다. 데이터 과학자에게는 Suki라는 고양이 도우미가 있습니다. Suki는 호기심 많고 장난기 많은 고양이로, 항상 집 구석구석을 탐험하고 싶어합니다.

어느 날, 데이터 과학자가 복잡한 코딩 문제를 풀고 있습니다. Suki는 데이터 과학자에게 메시지를 전달하려는 것처럼 큰 소리로 야옹거리고 있습니다. 이 데이터 과학자는 일반적으로 복잡한 코딩 문제에 대한 해결책에 가까워졌을 때 시끄러운 야옹 소리가 들려온다는 것을 알아차립니다.

각 이야기가 비슷한 도입부로 시작하더라도 온도를 높이면 텍스트와 생성되는 세부 사항의 변동성이 증가합니다.

관련 솔루션
파운데이션 모델

watsonx 포트폴리오의 IBM 파운데이션 모델 라이브러리에 대해 자세히 알아보고 비즈니스를 위한 생성형 AI를 자신 있게 확장하세요.

watsonx.ai에 대해 알아보기
인공 지능 솔루션

업계 최고의 AI 전문성과 솔루션 포트폴리오를 보유한 IBM과 함께 AI를 비즈니스에 활용하세요.

AI 솔루션 살펴보기
AI 컨설팅 및 서비스

AI 추가를 통해 중요한 워크플로와 운영을 혁신함으로써 경험, 실시간 의사 결정 및 비즈니스 가치를 극대화합니다.

AI 서비스 살펴보기
다음 단계 안내

IBM watsonx 포트폴리오의 IBM 파운데이션 모델 라이브러리에 대해 자세히 알아보고 비즈니스를 위한 생성형 AI를 자신 있게 확장하세요.

watsonx.ai 살펴보기 AI 솔루션 살펴보기
각주

1 Max Peeperkorn, Tom Kouwenhoven, Dan Brown 및 Anna Jordanous, Is Temperature the Creativity Parameter of Large Language Models?, 2024년