The matter is how it can be , not how it is now

O2, 엔지니어링 season2

GPT, Nocode, 사라짐,변화

sstrato 2023. 6. 3. 00:50
728x90

GPT

GPT가 어떤 단어의 줄임말인지 아는게 지식인 시대에 살고 있다.

Generative Pre-trained Transformer 생성형 선교육된 변환자이다.

재밌는 것은 GPT를 처음 발명한 건 OpenAI라는 회사가 아니고 구글이다. 그리고 구글은 진즉에 GPT를 버리고(이 표현이 정확하게 맞진 않다), Pathway라는 방법으로 갈아탓고 이건 Transformer , embedding, parallel layer, multi-attention등 그냥 알고 있는건 다 때려 넣은 한국으로 치면 제삿상 물린이후의 탕국 같은걸 만들었다. 

 

몇가지 재밌는 사실은 구글이 만들어서 공개한 텐서플로우가 그동안 자기들이 만든 독특한 리니어 알제브라를 사용했는데(플로우에 맞춰서, 굳이 벡터화를 할 필요가 없는 자료 구조를 사용한 특이한 솔버였다), 서드파티 리니어알제브라 엑셀러뤠이러(그러려니 하자)를 지원하는 XLA 기능을 2019년에 만들었다. 그리고 이걸 그 유명한 구글의 TPU와 연결해서 사용했는데 그걸 공개한게 2022년이니까 최소한 2019년 이전부터 XLA를 내부에선 사용했던 것이다. 내가 왜 그렇게 XLA를 지금 강조하냐면 이게 텐서플로우를 잡을 가속하는데 굉장히 중요하거든 , 그래야 꼭 GPU아니더라도 아키텍처에 맞는 가속 라이브러리(기존에 수십년간 쌓여있던)를 쓸수 있다.  그리고 내가 2019년에 'Massive Computing in cloud' 라고 발표한 'karrozzeria'에 넣었던 클라우드네이티브 기반 분산 병렬처리와 연결하면 굉장히 강력한 대규모 클라우드 계산환경을 만들수 있다. 중요한건 내가 2018년에 구글보다 먼저 저 짓을하고 있었던 거지 ㅋㅋㅋㅋ(참 별짓을 다 하고 다녔다 나도, 그리고 회사 사람들은 니가 왜? 라고 했고), 2019년 발표한 구글 논문에서 자기네들도 내가 한것 처럼 했다고 썼다. 구글은 늘 나를 따라한다(이것도 일정부분 사실이고 ㅋㅋ). 

 

그건 중요한게 아니고(아니다! 중요하다!)

얼마전에 카카오 테크 밋에서 'Nocode, Serverless cloud Services for Generative AI : monokode stein' 이라는 제목으로 노코드 플랫폼을통해서 간단하게 챗봇을 만드는 것을 이야기 했다. 그리고 내가 만들고 있는 모노코드(monokode)라는 노코드 플랫폼을 첨으로 외부에 공개했다. 이 시연에서는 위키에 정리되어 있는 데이터를 기반으로 응답을 해주는 챗봇프로그램을 노코드 플랫폼을 사용해서 4분정도 만에 만드는 모습을 보여주었다. Jaw Dropping 이었지. 

 

그리고 내가 이 발표에서 GPT 아니 LLM관련해서 이야기 하고 싶었던 것은 이 모델들의 경박단소(한자어다, 찾아보자)화에 대한 이야기 였다. 이미 OpenAI+M$ 진영의 거대 모델은 정말로 그 한계를 여실히 보여주고 있고, 소비자들은 늘 가볍고 간단하고 빠른 IT제품을 기대한다. 기업이라고 별다르진 않지. 자기의 personal device에서 돌아가는 랭귀지모델을 기대하고 있는 거다. 이런 맥락에서 nvidia도 얼마 남지 않았다고 본다(투자는 알아서 하자)

Nocode

AI, GPT 등을 주로 설명하는 2시간정도의 밋이었는데 QnA에 많이 나온 질문들은 노코드에 관련된 것들이 훨씬 많았다(고 나는 느꼈다 ㅎㅎㅎ).

노코드 플랫폼은 소프트웨어 제품을 만드는데 필요한 기획/개발(api 구조, 언어선택, 아키텍처링, DB 선정등)/테스팅(테스팅 환경 설정, 테스팅 리포팅 및 비교 검증)/배포/운영 이란 프로세스를 압축시켜서 같은 시간내에 더 많은 제품의 변화를 가져올 수 있게 해서 제품 개발에서의 spiral approach를 진정한 의미로 달성할 수 있게 해준다.

 

애자일 개발이랑은 또 다르다. (하긴 스파이럴이나 애자일이나 뭐 크게 다르진 않지만 나는 애자일 개발이란 단어 자체를 좋아하지 않으니 구분하려고 한다). 그리고 더 많은 의미가 노코드에는 있는데 이건 차차 풀어가도록 하겠다(삶으로 증명해야지 뭐 ㅎ)

 

