📱

Get Our Mobile App

Take your business learning on the go!

Download on the App StoreGet it on Google Play

AI판 LK-99 사실이었다...지금 사용 가능 | Microsoft 1-bit으로 학습한 BitNet | 경쟁 모델보다 앞선 성능에도, 겨우 400MB 사용, CPU로 구동 가능

안될공학 - IT 테크 신기술12:19

Transcription

그러면 여기 보시면은요, 위에 지금 이게 CPU로 돌아가고 있는 거거든요. 라마 CRI라고 하는 거 보이시죠? 오직 CPU만 뜹니다. GPU에 뜬 게 없어요. GPU에 뜬 게 아예 없고.

네, 여러분 반갑습니다. 에러입니다. 마이크로소프트에서 파라미터 한 개당 원 빛, 정확하게는 1.58 빛만 사용하는 그야말로 메모리를 엄청나게 안 쓰고도 돌릴 수 있는 LRM 있다고 해서 제가 지난번에 설명을 드렸는데요. 이거를 공개를 했습니다. 저도 직접 설치해서 사용을 해 봤고요. 돈 올라온 것은 이게 메모리가 워낙 적다 보니까 GPU를 아예 안 씁니다. CPU만 있어도 그냥 셀생 잘 돌아갑니다. 진짜 온바이스 AI 시대가 오는 것 같은데, 처음에는 마이크로소프트가 원, LRM 뭐 이런 식으로 비트넷이라는 표현을 하면서 많은 사람들의 의구심을 가지고 있었는데, 사실 2023년도 10월 17일 이때부터 비트넷이라는 이름으로 원 트랜스포머 얘기를 했고요. 그 이후에 계속 1.58빈 얘기를 하고 이때 제가 영상을 냈죠. 논문을 계속 내면서 결국은 20억의 파라미터를 가지는 비트넷을 공개를 한 겁니다. 여러분도 지금 바로 설치를 하실 수가 있고요. 저도 시원하는 모습들을 보여 드리도록 하고, 그동안에는 추론할 때 플로팅 포인트 16이다, 아니면은 8비트를 사용해야 된다 이런 말들이 많았는데, 한 개당 평균 1.58비, 많이 해발 두 빛이라는 거죠. 그 두 빛을 사용해도 어느 정도의 성능을 올릴 수 있는 LNM이 등장을 한 거니까 스마트폰에 엄청나게 메모리를 많이 때려넣지 않는다 하더라도 CPU 자원으로 돌릴 수 있다라는 게 굉장히 큰 핵심입니다.

온디바이스 AI의 출연이 계속 늦어지는 것 중에 하나가 이렇게 컴퓨팅 리소스 같은 것들이 많이 필요로 하기 때문에 기존에 있는 이러한 스마트폰 같은 디바이스들을 사용하기에는 너무나도 성능이 부족하다라는 점이 있었는데요. 이 LLM의 특징이 뭐고, 여기에 한정된 것인지, 확정되어 나갈 것인지, 진짜로 온 디바이스 AI가 빠르게 구현할 건지를, 그리고 마이크로소프트의 주도로 갈 것인지를 좀 살펴보도록 할게요. 오늘 제가 목 상태가 좀 안 좋아서 듣기 좀 거북하실 수 있을 텐데, 그래도 이 소식은 전달 들어야 할 것 같아서 정리 한번 해 보겠습니다.

