채팅창 뒤에 숨겨진 복잡한 AI 서비스 구조
사용자가 직접 보는 채팅창은 AI 서비스의 일부에 불과하며, 그 뒤에는 여러 부품이 복합적으로 작동한다.
입력을 받아 처리하는 화면, 대화 내용을 보관하는 프로그램, 필요한 파일을 읽는 도구, 그리고 입력값을 바탕으로 실제 계산을 수행하는 모형 등이 결합되어 하나의 서비스를 구성한다. 같은 서비스 안에서도 어떤 모형을 선택하느냐에 따라 다른 모형이 교체되거나 병행 사용되기도 한다.
AI 서비스는 보이는 채팅창 너머 다양한 모형과 주변 체계의 결합으로 이뤄진다.
사용자가 직접 보는 채팅창은 AI 서비스의 일부에 불과하며, 그 뒤에는 여러 부품이 복합적으로 작동한다.
입력을 받아 처리하는 화면, 대화 내용을 보관하는 프로그램, 필요한 파일을 읽는 도구, 그리고 입력값을 바탕으로 실제 계산을 수행하는 모형 등이 결합되어 하나의 서비스를 구성한다. 같은 서비스 안에서도 어떤 모형을 선택하느냐에 따라 다른 모형이 교체되거나 병행 사용되기도 한다.
신경망 모형은 계산 순서를 정의하는 구조와 학습을 통해 결정된 수많은 숫자들이 결합된 형태로 이루어진다.
여기서 파라미터는 계산 과정에서 값을 조절하는 설정값으로 기능하며, 특정 지식이 하나의 숫자에 담기는 것이 아니라 여러 숫자의 복합적인 계산을 통해 최종 결과가 도출되는 방식이다.
AI 모형을 다운로드할 때 핵심 내용물로 포함되는 것이 바로 학습된 수치들이다. 이는 실무에서 흔히 웨이트, 우리말로는 가중치라고 불리는 파일에 저장된다.
따라서 모델을 다운받는 과정은 단순히 계산 구조를 설정하는 것을 넘어, 이 웨이트 파일을 함께 가져와야 하는 작업이다. 모델 실행 시 웨이트 파일만 필요한 경우도 있고, 전체 묶음이 필요한 경우도 있다.
AI 모형에서 '7B'와 같은 표기는 파라미터가 대략 70억 개라는 의미이며, 이는 파일의 용량을 나타내는 단위가 아니다.
양자화는 모델의 정밀도(비트 수)를 조절하여 파일 크기를 줄이는 기법이다. 예를 들어 4비트 양자화는 파라미터의 개수는 유지한 채 각 값의 표현 정밀도만 낮추는 방식으로, 모델 크기 축소가 반드시 계산 속도 향상으로 이어지지는 않으며, 실행 프로그램의 지원이 필수적이다.
실행 프로그램이 필요한 내용을 읽어 계산 장치가 사용할 수 있는 메모리에 준비해야만 비로소 계산이 가능하다. 실행 엔진(런타임)은 웨이트 파일을 해석하고 연산을 수행하는 소프트웨어적 역할을 맡는다.
언어 모형은 토큰 단위로, 이미지 모형은 수치 변화 반복을 통해 결과물을 생성한다. 하네스라는 주변 실행 체계는 모형 호출, 도구 연결, 상태 관리 등을 담당하여 전체 추론 과정을 지원한다.
AI 모형 자체는 도구와 연결될 때 실질적인 작업을 수행할 수 있다. 주변의 터미널이나 브라우저 같은 도구들이 모형의 출력을 받아 실제 작업으로 변환한다.
사용자의 요청이 들어오면 모형이 검색 도구를 실행하고, 그 결과를 다시 모형에 전달하는 반복적인 구조로 작동한다. 따라서 같은 모형이라도 도구 연결 방식이나 입출력 처리 방식에 따라 사용자의 경험이 크게 달라진다.
AI 모형의 능력과 그 능력을 실제로 활용하는 시스템을 함께 이해해야 한다. 시스템 램은 범용적인 작업 공간으로 사용되는 반면, V램은 GPU 전용 메모리로 작동한다.
엔비디아 RTX 4090의 24GB V램과 애플 M3 울트라의 통합 메모리(UMA) 구조는 각각 다른 특성을 가진다. 또한, 계산 중 발생하는 중간 결과(KV 캐시)가 메모리에 쌓이므로, 모형 크기만큼의 공간이 필요하다.
모형 전체를 한 번에 메모리에 담지 못해도 실행 자체는 가능하다. 그러나 단순히 실행 가능하다고 해서 쾌적한 사용을 보장하는 것은 아니다.
메모리가 부족할 때는 오프로딩 방식을 통해 계산의 일부를 시스템 램이나 CPU로 분담시킬 수 있다. 또한, 상주(Residency)는 모형을 메모리에 유지하여 요청이 있을 때마다 다시 읽어오는 시간을 줄여 성능을 향상시키는 기법이다.
메모리 용량(물탱크)과 데이터 전송 속도(관)는 서로 다른 사양으로, 연산량에 따라 병목 현상이 발생할 수 있어 효율적인 자원 배치가 필수적이다.
이 모형에서는 라우터가 특정 갈래를 선택하면 해당 갈래에 속한 파라미터만 계산에 참여한다. '전체 파라미터'는 모형이 보유한 총 수치의 양을 의미하고, '활성 파라미터'는 특정 계산에 실제로 참여하는 부분을 가리킨다.
활성 파라미터의 수가 적더라도, 필요한 자료를 이동시키는 비용이 크다면 실행 속도가 저하될 수 있으므로 이 두 가지 개념을 구분하여 이해하는 것이 중요하다.
동일한 AI 이미지 생성 작업을 M3 울트라와 RTX 4090으로 비교했을 때, M3 울트라는 약 239초가 소요됐다.
RTX 4090은 처음 준비 과정을 포함한 초기 실행에서 약 300초 이상 걸려 M3 울트라보다 더 오래 걸리는 결과를 보였다. 그러나 준비된 상태로 이어서 실행했을 때는 약 33초로 시간이 크게 단축되어, 단순한 하드웨어 수치보다 모형 최적화와 실행 환경이 실제 성능에 미치는 영향이 크다는 것을 보여준다.
엔비디아는 쿠다(CUDA)를 중심으로 광범위한 연산 도구, 개발 도구, 여러 프레임워크와의 연결을 구축하여 최적화된 생태계를 제공한다.
반면 애플은 일부 계산 경로에서 CPU를 활용하거나 높은 정밀도를 사용하는 등 엔비디아와 다른 연산 경로를 따른다. 이처럼 새로운 모형을 가져왔을 때 이미 준비된 실행 방법을 사용할 수 있는지 여부가 실제 작업 효율성에 큰 영향을 미친다.
UMA(통합 메모리)는 메모리 공유 구조를 의미하고, 쿠다는 엔비디아 장비에서 계산을 구현하고 실행하는 소프트웨어 기반 기술로, 이 둘은 서로 다른 종류의 항목이다. 따라서 AI 시스템을 비교할 때는 메모리 구조, 연산 장치, 실행 소프트웨어가 함께 구성된 시스템 전체를 보아야 한다.
장비별 작업 효율은 모형 크기, 메모리의 대기 상태, 프로그램 정책 등 여러 요인에 따라 다르게 결정된다. 여러 장비를 연결한 시스템은 메모리를 물리적으로 합치는 것이 아니라, 작업을 효율적으로 배분하는 방식으로 작동한다.
AI 모형이나 컴퓨터를 선택할 때는 네 가지 질문을 던져보는 것이 좋다. 첫째, 작업에 필요한 메모리 공간을 충분히 확보할 수 있는가? 둘째, 실행 프로그램이 해당 모형과 연산을 제대로 지원하는가?
셋째, 처음 사용할 때와 준비된 상태로 다시 사용할 때 각각 얼마나 시간이 걸리는가? 넷째, 그 시간이 자신이 하려는 일에 충분히 실용적인가? 이 질문들을 통해 AI 시스템의 실질적인 효율성을 평가할 수 있다.
Answers come from the transcript, with the exact spot cited.
Want the next article from 대두족장네?
When 대두족장네 publishes, we'll write it up like the one you just read and email it to you.
대두족장네 published 14 in the last 7 days.
AI's Power Problem: 4 Stocks to Electrify GrowthThe Motley Fool16 hours ago · 10:27 · 348 views · Created 15 hours ago
William the Conqueror's Sons Divided EnglandKings and Generalsyesterday · 19:17 · 73.4K views · Created 16 hours ago
Why Losing Weight Is More Complex Than 'Eat Less, Move More'Institute of Human Anatomy23 hours ago · 21:18 · 79.4K views · Created 16 hours ago