HOBBIT을 사용한 최적화 - 세미나 발표

우선 큰 타이틀이 Embedded + AI 니까.. 논문을 작성하기 좋은 방향으로 주제를 설정하는 편이 좋아보입니다.
TinyML으로도 충분히 좋은 주제를 설정할 수 있지만, 최신 트렌드인 llm을 엮으면 좀 더 좋은 주제가 나오지 않을까 싶네요.
프로젝트를 수행하고 그걸 바탕으로 논문을 작성해야 하니, 흥미를 가지고 진행할 수 있는 주제로 설정하면 더 좋겠습니다.
어떤 주제를 설정할 지는 잘 모르겠지만.. 엣지 디바이스에서 llm을 돌릴 수 있다면 선택할 수 있는 주제도 많아집니다.

요즘 가장 트렌디한 주제는 LLM입니다.
Embedded + AI 에서는 Physical AI가 가장 먼저 떠오르네요.
제가 생각한 주제는 "RAM, VRAM 등 컴퓨팅 리소스가 한정된 Edge Device에서 LLM을 실행시키고, 그걸 바탕으로 새로운 가치를 창출해 보는 것"입니다.
우선 Edge Device에서 서버 통신 없이 llm을 돌릴 수 있으니 데이터가 외부로 나가지 않아 민감한 데이터를 다룰 수 있겠죠.
네트워크 오버헤드가 없으니 실시간성이 중요한 프로젝트도 고려해 볼 수 있습니다.
Physical AI 쪽으로 좀 더 나아가면, 센서를 상황을 읽고 llm으로 판단하는것에 추가로 하드웨어를 제어하는 VLA 까지 생각해 볼 수 있죠.
연구 주제는 Edge Device에서 서버 통신 없이 llm을 실행시키는 것이고, 프로젝트 주제도 생각해 봐야죠.

컴퓨팅 리소스가 한정된 환경에서 어떻게 무거운 llm을 실행시키는지에 대해서는 최근 다양한 논문들이 나오고 있습니다.
우선 하드웨어는 Jetson Origin Nano 8GB와 NVMe SSD를 사용한다고 가정하겠습니다.
라즈베리파이로도 llm을 돌리는게 가능하긴 하지만, 제가 정독한 논문은 모두 GPU 사용을 전제했습니다.
조사해 봤을 때, 불가능하진 않습니다. 다만 신경써야 할 부분이 많아요. 결과가 잘 나올거라고 장담할 수도 없습니다.

우선 제가 찾아본 논문입니다.
MoE 관련 논문과, HOBBIT 관련 논문을 정독했습니다.
이 논문들 말고도 여러 논문과 연구가 있는데, 제가 생각했을 때 가장 트렌디하고 좋은 방법 두 가지를 선정했습니다.

각각 어떤 내용인지 간단하게 말씀드리겠습니다.
우선 MoE는 아키텍처입니다. 즉, MoE 아키텍처로 설계된 모델이 있습니다.
Mixtral 8x7B, DeepSeek-V3, GPT-4, Qwen2-1.5B 이 모델들은 처음 설계 단계부터 MoE로 설계되고 학습됐습니다.
모델이 추론 할 때, 모든 파라미터를 사용하지 않습니다. 토큰에 따라서 활성화되는 파라미터가 다르다는거죠.
그러니 모델의 설계 자체를 여러 Expert가 중첩된 형태로 설계하고, 앞단에 라우터를 둬서 토큰을 처리할 때 라우터가 토큰을 어떤 Expert로 보낼지 결정합니다.
이렇게 하면 추론 시 모델의 모든 파라미터를 사용하지 않고, 활성화된 파라미터만 사용하게 되어 연산 비용이 줄어듧니다.
다만, MoE 아키텍처를 사용하더라도 모든 파라미터를 VRAM에 올려둬야 해서 Edge Device에서는 MoE 아키텍처로 설계된 llm을 실행하기 힘들죠.

그래서 HOBBIT 이라는 Inference System이 등장했습니다.
모든 Expert의 파라미터를 여러 버전으로 양자화 해 두고, 중요하다고 판단되는 Expert의 파라미터만 VRAM에 올려서 작업한다.
나머지 파라미터들은 RAM이나 SSD같은 보조기억장치에 저장해두고, 필요할 때 VRAM으로 옮겨서 사용하는 전략을 사용합니다.
이렇게 되면 VRAM이 부족한 Edge Device에서도 llm을 실행시킬 수 있습니다.
Mixtral8x7B 모델의 파라미터는 47B개 입니다. 이걸 FP16 원본으로 표현하면 93GB 정도고, 2-bit 양자화로 표현하면 15GB 정도입니다.
8GB VRAM에 다 들어갈 수 없으니, VRAM에는 모든 토큰을 처리할 때 공통적으로 사용되는 파라미터와 정말 자주 쓰이는 Expert 파라미터만 올려두고 나머지 Expert 파라미터는 SSD에 저장합니다.
우선 이 모델을 8GB VRAM 환경에서 돌려보는것만으로도 충분한 도전이 되겠네요.
메모리 여유가 좀 있는 Phi-3.5-MoE 모델이나 DeepSeek-V2-Lite 모델을 사용한다면 RAG나 LoRA까지 활용해 볼 수 있겠습니다.