자, 이번에 내면서 아예 테크니컬 리포트를 이렇게 내 주었는데요. 자세한 내용들이 상당히 많이 담겨 있는데, 자, 이게 제일 메인입니다. 비교하는 모듈들이 다 0.5빌리언부터 5빌리언부터 3빌리언까지, 그러니까 10억 개에서 30억 개의 파라미터를 가지는 작은 언어 모델을 기준으로 해서 비교를 했는데, 많은 분들이 요즘 프론티어 모델이 뭐 몇백억, 몇 천억 개가 가고 최근에 제미나는 원 트릴리언 가고 뭐 이런 얘기가 나오니까 너무 큰 거에 대해서만 생각하시는데, 결국은 이렇게 작게 만들어진 것들이 각각의 도메인에서 파고 들면서 이런 H엣 디바이스에 탁탁탁 탑재돼서 잘 구동이 될 수 있어야지만이 온 디바이스 AI 세상이 열리는 거거든요. 그런 관점에서 봤을 때, 물론 프론티어 모델들보다는 이러한 것들이 아직 성능이 안 되지만, 기존에 나와 있는 크 2.5, 1.5 빌리언이라든가 이거 굉장히 좋다라고 알려져 있었는데, 혹은 라마 3.2 1빌리언 이런 애들보다도 메모리 사용량은 압도적으로 낮죠. 코엔 2.5에 5억 개짜리 파라미터를 가진 이 모델보다도 더 작습니다. 그런데 성능은 지금 나와 있는 1.5 빌리언보다도 더 좋다라고 나와 있고, 3빌리언보다는 조금 떨어지지만 굉장히 잘 된다는 걸 볼 수가 있죠. 이게 구체적인 수치를 보면 더 놀라운 게 보세요. 라마 3.2 1빌리언, 1빌리언, 2빌리언 이런 애들 전부 다 메모리를 기본적으로 필요로 하는 것이 2GB부터 4.8GB까지 갑니다. 이렇다 보니까 최근에 스마트폰들의 메모리 양을 굉장히 2GB에서 4GB씩 확확 늘려줬잖아요. 그 짠돌이였던, 짠돌이였던 애플도 메모리를 더 늘려서 확장하고 있는 것이란 온 디바이스 AI를 구현을 해야 되고, 애플 인텔리전스 같은 것들도 제치T와 연동한 것도 있지만, 애플 자체적으로 개발한 작은 모델들을 돌릴 수 있기 위해서는 아무리 작은 모델이라도 이렇게 기본적으로 메모리가 많이 드는 거였는데, 이번에 마이크로소프트가 공개한 이 1.58에 해당하는 이 빌리언 모델은 400M밖에 안 쓴다는 겁니다. 이 400M 정도면은 진짜 추가로 메모리가 더 필요하지 않겠어요? 기존에 있는 핸드셋이라든가, 아니면 VR 기기라든가, 스마트폰 그리고 노트북까지 다양한 기기에서 메모리를 그렇게 많이 요구하지 않더라도 어느 정도의 LLM 구동을 할 수 있다라는 거. 이 특징이 굉장히 놀랐다라는 거죠.

처음에 이거 나왔을 때 전부 다 이거 거짓말이라고 했어요. 야, 이제 마이크로소프트도 아, 구라를 까네, 막 이런 여론도 있었는데 이걸 실제로 공개를 한 겁니다. 더군다나 얘를 트레이닝할 때 사용했던 토큰 수가 4트릴리언으로 라마보다도 작은 수준으로, 그렇게 엄청나게 많이 트레인을 한 것도 아니에요. 아무래도 메모리가 적으니까 압도적으로 에너지가 덜 쓰이게 되는 거고, 지금 라마 3.2 1빌리언과 비교하면은 1/10 수준이죠. 에너지와 성능, 그리고 메모리 용량도 적게 쓰니까 엔지니어 입장에서는 진짜로 야, 어떻게 이렇게 다 체적하지 싶은 부분도 있죠. 레이턴시도 CPU 기준으로 했을 때에 정말 얼마 안 걸립니다. 제일 빠르죠. 그래서 대부분의 다양한 벤치마크에서 준수한 성능을 가지고 있고, 일부 벤치마크에서 조금 떨어지는 부분들이 있지만, 대부분 다 준수하다고 보시면 돼요. GSM 8K 같은 것도 1등을 달리고 있고, 크와 비교해서도 성능이 상당히 잘 나오는 거 보이시죠? 크 2.5가 사실 최적화를 잘했다. 왜냐면은 인트 4 이런 모델들을 냈거든요. 4비트를 쓰는 모델입니다. 이런 경우에는 700M, 700MB인데, 이것도 굉장히 놀랍다고 했는데, 얘보다 성능이 좋으면서도 400M밖에 안 쓴다라는 부분들. 제가 지금 사용해 봤던 거는 M2 맥북 에어를 사용해서 했는데, 애플 M2 울트라를 기준으로 해서 평가를 한 것도 있더라고요. 이거는 뭘 보여 주려고 하느냐? 라마에 비해서 비트넷을 사용했을 때, 세로축이 초당 토큰 수거든요. 우리가 보통 채비 나오면은 한 10 정도 수준이라고 보시면 돼요. 10 정도 수준인데, 이 모델 사이즈가 이렇게 낮추면 낮출수록 굉장히 빠르게 얘기가 되겠죠. 심지어 몇 백 토큰까지 나올 수 있습니다. 이거는 거의 1초에 몇 페이지가 이렇게 나오는 수준이죠. 굉장히 많은 게 쏟아지는 건데, 이 정도로 빠르게 동작할 수 있다는 걸 얘기를 하는 거고, 실제로 보시면은 1.58의 라지 모델, 3빌리언 모델 여러 가지로 나눠져 있습니다. 그래서 분석해 놓은 걸 보면은 CPU에서의 추론을 하게끔 지원을 하고 있는데, 암 CPU 기준으로 최대 다섯 배까지 속도가 빨라진다라고 하는 얘기고, 에너지 컨섬션이 절반에서 70%까지 바뀌어진다. X86 기준으로는 어떻게 된다? 또 최대 여섯 배까지도 이렇게 올라간다. 전부 다 전체적으로 준수하게 되죠.