그리고 사람들이 가진 고정관념을 역시나 느낄 수 있었다. Nocode도 세상에 처음 나온게 아니니까 말이다. '간단한 것들은 만들 수 있을것 같은데 복잡한 것들은 못 만들것 같다'  복잡한 것들을 오히려 적은 사람으로(적은 비용아니다 ㅎ) 간편하게 만들수 있다.  'DB 트랜잭션 처리가 어렵다'라고 하는데 이것도 쉽게 하는 모듈을 Nocode에 넣으면된다. 

'API 개발에는 쓰기 어렵다' 개발자가 충분히 갖춰진 그룹에서 사용할 툴이 아니라서 그렇지만 API백엔드는 오히려 다른 형태로 더 쉽게 개발이 가능하다. 이번에도 보여준게 API 백엔드는 AWS의 람다같은 내부 서비스를 통해서 쉽게 만드는것을 보여줬다. 

굉장히 이상하게 들리겠지만, 노코드로 모든걸 해결하려면 충분히 할 수 있다. 그리고 엔간한 앱은 다 만들수 있다. 나같이 뭘 모르는 사람도 이젠 편리하게 앱을 만들고 관리할 수 있는 시간인거다.

 

사라짐

모든 이야길 다 쓸수 없지만 우려섞인 질문들 중에 하나는 개발자가 사라지게 되나요? 였다. 왜냐면 코드도 GPT가 만들어주고 아예 그것도 필요없는 노코드 플랫폼들이 나오면 개발을 하는 사람들은 필요가 없어지게 되는거 아니냐는 질문이다.

 

그때 내가 정말로 답하지 않는 역 질문은 '개발자라는 사람들은 코드가 만들어지는 과정을 다 아나요?'라는 것이다. 뭔 이야긴고 하니 이미 개발자가 사용하는 '컴퓨터 언어'는 컴퓨터의 실제 동작과는 전혀 관계없이 인간 편의로 만들어진 거다.

 

*.c(아 옛날 사람 ㅋㅋ) 이

*.i 로 변환되기만 하면 어떤 컴퓨터에서든 어떤 아키텍처로 어셈블리어로 된 파일(*.s)을 만들어 지는데,

정작 기계에서 필요한건 저 *.i 파일 만 있으면 된다.

 

문제는 이걸 사람이 이해하기 어렵기 때문에 결국은 사람이 이해할 수 있는 고레벨 언어(c, go)로 작성을 하고 그 다음은 이 모든 과정을 한번에 자동으로 해주는 컴파일러(또는 컴퓨터언어)를 사용하는거잖아. 그리고 이미 컴파일러가 생성한 바이너리 코드(jit 컴파일러는 이게 없는것처럼 느껴지긴 한다)는 최적화 옵션에 따라서 인간의 의도와는 전혀 다르게 버그를 만들기도 한다. 즉 이미 인간이 모르는(아니 인간의 의도를 정확하게 반영하지 않은 코드 또는 의도가 두루뭉술한) 코드들이 컴퓨터에서 동작하고 있는 상태이다. 근데 그런 고차원 언어를 컴퓨터가 만들어 주는게 어떤 위협이 되는 거지? 컴퓨터자체를 를 모른다는 위협인가? 아니면 무지의 토로인가?  

 

변화

좀더 시간이 지나면 고차원 언어 자체는 필요가 없어질지도 모른다. 왜냐면 그걸 이해하는 사람도 점점 줄어들고(한국이던 외국이던 프로그래머을 꿈으로 가진 사람은 많이 없다) 작성 량도 많아지고 그러다 오류를 더 내는 , 컴퓨터란 기계의 입장에서 보면 중간계의 언어가 필요할까? 라는 생각이 든다. 즉 다시 어셈블리정도만 이해하면 되는 시대가 되지 않을까? 한다 물론 한 10년정도 뒤의 이야기이고, 노코드가 생성한 코드나 앱을 인간이 이해할 수준에서 확신을 가지고 테스팅 가능한 플랫폼들이 나와야겠지만 말이다. 그리고 그때는 개발자와 프로그래머를 같은 의미로 부르지 않을거고(개발자의 원래 의미는 부동산 개발업자 였다. 상식으로 알고 쓰자), 개발자가 하는 일의 의미와 프로그래머가 하는 일의 의미를 구분해서 사용하고 있을거니까 말이다. 나는 이미 소프트웨어 개발과 공학은  각각 제작기술과 산업공학에 완전히 같은 개념이라고 떠들고 다니면서 동료들을 괴롭힌다. 

 

내가 그렇게 떠드니까 세상이 새롭게 되던, 아니면 새로운 세상이 되니까 내가 떠들고 있던 간에 더이상 손으로 타이핑하는 코드 덩어리들을 중시하는 시간은 얼마 남지 않은것 같다.

 

그리고 나는 이미 그 다음을,  그럼 어떤걸 준비해야하는지도 알고 있어서 하고 있고 만들고 있다. 이것 역시 때가되면 짠 하고 세상에 등장하겠지(내가 등장시킨단 이야긴 아니다, 세상에서 뭔가 튀어나온다는거지 ㅎ). 내가 할 수 있는 예측은 어쨋든 이 글을 보는 여러분들이 뭔가를 내어놓을거고 세상은 또 그렇게 새롭게 될거다.  

728x90