우선 HOBBIT 자체가 Llama.cpp을 기반으로 수정된 결과물입니다.
HOBBIT 외에도 MoE Infinity 등 Edge Device에서 llm을 수행하는 방법이 여러 가지 있으니.. 프로젝트 구현 단계에서 참고해 보면 좋겠습니다.
사실 뭘 할지가 딱 정해진다면, 활성화되는 Expert도 적지 않을까?
테스틑 해 봐야 하겠지만.. 8개 중 2개 Expert만 사용된다면 8GB VRAM에 다 넣어서 사용할 수 있지 않을까?

프로젝트 아키텍처입니다.
제공받은 M5Stack Core2로 주변 환경을 인식합니다. 필요 시 카메라도 추가하구요.
TinyML은 1차 관문입니다. 여기서 처리될 수 있다면 여기서 바로 처리합니다.
미리 정의된 키워드, 이상치 등을 처리할 수 있습니다.
TinyML로 처리하기 힘든 부분은 Edge Device에서 실행되는 llm으로 넘깁니다.
필요 시 여기서 RAG를 붙여 메뉴얼이나 과거 이력을 참고해 응답을 생성합니다.
새로운 아키텍처를 고안한거니까.. 이 아키텍처 자체로도 논문을 작성할 수 있지 않을까 싶네요.

HOBBIT 논문은 Llama.cpp 기반으로 8000줄 정도를 수정해서 만든 Inference System인데, 소스코드가 공개되지 않은 것으로 보입니다.
그러니 구현 단계에서 여러 논문을 찾아보고, 오픈소스로 공개된 Llama.cpp을 수정해야 할 수도 있습니다.
논문은 Jetson 32GB모델을 사용합니다. 따라서 저희가 사용하는 8GB에서도 제대로 작동하는지 확인이 필요합니다.
우선은 GPU가 붙은 노트북에서 RAM을 제한하고 모델을 돌려 보는 식으로 테스트 해 볼 수 있겠네요.

굳이 Edge Device에서 llm을 돌려보는걸 주제로 설정한 이유는, "RAG를 엮거나 LoRA를 엮어서 Edge Device에서 더 많은 작업을 수행하도록 개발할 수 있으니 더 많은 가치를 창출할 수 있어서" 입니다.
아직 프로젝트 주제가 정해지지 않았는데, 어떤 주제로 프로젝트를 진행하더라도 llm을 돌릴 수 있다면 선택의 폭이 넓어지죠.
이건 단점이자 장점이 될 수 있는데, 논문을 많이 보고 소스코드 구현에 힘을 쏟는 만큼 최적화 할 수 있습니다.
Domain Prunning, MoE LoRA 등 적용할 수 있는 요소들이 많습니다.

마지막으로, 강화학습과 llm을 연결한다면, MoE HOBBIT에서 Expert를 선택하는 부분엣 강화학습을 적용해 학습시킬 수 있겠네요.
자동차를 예로 들면, 30m 앞에서 좌회전하라는 명령은 llm이 만들어내고, 실제로 하드웨어를 제어하는 작업은 RL Agent가 담당하는 식으로 분리하는 구조도 생각할 수 있습니다.
'💬 기록' 카테고리의 다른 글
| PACK-UP v2.0 온보딩 - 세미나 발표 (0) | 2026.01.02 |
|---|---|
| 프론트엔드 아키텍처와 Feature-Sliced Design (2) (0) | 2025.12.02 |
| [eziwiki] Static Site Genearator with Markdown (0) | 2025.11.28 |
| Kakao Tech Campus 최종발표 - UniScope (0) | 2025.11.11 |
| 프론트엔드 아키텍처와 Feature-Sliced Design (1) (1) | 2025.08.31 |
댓글
이 글 공유하기
다른 글
-
PACK-UP v2.0 온보딩 - 세미나 발표
PACK-UP v2.0 온보딩 - 세미나 발표
2026.01.02 -
프론트엔드 아키텍처와 Feature-Sliced Design (2)
프론트엔드 아키텍처와 Feature-Sliced Design (2)
2025.12.02 -
[eziwiki] Static Site Genearator with Markdown
[eziwiki] Static Site Genearator with Markdown
2025.11.28 -
Kakao Tech Campus 최종발표 - UniScope
Kakao Tech Campus 최종발표 - UniScope
2025.11.11