대부분 GitHub에서 이렇게 차례차례 설명하듯이 여기 있는 거 다 따라가면 돼요. 그냥 뭐 바이썬 3.9 이상이고 이런 거 설치를 해 가지고 설치하는 방법, 클론 당겨 갖고 리타먼트로 설치를 하고, 실제 내용들 컴파일해서 바이썬으로 이렇게 실행을 해 주면은 되는데, 제가 이렇게 몇 가지 테스트를 해 봤어요. 이게 한글이 잘 안 먹히던데, 옆에 활성 상태를 보여 드리면서 이 CPU가 가장 점유율이 많이 되는 걸 볼 수가 있는데, 예를 들어 "tell me the most brilliant strategy that 도널드 frequently use when he negotiate" 이렇게 쳐 볼게요. 그러면 여기 보시면은요, 위에 지금 이게 CPU로 돌아가고 있는 거거든요. 라마 CRI라고 하는 거 보이시죠? 오직 CPU만 뜹니다. GPU에 뜬 게 없어요. GPU에 뜬 게 아예 없고, 지금 벌써 끝났죠? 키프 going잉 그러면은 계속 세 개, 네 개, 그다음에 다섯 개까지 이렇게 쭉 얘기를 해 준 거 봅니다. 아까 잠깐 뜨는 거 뭐셨습니까? 라마 CLI라고 하는 거. 이게 토큰 제한이 있는지 계속 얘기를 하진 않더라고요. 예를 들어 "answer the questions till you finish the whole text." 이 이 문구를 천천히 살펴보시면 아시겠지만, 굉장히 준수하게 잘 나옵니다. 예를 들어 "in my mind, while not always explicitly stated" 정확하게 얘기하지 않고 트럼프는 항상 어떻게 표현한다? 자기의 욕망을 둘 다 도움이 되는 쪽으로 하는 걸로, 한글도 되나에서 테스트를 해 봤는데, AI가 앞으로 어떻게 발전될까? 근데 약간 섞이면서 이렇게 좀 에러가 뜨더라고요. 요런 부분을 아직 최적화가 안 돼 있는 것으로 보입니다. 그렇지만 "What is the most important thing you should keep" 이렇게 쳐 볼게요. 가장 중요한 게 뭘까? 아테크 유튜버가 필요한 거는 가장 중요한 거는 패션이 중요하다 하거든요. 그리고 테크놀로지에 대한 커먼트. 아, 이 두 가지는 제가 또 남다르죠. 그러면서 "consistent creation and engagement with the community." 자, 제 딥시크 영상 올리신 거 보시면은 이 consistent creation이 뭔지를 아실 수가 있습니다. 꽤나 잘 대답을 하죠.

