AI 핵심 개념 (1): AI / 머신러닝 / 딥러닝 / LLM, 그리고 토큰·컨텍스트·비용#

AI 기술을 효과적으로 활용하기 위해서는 AI 관련 핵심 개념을 이해할 필요가 있습니다. 그래야 AI 서비스와 도구들이 어떤 원리로 동작하는지, 그리고 최신 뉴스와 트렌드가 왜 중요한지까지 함께 이해할 수 있기 때문입니다.
AI 기술은 지금도 빠른 속도로 발전하고 있어 관련 서비스와 도구가 계속 업데이트되고, 새로운 소식도 끊임없이 등장합니다. 따라서 기본 개념을 탄탄히 잡아두면 변화의 흐름을 더 잘 따라가고, AI 활용 역량도 꾸준히 키워 나갈 수 있습니다.
이 장의 앞부분은 AI, 머신러닝, 딥러닝, LLM이 서로 어떤 관계인지를 정리합니다. 뒷부분은 LLM을 서비스에 붙이거나 비용을 계산할 때 반드시 마주치는 네 가지 실무 개념, 즉 토큰, 컨텍스트 윈도우, 비용 구조, 임베딩을 다룹니다.
AI (Artificial Intelligence, 인공지능)#
인간의 지능을 모방하여 텍스트 / 이미지 / 영상 등을 인식하거나 생성하는 등의 작업을 수행하는 컴퓨터 시스템입니다. 또는 그러한 기술 자체를 의미하기도 하고, 그 기술을 구현하는 것과 관련된 학문 분야를 의미하기도 합니다. 1940년대부터 관련 논의가 시작되었고, 1956년에 “Artificial Intelligence"라는 명칭이 공식화되었습니다.
AI는 능력의 수준에 따라 Weak AI(약인공지능)와 Strong AI(강인공지능)로 구분되기도 합니다. Weak AI는 특정 작업이나 문제 해결에 한정된 AI를, Strong AI는 인간과 같은 수준의 지능과 의식을 가진 AI를 의미합니다. 이와 유사하게, ANI(Artificial Narrow Intelligence, 인공 특화 지능)와 AGI(Artificial General Intelligence, 인공 일반 지능)로도 분류할 수 있는데, ANI는 Weak AI와 비슷하고 AGI는 Strong AI와 비슷한 개념이라 보면 됩니다.
두 분류 체계는 사용되는 맥락이 조금 다릅니다. Weak / Strong은 상대적으로 오래전부터 논의되어 주로 철학적 관점에서 쓰였고, ANI / AGI는 기술적 관점에서 더 자주 사용됩니다. 이 책을 쓰는 시점에 우리가 일상적으로 접하는 대부분의 AI 서비스는 ANI에 해당하며, AGI의 등장을 언제로 볼 것인지는 여전히 다양한 의견이 존재합니다.
머신러닝(Machine Learning)과 딥러닝(Deep Learning)#
머신러닝은 모델을 설계하고 데이터를 이용해 그 모델을 학습시킨 뒤, 학습된 모델로 필요한 작업을 수행하는 기술이며 AI의 한 분야입니다.
예를 들어, (y = ax + b) 방정식과 이미 알고 있는 ((x_1, y_1)) 데이터가 주어졌을 때 (a)와 (b)를 구하고, 새로 주어진 (x_2)에 대해 (y_2) 값을 구하라는 문제가 있다고 가정해 봅시다. 이런 문제를 컴퓨터가 데이터로부터 규칙을 학습해 해결하도록 하는 것이 머신러닝입니다. (y = ax + b)처럼 입력 (x)와 출력 (y)의 관계를 표현하는 함수(또는 함수들의 집합)가 모델이 되고, 충분한 ((x, y)) 데이터로 학습해 적절한 파라미터(예: (a), (b))를 찾으면, 새로운 (x)가 주어졌을 때 (y)를 예측할 수 있게 됩니다.
딥러닝은 머신러닝의 하위 분야로서, 인간의 뇌 구조를 모방한 인공신경망(ANN, Artificial Neural Network)을 설계하고 학습시키는 기술입니다. 즉, 인공신경망을 기반으로 데이터로부터 복잡한 패턴을 학습하도록 만드는 머신러닝의 한 분야라고 볼 수 있습니다.
머신러닝의 학습 방법#
머신러닝의 학습 방법은 크게 4가지 정도로 분류됩니다.
지도 학습(Supervised Learning)#
입력과 출력 데이터 쌍을 이용하여 모델을 훈련시키는 학습 방식입니다. 예를 들어, 고양이 사진인지 아닌지 구분할 수 있는 모델을 만들기 위해, 고양이가 있는 사진과 없는 사진들로 학습시킬 수 있습니다. 이 경우에, 사진이 입력 값이고, 고양이가 있는지 없는지 여부가 출력 값이 됩니다. 또 다른 예로, 이메일 스팸 필터링 모델의 경우, 스팸 메일과 스팸이 아닌 메일로 학습시킬 수 있습니다.
비지도 학습(Unsupervised Learning)#
출력 없이 입력 데이터만 이용하여 모델을 훈련시키는 학습 방식입니다. 지도 학습에서는 입력에 대한 정답이 무엇인지를 학습시켜서, “이것은 A이고, 이것은 B입니다. 그렇다면 저것은 무엇일까요?“와 같은 문제를 해결하는 모델을 만드는 반면, 비지도 학습에서는 정답이 없는 데이터를 이용해 훈련시켜서, 비슷한 특성을 가진 데이터끼리 군집화하고(이것을 클러스터링이라고 합니다), “A, B, C 그룹이 있습니다. 이 데이터는 어느 그룹에 속하나요?“와 같은 문제를 해결하는 모델을 만듭니다. 예를 들어, 뉴스 데이터들을 학습시켜서 유사한 내용들을 묶어주는 기능이나, 상품 데이터들을 학습시켜서 연관 상품 또는 추천 상품을 제공해주는 기능을 구현할 때 활용할 수 있습니다.
준지도 학습(Semi-Supervised Learning)#
준지도 학습은 지도 학습과 비지도 학습을 결합한 것으로서, 일부 데이터는 출력값이 있고, 나머지는 없는 데이터를 함께 사용하여 모델을 훈련시키는 학습 방식입니다. 현실 세계의 데이터들은 원하는 대로 정제되어 있지 않은 경우가 많습니다. 예를 들어, 고양이 사진인지 아닌지 구분하는 모델을 만들려고 하는데, 모델을 훈련시키는 데에 사용하려는 사진 데이터 중 일부는 고양이의 유무가 기록되어 있지만, 나머지는 고양이의 유무를 알 수 없는 상황일 때 사용할 수 있습니다. 이 경우, 고양이 유무를 판별하기 위해 입력된 사진에 대하여, 해당 사진에 부합하는 데이터 클러스터를 찾고, 그 클러스터에 포함된 데이터들 중 출력 값이 있는 것들을 기반으로 하여 결과 값을 구할 수 있는 것이죠.
강화 학습(Reinforcement Learning)#
강화 학습은 머신러닝 모델에서 출력한 결과 값을 평가하는 과정을 반복하여 모델을 강화시키는 학습 방식입니다. 강아지 조련사가 강아지를 훈련시키는 과정에 비유될 수 있는데요, 조련사가 강아지에게 명령을 했을 때, 강아지의 반응이 맞는 방향이면 보상을 주고, 틀린 방향이면 보상을 주지 않는 일련의 행동을 반복하는 것과 유사합니다. 강화 학습은 다른 학습 방법들과 상호 배타적인 관계가 아닙니다. 예를 들어, 지도 학습을 통해 초기 모델을 훈련시킨 후, 강화 학습을 통해 그 모델을 추가 훈련하여 성능을 향상시킬 수 있습니다. 오늘날의 LLM이 “사람이 선호하는 답변"을 하도록 다듬는 과정에도 이런 방식이 쓰입니다.
LLM(Large Language Models, 대규모 언어 모델)#
LLM은 방대한 양의 텍스트 데이터를 학습하여 언어를 이해하고 생성할 수 있는 딥러닝 모델입니다. OpenAI의 GPT(Generative Pre-trained Transformer), 구글의 Gemini, 앤트로픽의 Claude(클로드) 등이 대표적인 LLM이라 볼 수 있습니다.
딥러닝은 인공신경망을 설계하고 학습시키는 기술이며, 인공신경망은 목적에 따라 여러 유형으로 나눌 수 있습니다. CNN(Convolutional Neural Networks, 합성곱 신경망), RNN(Recurrent Neural Networks, 순환 신경망), 트랜스포머(Transformers) 등이 대표적이며, 오늘날의 LLM은 주로 트랜스포머 기반으로 구현됩니다. CNN은 이미지처럼 2차원 데이터를 처리하는 데 자주 쓰이고, RNN과 트랜스포머는 자연어 처리, 음성 인식, 번역 등에 활용됩니다. 특히 자연어 처리 분야에서는 트랜스포머 기반 LLM이 주류가 되면서 RNN의 비중이 크게 줄었습니다.
LLM의 동작을 아주 단순하게 말하면 “지금까지의 글을 보고 다음에 올 조각을 예측하는 것” 입니다. 질문에 답하고, 코드를 쓰고, 번역을 하는 능력은 모두 이 예측을 아주 잘하게 된 결과입니다. 이 단순한 원리를 기억해 두면 뒤에 나오는 토큰, 컨텍스트 윈도우, 할루시네이션 같은 개념이 훨씬 자연스럽게 이해됩니다.
토큰(Token): LLM이 글을 세는 단위#
LLM은 글을 글자나 단어 단위가 아니라 토큰 단위로 읽고 씁니다. 토큰은 자주 등장하는 글자 묶음으로, 영어에서는 대략 단어 하나가 1개에서 2개의 토큰이 되고, 한국어는 같은 뜻의 문장이라도 영어보다 토큰 수가 더 많이 나오는 편입니다. 정확한 수는 모델마다 다르지만, “한국어 원고지 한 장(200자)이 대략 150~250 토큰"이라는 감각 정도면 실무에 충분합니다.
토큰이 중요한 이유는 두 가지입니다. 첫째, LLM이 한 번에 읽을 수 있는 양의 한계가 토큰으로 정해집니다(컨텍스트 윈도우). 둘째, API 사용 요금이 토큰 수로 계산됩니다(비용). 즉, 토큰은 LLM 세계의 “길이 단위"이자 “화폐 단위"입니다.
컨텍스트 윈도우(Context Window): 한 번에 볼 수 있는 범위#
컨텍스트 윈도우는 모델이 한 번의 요청에서 읽고 쓸 수 있는 토큰의 최대 범위입니다. 사용자의 질문뿐 아니라, 시스템 지침, 이전 대화 기록, 함께 넣어 준 문서, 도구 호출 결과, 그리고 모델이 생성하는 답변까지 전부 이 범위 안에 들어가야 합니다.
컨텍스트 윈도우는 세대가 지날수록 커져 왔지만, “크다"와 “잘 쓴다"는 다른 문제입니다. 윈도우가 크다고 해서 아무 문서나 다 넣으면 모델이 핵심을 놓치기 쉽고 비용도 늘어납니다. 그래서 필요한 정보를 필요한 만큼 골라 넣는 기술이 중요해졌고, 이 책의 3장에서 컨텍스트 엔지니어링이라는 이름으로 다룹니다.
비용은 토큰 단위로 계산됩니다#
API로 LLM을 쓸 때 요금은 보통 입력 토큰과 출력 토큰에 각각 다른 단가를 곱해 계산됩니다. 출력 토큰이 입력 토큰보다 몇 배 비싼 것이 일반적입니다. 그리고 대부분의 제공자는 같은 세대 안에서 성능과 가격이 다른 여러 등급의 모델(최상위 / 균형형 / 경량)을 함께 제공합니다.
여기에 한 가지 더 알아 두어야 할 것이 프롬프트 캐싱입니다. 요청의 앞부분(시스템 지침, 긴 참고 문서처럼 매번 똑같이 반복되는 부분)을 제공자가 캐시해 두고, 다음 요청에서 그 부분이 같으면 훨씬 싼 단가로 계산해 주는 기능입니다. 에이전트처럼 같은 지침을 수십 번 반복해 보내는 구조에서는 이 캐시가 비용을 좌우합니다. 구체적인 설계는 실행 편의 “제품에 AI 기능 넣기"에서 다룹니다.
채팅 서비스를 월 구독으로 쓰는 것과 API를 종량제로 쓰는 것은 완전히 다른 요금 체계라는 점도 기억해 두기 바랍니다. 구독은 “정액으로 많이 쓰는 개인"에게 유리하고, API는 “내 제품 안에서 사용자 대신 호출하는 경우"에만 선택지가 됩니다. 이 차이는 1인 스타트업의 비용 구조를 결정하므로 실행 편에서 따로 다룹니다.
임베딩(Embedding): 의미를 숫자로 바꾸기#
마지막으로, 다음 장의 RAG를 이해하려면 임베딩을 알아야 합니다. 임베딩은 글(또는 이미지)을 수백에서 수천 개의 숫자로 이루어진 벡터로 바꾼 것입니다. 중요한 성질은 의미가 비슷한 글은 벡터도 가깝다는 점입니다. “환불 규정"이라는 질문과 “반품 시 환급 절차"라는 문서는 단어가 다르지만 임베딩 공간에서는 가까이 놓입니다.
이 성질 덕분에 “질문과 의미가 가장 가까운 문서 조각"을 수학적으로 찾을 수 있습니다. 문서들을 미리 잘게 나누어 임베딩으로 바꿔 저장해 두고(이런 저장소를 벡터 데이터베이스라고 부릅니다), 질문이 들어오면 질문의 임베딩과 가까운 조각들을 꺼내 모델에게 함께 보여 주는 것, 이것이 다음 장에서 설명할 RAG의 뼈대입니다. 임베딩 생성 역시 전용 모델과 API로 제공되며, 텍스트 생성보다 훨씬 저렴합니다.
정리#
이 장에서 기억할 것은 다섯 가지입니다.
- LLM은 딥러닝의 한 갈래로, “다음 조각을 예측"하는 모델입니다.
- 토큰은 LLM의 길이 단위이자 화폐 단위입니다.
- 컨텍스트 윈도우는 한 번에 볼 수 있는 범위이고, 그 안에 지침, 기록, 문서, 도구 결과, 답변이 모두 들어가야 합니다.
- 비용은 입력 / 출력 토큰 단가와 캐시 여부로 결정됩니다.
- 임베딩은 의미를 벡터로 바꿔 “비슷한 것 찾기"를 가능하게 하며, RAG의 기반입니다.
다음 장에서는 이 기반 위에서, 사전 학습된 LLM을 내 서비스의 지식과 도구에 연결하는 방법인 Fine-tuning, RAG, Function Calling, MCP를 다룹니다.