대형 언어 모델의 세계로 - ChatGPT의 원리와 활용에 대한
개요와 전체 목차 및 저자 소개는 아래의 이전 글에서 보실 수 있습니다.
대형 언어 모델의 세계로 - ChatGPT의 원리와 활용 개요
안녕하세요 최근에 가장 많이 사용이 되고 있는 대형 언어 모델의 세계로 입문하고자 하시는 분들을 위해서 좋은 유튜브 강좌를 시리즈로 작성해 보려 합니다.원 저자는 Andrej Karpathy 로 스텐포
daeson.tistory.com
AI 모델, 특히 GPT 계열의 대형 언어 모델이 어떻게 사고하는지를 이해하려면 토큰(token) 단위로 작동하는 방식을 알아야 해요. 우리가 자연스럽게 받아들이는 수학 문제 해결 과정도 AI에게는 상당히 다른 방식으로 접근해야 하는 과제가 됩니다.
이 글에서는 AI 모델이 수학 문제를 해결하는 방식과 그 한계를 이해하고, 어떻게 하면 더 나은 답변을 유도할 수 있는지를 살펴볼게요.
1. AI 모델은 토큰을 통해 사고한다
AI 모델은 인간처럼 전체 문장을 한 번에 이해하고 계산하는 것이 아니에요. 대신, 입력된 문장을 토큰 단위로 쪼개고, 왼쪽에서 오른쪽으로 순차적으로 예측하는 방식으로 작동해요.
각각의 토큰은 모델 내부에서 여러 계층(layer)의 연산을 거치면서 다음 토큰을 예측하게 되죠. 중요한 점은, 각 토큰이 처리할 수 있는 연산량이 한정적이라는 거예요.
이해를 돕기 위해 간단한 수학 문제를 예로 들어볼게요.
문제:
Emily는 사과 3개와 오렌지 2개를 샀어요. 오렌지 한 개는 $2입니다. 총 비용은 $13입니다. 사과 한 개의 가격은 얼마인가요?
이 문제를 해결하는 방법에는 두 가지 방식이 있어요.
잘못된 접근: 단일 토큰에서 답을 도출
첫 번째 방식은 다음과 같아요.
"정답은 $3입니다."
이 방식의 문제는 모든 계산을 단 한 개의 토큰에서 처리하려 한다는 점이에요. AI 모델은 제한된 연산량을 가진 상태에서 한 번의 예측으로 정답을 도출하려고 시도하게 돼요.
이렇게 되면 모델이 답을 제대로 예측할 확률이 낮아지고, 복잡한 문제가 주어질 경우 오답을 낼 가능성이 커져요.
올바른 접근: 단계별 계산을 분배
더 나은 방식은 계산 과정을 여러 개의 토큰으로 나누어 진행하는 것이에요.
오렌지 2개의 총 비용은 $4입니다.
총 비용 $13에서 $4를 빼면 $9입니다.
사과 3개의 비용이 $9이므로, 사과 한 개의 가격은 $3입니다.
이렇게 중간 계산 과정을 포함하면 AI 모델이 점진적으로 정답을 유도할 수 있도록 도와줄 수 있어요.
모델이 한 번에 모든 연산을 수행하지 않고, 작은 단위의 계산을 진행하면서 점진적으로 정답을 도출할 수 있는 환경을 만들어주는 것이 핵심이에요.
2. AI 모델의 연산 구조: 한계와 해결 방법
AI 모델이 연산을 수행하는 방식은 한정된 층(layer)과 연산량을 가지고 있어요. 일반적인 최신 AI 모델들은 수십 개에서 수백 개의 층을 거쳐 연산을 진행하는데, 그 과정에서 각 토큰이 처리할 수 있는 정보량이 제한적이에요.
즉, AI 모델이 한 번의 연산으로 복잡한 문제를 해결하기 어렵다는 점을 염두에 둬야 해요.
해결 방법
- 토큰 분배: 문제 해결을 여러 개의 토큰으로 나누어 처리하도록 유도
- 단계별 접근: 중간 계산 단계를 포함하여 정답을 도출하도록 유도
- 도구 활용: 모델이 자체적으로 연산하는 대신, Python 코드 실행 같은 외부 도구를 사용하여 연산 수행
3. AI 모델이 연산을 수행하는 데 어려움을 겪는 사례
1) 모델이 단일 토큰에서 답을 도출하려 할 때
앞서 설명한 것처럼, 모델이 한 번의 연산으로 정답을 예측해야 하는 경우 오답이 나올 확률이 높아요.
예를 들어, 사과의 가격을 계산하는 문제에서 숫자를 크게 바꾸면 모델이 더 큰 어려움을 겪게 돼요.
Emily가 23개의 사과와 177개의 오렌지를 샀다면?
이제 모델이 더 많은 계산을 수행해야 하는데, 단일 토큰에서 정답을 도출하려 하면 오류가 발생할 가능성이 높아요.
2) 모델이 숫자를 셀 때
AI 모델은 기본적으로 숫자 세는 작업(counting)에 약해요.
예를 들어 다음과 같은 입력이 있다고 가정해볼게요.
"아래에 있는 점이 몇 개인가요?"
".................."
이 경우, AI 모델은 단일 토큰에서 모든 점을 세어야 하는데, 연산량이 부족해서 틀릴 가능성이 커요.
해결 방법: 코드 실행 활용
이런 문제를 해결하는 가장 좋은 방법은 모델이 자체적으로 계산하지 않고, 외부 도구(Python 코드 등)를 활용하게 하는 것이에요.
"코드를 사용하여 계산해 주세요."
이렇게 명령하면, 모델이 Python 코드를 작성하고 실행하여 정확한 결과를 도출할 수 있어요.
4. 실전 적용: AI 모델에게 더 나은 답변을 유도하는 법
AI 모델을 사용할 때 정확한 답변을 얻기 위해 우리가 할 수 있는 일은 다음과 같아요.
1) 계산 과정을 단계적으로 유도하기
- "중간 계산 과정을 포함하여 설명해 주세요."
- "하나씩 차근차근 풀어가 주세요."
이런 식으로 요청하면 모델이 한 번에 답을 도출하려 하기보다, 여러 토큰에 걸쳐 연산을 수행하게 돼요.
2) 코드 실행을 활용하기
- "Python 코드를 사용해 계산해 주세요."
- "코드를 실행해서 정확한 값을 구해 주세요."
AI 모델이 자체적으로 연산을 수행하지 않고, 프로그래밍 언어의 연산 기능을 활용할 수 있도록 유도하는 것이 더 정확한 답을 얻는 방법이에요.
5. AI 모델이 "생각하는" 방식 이해하기
AI 모델은 우리가 생각하는 것처럼 "직관적으로" 사고하는 것이 아니라, 토큰 단위로 순차적인 연산을 수행하며 답을 예측하는 방식으로 작동해요.
따라서, 정확한 답을 얻으려면 AI가 단계별로 연산을 수행할 수 있도록 돕는 것이 중요해요.
AI 모델은 한 번에 많은 연산을 수행할 수 없으므로 계산 과정을 나누는 것이 중요함
단일 토큰에서 답을 도출하려 하면 오류가 발생할 가능성이 높음
수학 문제나 숫자 세기 같은 작업에서는 Python 코드 같은 도구를 활용하는 것이 더 정확함
AI 모델을 더욱 효과적으로 활용하려면,
토큰 단위 연산 방식과 연산의 한계를 이해하고, 적절한 방식으로 문제를 제시하는 것이 중요해요!
'생성형 AI' 카테고리의 다른 글
대형 언어 모델의 세계로 - ChatGPT의 원리와 활용 (14) 토큰화 재검토 (0) | 2025.02.28 |
---|---|
대형 언어 모델의 세계로 - ChatGPT의 원리와 활용 (12) 자기인식 (2) | 2025.02.25 |
대형 언어 모델의 세계로 - ChatGPT의 원리와 활용 (11)환각, 도구, 메모리 (1) | 2025.02.24 |
대형 언어 모델의 세계로 - ChatGPT의 원리와 활용 (10)사후 학습 데이터 (0) | 2025.02.22 |
대형 언어 모델의 세계로 - ChatGPT의 원리와 활용 (9) 사전/사후 학습 (0) | 2025.02.21 |
댓글