처음에 이 논문이 나왔을 때, 그러니까 1.58비로 된다 했을 때 거짓말이라고 했던 얘기들이 많을 수밖에 없는 게 지금 INT4 같은 것도 잘 못 써요. 사실 그거 쓰더라도 완전 망가진다라는 얘기 되게 많았거든요. 근데 지금 뭐 한두 빛으로 학습을 시켰다 뭐 이런 얘기까지 나오니까 좀 이해가 잘 안 되는 거죠. 근데 이게 네이티브라고 표현한 이유가 있습니다. 스켈링 네이티브 원 LRM이라고 표현을 한 이유가 있는데, 왜 네이티브라고 했느냐? 원래부터 그렇게 설계되었다. 원래부터 학습되었다. 이런 얘기를 하는 건데, 바로 처음부터 원비트로 학습을 했다라는 걸 강조하기 위해서 네이티브라는 표현을 쓴 거예요. 우리가 보통 원빛, LLM 이렇게 얘기를 하면은 자, 학습할 때는 일단은 보통 이미 거대한 모델로 학습을 해 가지고 이거를 원비트로 압축하는 방식이 있을 거고, 그게 아니라 애초부터 원비트 수준으로 계속 설계하고 학습할 때 썼다라는 방식, 두 가지로 나눌 수 있는데, 후자의 경우에는 이게 접근이 잘 안 됐던 게 애초부터 뭐가 학습이 잘 돼야 뭐 원비트 하든 말든 하는데 그게 잘 안 됐다라는 거죠. 근데 이거는 그렇게 했다는 겁니다. 처음부터 원비트, 원비트, 사니까 이해 안 되실 수도 있는데, 원래라면은 우리가 이 AI의 연산을 계산을 할 때 LLM에서 어떤 단어들이 있으면 그 단어들이 다 숫자로 바뀌거든요. 그 숫자로 바뀐 것들을 각각 뭐 다 곱해 가지고 다 더하고 뭐 이런 동작들을 많이 해요. 흔히 뭐 벡터 연산, 매트릭스 연산 이렇게 얘기를 하는데, 그게 숫자 하나하나가 예를 들어 8비트면은 2의 8승 개를 표현할 수 있죠. 예를 들어 0부터 255까지의 숫자를 표현할 수 있다라는 거예요. 16비트면은 2의 16승이니까 0부터 65,535까지 표현을 할 수 있겠죠. 그런 것처럼 원비트면은 0과 1밖에 표현을 못 한다는 거예요. 그럼 곱했을 때 아예 사라지거나 그냥 그대로 가거나 이런 거밖에 없거든요. 그래서 그렇게까지 하면 너무 극단적이니까 여기서는 뭐 어떻게 되냐? 1, 0, -1 요렇게 세 가지로, 그 터널이라는 표현이 바이너리가 아닌 터널이라는 표현으로 한 게 그 이유인 거죠. 그래서 그게 로그 2분의 로그 3 하면 대충 1.58 정도 나오거든요. 그래 그 정도로 평균으로 썼다라고 얘기를 하는데, 이게 정확하게는 학습을 할 때에는, 학습을 할 때에는 중간 단계로 16비트의 가중치를 사용하긴 합니다. 그러니까 순방향으로 계산할 때는 그냥 그대로 가는데, 우리가 백프로퍼게이션이라고 하죠. 에러 차이, 그 갭을 계속 메꿔 가면서 웨이트를 업데이트하는 그 기간 동안에는 그냥 0, 1, -1만 쓰니까 뭐 제대로 에러 차이가 안 보여서 그런 거 같아요. 그래서 그 부분은 16비트를 써 가지고 그 에러를 좀 더 잘 반영해 갖고 다시 0, 1, -1 사이로 이렇게 결정한 것으로 보입니다. 그 말은 뭐냐? 학습 과정에는 여전히 MBDI GPU 같은 것들은 많이 사용이 되는데, 추론할 때, 온디바이스 AI로 이 AI 모델을 쓰려고 할 때는 그렇게 빡센 AI가 필요 없이 CPU만으로도 이렇게 빠르게 돌아간다. 제가 이거 보여 드린 거 이거 지금 CPU에서 돌리는 겁니다. "What is the difference between CPU and GPU?" 이렇게 하면은 지금 다 이거 CPU에서 돌고 있기 때문에 GPU가 전혀 사용되고 있지 않습니다. 그래서 극단적으로 이렇게나 줄일 수 있는 LLM이 출현 모델로 가능하다라고 하면은 이걸 가지고 와 가지고 온디바이스 AI를 충분히 구현할 수 있다라는 걸 얘기를 드리는 거예요. 앞으로 그럴 가능성이 높다는 거죠. 왜냐면은 요즘 잼마스 2, 잼마스 3 이런 것도 굉장히 발전이 많이 되기 때문에, 근데 그런 애들도 메모리가 굉장히 많이 필요한데 얘는 극단적으로 줄일 수 있다. 더군다나 에너지도 소비가 엄청나게 줄었잖아요. 그 말은 뭡니까? 배터리를 덜 소모한다라는 얘기예요.

저는 항상 이렇게 딥테크 관련 기술들을 전해 드리면서 항상 경계하는 마음이 뭐냐? 이거는 절대로 현실이 될 수 없다라는 그 마음을 굉장히 경계를 합니다. 왜냐하면은 그래도 대한민국 사람들 중에서는 이 테크 트렌드를 굉장히 빠르게 좁고 있는 사람이잖아요. 그리고 그걸 정확하게 파악해서 여러분들한테 전달해 드리는 게 제 역할이기 때문에, 그 흐름에 대해서는 누구보다도 좀 잘 파악하고 있다고 자부를 하는 면도 있는데, 예전에 댓글들도 보면은 야, 양자 컴퓨터 그런 거 절대로 안 돼. AI, AGI가 나오겠냐? 막 이런 얘기들을 많이 하시거든요. 그런 댓글들을 제가 기억을 많이 해요. 근데 1년이 지나면은 그게 점차 가능성이 높아지는 것들을 보고, 이미 고인이 된 것도 있고, 자율주행도 절대 안 된다라는 댓글이 요즘은 잘 안 달립니다. 참 웃기죠. 그때는 정말 확신을 가지고 네가 아무리 떠들어 봐야 자율주행 같은 거 절대로 안 돼라고 하시는 분들이 있는데, 세상이 그렇게 빨리 바뀌어 간다라는 거예요. 심지어 이거는 전문가들도 마찬가지입니다. 업계에 계신 분들도 이런 AI 모델을 하면은 야, 플로팅 포인트 4는 절대로 안 된다고. 엔비디아 GPU에서 4비트짜리로 해 가지고 성능 뻥튀기 한다라고 막 욕하고 하시는 경우도 있는데, 그것도 일면 이해는 되지만, 업계에 계신 분들조차도 자신의 전문성을 너무 믿기 때문에 현재 이것만 가능할 거야라고 생각하던 것들이 갑자기 혁신이 일어나거든요. 말 그대로 그런 게 혁신이라는 거예요. 그래서 마이크로소프트 같은 경우에도 지금도 이게 프론티어 모델을 앞선다라는 얘기는 아닙니다. 그렇지만 이런 소형 모델이 쓰이는 곳들이 굉장히 많아질 거란 말이에요. 이 AI를 쓰임새로 해서 다양한 애플리케이션이 나올 때, 온디바이스 AI를 돌 때 이런 것들이 많이 필요로 하는데, 이렇게 1.58B, 1.58 기준으로 AI 모델을 만들 수 있다라고 하는 것들이 그냥 가능성만으로 비친 것이 아니라 충분히 나올 수 있는, 에너지도 낮추고, 메모리도 낮추고, CPU만으로도 돌아가고, 이렇게 세상이 확확 바뀔 수 있다라는 걸로 얘기를 하는 거죠. 마이크로소프트가 이런 걸 내면은 구글, 메타, 오픈 AI가 가만히 있겠습니까? 다 열심히 파겠죠. 그렇게 하면서 세상이 바뀌어 간다 하는 거기 때문에, 지금 당장은 안 된다는 게 맞아요. 제가 말씀드린 거는 앞으로 변해갈 세상에 너무 일찍이 예단을 하게 되면은, 요즘 저희 채널에 주식 투자하신 분들도 많이 들어오시는 거 같은데, 그러한 기회들을 놓칠 수도 있다라는 거고, 혹은 너무 빨리 판단을 하면은 너무 해적으로 본다거나 이러한 실수를 저지를 수도 있는 거고, 그런 세상이 빨리 안 올 거라 생각하고 엑셀 함수를 공부한다거나, 프로그래밍도 바이브 코딩으로 공부 안 하고 너무 외적인 거에서만 공부를 한다거나 이런 것들이 자기한테 도움이 안 될 수가 있고, 그게 또 경쟁력을 떨어뜨리는 요인이 될 수 있다라는 거죠. 여러분들이 잘못했다는 게 아니라 저도 염려가 돼서 이러한 시각을 공유를 드리는 거니까, 여러분들도 의견 많이 내 주시고, 앞으로도 이런 소식들 많이 전달드리도록 하겠습니다. 안대공학 해외 채널 언니얼텍에서 여전히 영상 많이 올리고 있습니다. 영어가 편하신 분들, 그리고 영어가 편하신 친구분들한테 많이 추천해 주시고요. 안대공학 스토어에서 유니님 입고 계신 이렇게 예쁜 코드 집업, 요즘 입기 좋죠? 굉장히 예쁘게, 질 좋게 만들어 놨으니까, 어 코딩 공룡 집업입니다. 단체 주문 환영이고, 관심 있으신 분들 많이 부탁드립니다. 지금까지 에러였습니다. [음악]