챗GPT API를 활용한 챗봇 만들기 - : 5일만에 배우는 AI 챗봇 개발의 모든것(LLM,프롬프트 엔지니어링, 오픈AI API, 에이전트, 벡터DB)
이승우 지음 / 한빛미디어 / 2024년 3월
평점 :
장바구니담기


매월 25일. 챗 GPT 유료 결제가 갱신되는 날이다. 챗 GPT는 작년부터 간간이 사용하고 있었는데, 올해 들어서 그 필요성이 더 많아졌고 결국 지난 3월부터 정식 결제를 하고 사용하기 시작했다. 사실 유료 결제까지 해서 쓰고 있다고는 해도, 당장 업무에 필요한 부분들만 사용하고 있다 보니 챗 GPT의 모든 기능들을 다 쓰고 있지는 않다. 페르소나를 설정하고 간단한 프롬프트 엔지니어링 정도만 하고 있기에 제대로 쓰고 있는 사람들이 보기엔 유료 결제가 아깝다고 생각할 수도 있겠다. 다만 이것을 업무에 접목한 것만으로도 이미 충분히 매월 결제 비용 그 이상의 값어치를 뽑아내고 있다는 것은 장담할 수 있다. 그러니까 이달 결제도 해지하지 않고 그대로 진행하지 않았겠는가!


사실 챗 GPT가 화제가 된 만큼, 그에 관련된 서적들은 많이 나왔었는데 사용법에 관련된 것에 그쳐서 구글링에 좀 더 공을 들이고 시간을 들이면 배울 수 있는 것들이라 책까지 구매해야 한다는 필요성을 느끼지 못했는데, 그 와중에 이런 쓸모 있어 보이는 책이 나타났다.



나만의 챗봇을 챗 GPT의 도움을 받아 바닥부터 만들어 카톡 배포까지 해볼 수 있는 재미있는 책! '챗GPT API를 활용한 챗봇 만들기' 되겠다.



책은 개발 환경 구축부터 시작해서 멀티모달 기능 적용까지 총 18개의 챕터로 진행된다.


작가의 말에 따르면 프로그램에 대한 기초 지식이 있는 독자는 하루에 3시간씩 5일 동안 몰입하면, 그러니까 총 15시간이면 이 책을 90% 이상 이해할 수 있는 것을 목표로 잡았고, 프로그램에 지식이 없는 사람이라면 조금 더 걸릴 수 있다고 한다.



플로우를 통해 이 책의 학습 스택에 대해 안내해 주며, 실습 코드 역시 마찬가지로 화살표를 따라가면서 내용이 추가되는 구조로 작성되어 있어 실습을 할 때 보다 편리하게 따라갈 수 있다.



누구나 쉽게 API를 활용하여 원하는 서비스를 개발하는 것이 이 책의 취지인 만큼, 개발 환경을 구축하는 것도 쉽게 진행할 수 있도록 준비했다. 모두가 알다시피 프로그램 언어를 배우거나 무언가를 만들면서 실습하기 위해서 경험이 없는 사람이든 있는 사람이든 일단 환경을 구축을 해야 하는데, 프로그램 경험이 없는 사람 입장에서는 순서대로 따라 하면 된다고 하지만, 책에 없는 오류 사항을 맞닥뜨렸을 때, 특히나 작가의 컴퓨터에서는 문제가 없었는데 내 컴퓨터 환경 때문에 생기는 문제에 당면했을 때 크게 좌절하고 만다. (이 X 같은 윈도우...)


이 책은 그런 초보자들도 쉽게 개발 환경을 만들 수 있도록 클라우드형 개발 환경을 선택했다. 클라우드 IDE goorm을 사용해서 개발 환경을 구축한다.



2 챕터에서는 파이썬을 다루고 있는데, 이 부분도 흥미롭다. 정말 딱 이 책에서 다루는 것을 구현하는 데에 필요한 만큼의 지식만 가르쳐 준다. 기초 기식 + 기초 지식이 아니더라 더도 이 책에 나오는 특정 기능이나 문법을 같이 다룬다. 파이썬을 더 배우고 싶다면 파이썬 책을 사서 공부하면 그만이다. 하지만 파이썬은 모르는데 이 책을 따라서 챗봇을 만들겠다면..? 2 챕터를 열심히 보면 그만이다. 작가의 이런 접근이 정말 흥미로웠다.



환경도 구축했고 책에서 쓸 만큼만 파이썬을 배웠다면, 이제 챗 GPT와 API로 대화를 해 볼 시간이다. 입문자에게는 API라는 용어 자체가 뭔가 싶을 수 있어 일단 API 개념에 대해 살짝 짚고 넘어가 주고, 이어서 챗 GPT API와 원활한 대화를 해보기 위해 대화 흐름에 대해서 알아본다. 참고로 API를 통해 사용하는 모델은 '챗GPT'가 아닌 'GPT'로 불리는 것이 정확하지만, 책은 직관적인 이해를 위해 '챗GPT'로 표기하고 있으며 책 내용에서 그 사실을 짚어주고 넘어간다.


API 사용에는 돈이 든다. 이 책의 주력 모델은 gpt3.5이고 토큰 1000개당 0.001달러가 과금된다. 최초 가입 시 5달러의 무료 크레디트가 지급된다. 언어에 따라 토큰 사용 수가 다르며, 한글은 1글자당 2~3개의 토큰, 영어는 평균 4글자당 1개의 토큰을 사용하기 때문에 고유명사를 제외하고는 프롬프트를 영어로 번역해서 사용하는 것이 토큰을 절약할 수 있는 방법이다.



챗GPT 열풍과 함께 '프롬프트 엔지니어'가 떠오르는 고연봉 직군으로 소개되면서, 여기저기 민간 자격증을 발급하는 곳들도 생겼다. 나도 한 때 저런 자격증이 있으면 좋지 않을까 하여 작년에 잠시 알아보았는데, 강의만 수강하고 결제하면 발급되는 여타 '평생 교육 자격증'과 별 차이 없어 보여서 그냥 접었다.


챗GPT API를 활용해 챗봇을 만들어야 하기 때문에 이 책에서도 프롬프트 엔지니어링의 기초를 배우고 프롬프트 엔지니어링으로 챗봇 설계와 구현을 한다.


사실 이 책을 따라 챗봇을 만들지 않는다고 하더라도, 이미 챗GPT를 결제해서 쓰고 있는 내 입장에서는 굳이 시간을 내서 구글링해서 배우지 않더라도 어느 정도 프롬프트 엔지니어링을 배울 수 있어서 이 챕터의 내용이 매우 유용했다. 특히 플레이그라운드!


순서대로 따라 하면 어느새 웹 앱 형태로 전환하여 웹앱에서 챗봇과 대화할 수 있는 단계에까지 이른다.



이제 챗봇을 친구로 만들기 위해 프롬프트 엔지니어링으로 페르소나를 구축한다. 이 챕터에서는 챗봇이 정말 내 친구처럼 보이게 하기 위해 프롬프팅하는 전략을 찾아볼 수 있다. 하지만 여기에 너무 많은 분량을 담으면 제대로 동작하지 않기 때문에, 인스트럭션을 적용하는 전략을 병행할 필요가 있으며, 그와 함께 컨텍스트의 용량을 관리하는 방법에 대해서도 배울 수 있다.


이어지는 챕터에서는 인간의 언어로 함수를 호출할 수 있도록 하고, 챗 GPT가 그럴싸한 거짓말을 지어내는 것을 어느 정도 개선하기 위한 에이전트 구현과 프롬프트 분할에 대해서 다룬다. 정말이지 필요한 것들만 쏙쏙 뽑아서 다룬 책이 아닐 수 없다. 다만, 비 전공자는 이 부분에서 아주 조금 어렵게 느껴질 수도 있겠다는 생각이 들었다. 이어서 대화 내용을 저장하여 자연스럽게 대화를 이어갈 수 있는 방법까지 배운다면, 그다음은 '기억'이다.



사람을 사람처럼 만드는 힘은 '기억'에 있다. (나는 사실 타인과 대화하면서 그 '기억'을 잘 못하는 편이라 인간미가 없다는 이야기를 종종 듣곤 해서 이걸 사람 머리에도 적용할 수 있으면 참 좋을 텐데라는 자조 섞인 생각을 잠시 했다.) 챗봇을 사람 친구처럼 만들기 위해서 '기억'을 가르친다. 12챕터와 13챕터에서는 기억을 어떻게 가르칠지 와 기억을 어떻게 동작시키는지를 배운다. 이게 또 나름 감동적이다. 모르고 만나서 이야기를 한다면, 정말로 내 친구 챗봇에게 감정 이입하기 딱 좋은 그런 것이 아닌가!


이어서 세 개의 챕터는 Assistants API의 개념을 잡고, 심화 학습을 하며, GPTs와 API의 사용 전략을 배운다. 요는 이것으로 돈을 버는 쏠쏠한 방법도 여기에서 살짝 보고 넘어갈 수 있다. 그리고 대망의 카카오톡!!



여기까지 따라온 우리는 이제 우리가 만든 챗봇을 카카오톡에 올릴 수 있게 되었다. 17챕터를 차근차근 따라 하면서 내가 만든 친구를 카카오톡에 올려보자! 정말 안 어렵다. 책에 하라는 대로 따라 하기만 하면 된다. 솔직히 이 책 내용 그대로 회사 사람들한테 알려주면 우리 모두 1인 1챗봇을 할 수 있을 정도로 내용을 따라 하기가 정말 쉬웠다. 더군다나 우리 회사는 게임 개발사고 프로그램이나 서비스 이해도가 다른 직군들 보다 높은 편이라 더욱더 쉬울 것 같다.



17 챕터까지 따라 하면서 카카오톡에 내 친구 챗봇을 올리고 대화하는 것까지 성공했다면, 이제 더 나아가 볼 차례다. 마지막 18 챕터에서는 모달리티와 멀티모달을 통해 이미지 인식, 이미지 생성, 음성 변환 API를 활용하여 멀티모달 챗봇을 개발하는 방법을 배운다. 이를 위해서 GPT-4 비전 모델을 활용해야 한다. (내가 실무에서 쓰고 있는 그것)


이제 내 친구 챗봇은 그림으로 대화할 수 있으며, 음성으로 대화도 할 수 있게 되었다. 이쯤 되면 그냥 내 친구 챗봇이 아니고 게임기획자 챗봇을 만들어, 내 일을 대신 시키는 것도 가능할 것 같다는 생각이 들었다.(한창 일하기 싫은 12년차)


간단하지만 탄탄하게, 책 한 권만으로 따라 만드는 AI 챗봇! 한빛미디어의 이 책은 수많은 챗GPT 실용서 중에서 가장 쏠쏠하고 쓸만하고 실용적인 책이 아닐까!! 회사에 가져가서 다른 사람들에게도 소개해 주고 같이 '나는 나는 친구를 만들죠-♪ 내가 만든 재미있는 친구들 요술쟁이!(feat.만들어볼까요)'를 해볼 수도 있겠다.



"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
게임 AI를 위한 탐색 알고리즘 입문 - 트리 탐색과 메타 휴리스틱으로 완성하는 최적화, C++ 기반 예제 코드 제공
아오키 에이타 지음, 서수환 옮김 / 한빛미디어 / 2024년 3월
평점 :
장바구니담기


오늘 리뷰할 책은 한빛미디어의 신간 '게임 AI를 위한 탐색 알고리즘 입문'이다. 알고리즘 이야기가 나오면 당연히 개발자(프로그래머)를 대상으로 하는 책이라고 생각을 하는데, 시스템의 이해와 밸런스 기획을 위해서도 게임 기획자에게도 필요한 지식이 담긴 책이라고 생각한다. 나는 기획자이기 때문에 기획자 입장에서 이 책의 리뷰를 쓴다.



파란색 OX 게임(틱택토)을 배경으로 검은 바탕에 깔끔한 디자인의 표지. C++ 기반의 예제 코드를 제공한다고 쓰여있다. 3장~8장에서 사용하는 예제 코드를 홈페이지를 통해 다운로드할 수 있다. 책의 첫 부분은 예제 코드의 다운로드 경로 안내와 함께 명령어 실행법 등을 간략하게 다루고 있다.



" 게임의 즐거움은 어디에서 오는가? "


게임성을 만드는 데 빠질 수 없는 난이도 조절. 너무 어려워서 포기하게 만들지 않고, 그렇다고 너무 쉬워서 시시하게 느끼지 않도록 적당한 긴장감을 유지할 수 있도록 난이도를 유지하는 역할을 게임의 AI가 담당하고, 그런 게임 AI가 사용하는 방법이 바로 이 책에서 말하는 탐색 알고리즘이다.


"왜 이 게임이 재미있는지" 콘텐츠를 분석하는 것이 주니어 기획자의 영역이라면, '어떻게 재미를 느끼게 할 것인지' 시스템으로 논리적으로 설득할 수 있는 것이 시니어 기획자라고 생각한다. 그런 면에서 기획자도 알아두면 유익한 내용들을 담은 책이라고 할 수 있다.



대전 게임의 AI라고 하면 딥러닝으로 널리 알려진 알파고를 떠올릴 수 있는데, 대전 게임 AI는 머신러닝뿐만 아니라 규칙 기반, 탐색 세 종류 기술 요소를 사용한다고 한다. 이 중 규칙 기반은 사람이 직접 만든 규칙에 따라 조건 분기하는 것을 뜻하며, 이 책은 앞의 세 종류의 기술 요소 중 '탐색'에 중점을 두고 설명하는 책이다.



시작은 OX 게임이라고도 불리는 틱택토 게임의 예를 들어서 게임 트리와 탐색의 기본 개념에 대해 설명한다.



게임의 시작부터 끝까지 모든 수를 포함한 게임 트리를 특별히 '완전 게임 트리'라고 부르며, 완전 게임 트리를 분석한 플레이어는 언제나 최선의 수를 선택할 수 있다. 하지만 게임 트리는 게임의 복잡성에 따라 지수 함수적으로 커지기 때문에 대부분의 게임을 완전 트리를 분석하는 건 현실적이지 않다. 그렇기 때문에 게임의 일부만 게임 트리로 표현하고, 한정된 자원으로 우선순위를 정하고 고심해서 좋은 답을 찾는데, 이 기법을 통틀어 '게임 트리 탐색'이라고 부르고 이 책은 대부분 이 '게임 트리 탐색'을 설명한다.


틱택토 같은 게임은 단순하기 때문에 완전 게임 트리가 크게 복잡하지 않고, 그렇다 보니 선공과 후공에 따른 필승 전법이 이미 적나라하게 알려져 있다. 라프코스터의 재미이론에서도 언급하듯 몇 번 플레이를 해보고 나면 이런 평이한 난이도의 게임은 더 이상 사용자에게 즐거움을 주지 못하고 플레이가 계속되지 못한다. 그래서 레벨과 밸런스의 영역은 기획자에게도 어려운 영역이다. 그 적절한 줄타기를 수와 이론적으로 해내야 하고 잘되면 평타인데 못하면 개망이거든.



이 책은 컨텍스트가 있는 1인 게임, 컨텍스트가 없는 1인 게임, 교대로 두는 2인 게임, 동시에 두는 2인 게임. 총 네 종류로 게임을 분류하고 설명한다. 여기서 신입이라면 컨텍스트라는 단어가 다소 생소할 수 있는데, '플레이어의 행동에 따라 상황이 변화하는 것'을 컨텍스트가 있다고 한다. UI/UX 기획자에게 '컨텍스트'란 매우 밀접한 조건이며, 게임 기획자에게도 아주 중요하고 필요한 개념이다.


'컨텍스트'에 대한 이해와 지식이 있는 게임 기획자는 '시스템'에 대한 이해와 지식이 있는 게임 기획자처럼 같은 업무를 할 때 경쟁력을 가질 수 있다. 특히 사용자의 자유도를 어디까지 허용할 것인지, 자유도가 없음에도 유저가 자유도가 있다고 느낄 수 있는 콘텐츠와 시스템을 기획할 때 도움이 된다.



기획자가 왜 탐색을 배워야 할까. 개인 게임 개발을 한다면 서버 구축이나 온라인 실시간 대전 게임을 개발하기는 쉽지 않은데, AI 대결 상대를 만들어 클라이언트만으로 대전 게임을 개발할 수 있다. 뭐 개인 게임 개발을 넘어서 회사에서도 항상 풀 리소스를 투입해서 개발을 할 수 있는 상황이 있는 건 아니기 때문에 활용할 수 있는 플랜을 더 많이 알고 있다면 실무에 더욱 효율적일 수밖에 없다.



책에서는 순서대로 컨텍스트가 있는 1인 게임에서 사용하고 싶은 탐색 알고리즘과 컨텍스트가 없는 1인 게임에서 사용하고 싶은 탐색 알고리즘을 다루고 각 장에서 다양한 탐색 기법을 소개하고 구현 방법을 알려준다. 예제 코드가 제공되기 때문에 어렵지 않게 따라 할 수 있다. (신입 기획자가 보기에는 어렵다. 프로그래머가 보기엔 쉬움.)



그리고 바둑같이 교대로 두는 2인 게임에서 사용하고 싶은 탐색 알고리즘을 다루며 탐색 기법을 소개하고 구현 방법을 알려준다. 조금 아쉬운 점은 이 책의 대상 독자가 '알고리즘에 흥미가 있으신 분'부터 시작해서 '대결 게임을 개발하고 싶지만 CPU를 만드는 방법을 모르시는 분'까지로 시작부터 어느 정도 베이스 지식이 있어야 이해하고 볼 수 있는 책이기 때문인지, 교대로 두는 2인 게임이라고 하면서도 그게 무엇인지 대체적인 예시 이미지 하나 없다는 점이 좀 아쉽다. 그랬다면 기획자들도 좀 더 흥미를 가지고 볼 수 있는 책이 되지 않았을까 하는 아쉬움이 남는다.


교대로 두는 2인 게임의 탐색 알고리즘 다음으로는 동시에 두는 2인 게임의 탐색 알고리즘을 다룬다. 순서가 교대로 돌아온다면 상대방 행동을 확인하고 나서 자신의 행동을 검토할 수 있는데, 상대방과 자신이 동시에 두는 상황이라면 무엇을 고려해야 할까? 그런 면에서 이 책은 기획자에게도 다양한 상황에 대한 시뮬레이션을 돌릴 수 있어서 좋은 책인 것 같다.


둘이서 동시에 두는 탐색 알고리즘을 판 다음에는 더 좋은 탐색을 하는 기법들에 대해 다룬다. 평가 함수 설계나 다양성 확보 방침 등을 여기에서 배울 수 있다. 그리고 마지막 8장에서 실제로 존재하는 게임에 탐색 알고리즘을 적용해서 AI를 강화하는 방법을 실습한다. 8장까지는 안 간다고 해도 기획자 입장에서 대단히 유익한 책이었고, 쫀득한 퍼즐 게임의 밸런스를 만들고 싶은 기획자라면 이 책을 한 번 읽어보기를 추천하고 싶다.



"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
따라 하며 배우는 언리얼 엔진 5 입문 - 머티리얼과 블루프린트 기초부터 물리 기반 애니메이션 적용까지
쇼다 츠야노 지음, 김성훈 옮김 / 한빛미디어 / 2024년 1월
평점 :
장바구니담기


머티리얼과 블루프린트 기초부터 물리 기반 애니메이션 적용까지, 쌩뉴비를 위한 언리얼 엔진5 책이 나왔다. 보통 언리얼 엔진 입문서라고 하면 프로그래머 지망생이나, 자체적으로 모델링 제작이 가능한 아트가 테크니컬 분야 지식을 늘리기 위해 공부한다고 생각할 수 있는데 나는 개인적으로 언리얼 엔진이야말로 기획자가 꼭 공부해야 하는 영역이라고 생각한다.



요즘 들어 기획자 신입 지원서를 보면 언리얼 엔진을 경험해 보았다고 하는 친구들이 많다. 개인적으로는 기획자가 언리얼 엔진을 중상 정도 사용할 수 있다고 하면, '블루프린트'까지는 할 수 있어야 한다고 생각한다. 물론, 안타깝게도 현실은 언리얼 엔진의 메뉴나 UI를 구경한 것이 전부인 경우가 많다. 아니면 프로그래머가 언리얼에서 구현한 부분을 테스트해보거나.



이제 막 기획에 입문을 하려는 사람에게 엔진까지 공부하는 것은 과하게 생각될 수도 있지만, 어느 정도 매출을 올리기 전까지는 라이선스를 무료로 사용할 수 있는 언리얼 엔진이기 때문에 기획자에게 더욱 유용한 엔진이라고 할 수 있다. 보통 신입 기획자는 열 개의 창작 기획서보다 제대로 쓴 역 기획서가 더 의미가 있고, 문서로만 된 포트폴리오보다는 게임을 완성한 경험을 더 의미 있게 평가한다. 그런 의미에서 직접 기획을 해보고 제작도 해볼 수 있는, '따라 하며 배우는 언리얼 엔진5 입문'책은 기획 지망생이나 새로운 엔진 개발을 꿈꾸는 기획자에게도 매우 유용한 책이라고 할 수 있다.



책은 입문자를 위한 책답게 언리얼 엔진을 소개하는 것부터 시작한다. 언리얼 엔진과 유니티 엔진을 비교하여 언리얼 엔진의 유용함을 알려주고 계정 등록부터 언리얼 엔진 설치, 에픽게임즈 런처 등 순차적으로 엔진 사용을 위한 환경을 알려준다.



개인적으로 책을 읽으면서 좋았던 점은 인덱스가 인쇄되어 있는 점이었다. 홀수 페이지 책장 오른쪽 끝면을 따라 챕터마다 인덱스가 표시가 되고 있다. 책을 펼친 상태에서도 내가 어느 챕터를 보고 있는지 직관적으로 볼 수 있고, 책을 덮은 상태에서도 인덱스 컬러를 따라 각 챕터를 바로 확인하고 펼쳐볼 수 있어 좋았다. 한번 보고 다시 안 볼 책이 아니라 기술 입문서로서 다시 찾아볼 수 있는 내용들이기 때문에 챕터의 인덱스는 정말 누구 아이디어인지 몰라도 칭찬해 주고 싶은 부분이었다.



레벨과 액터 챕터에서는 본격적으로 액터 만드는 것을 배우고, 더불어 에셋 사용법도 배운다. 책의 설명 따라 '액터의 표면을 표시하는 것이 머티리얼'이라고 하는데, 이 어찌나 친절하고 눈높이를 낮춘 설명인지. 새삼 저자의 배려심에 감탄했다. 머티리얼에서는 단색, 그러데이션은 물론 텍스처를 이용한 복잡한 머티리얼 생성을 배울 수 있다. 여기까지 왔으면 눈에 보이는 것 반은 해결했다고 볼 수 있다.



액터와 머티리얼로 눈에 보이는 껍데기를 완성했다면, 이제 4챕터에서 이펙트와 배경을 만드는 방법을 배운다. 언리얼 엔진5의 비주얼 이펙트 시스템인 나이아가라 시스템을 다루며 이펙트를 추가하고 연출하는 방법에 대해서 익힐 수 있다. 랜드 스케이프를 통해 배경을 제작할 수도 있다.



덩어리 넣고 이펙트 넣었으니 이제 움직일 차례!! 5챕터에서는 언리얼 엔진의 애니메이션 기능을 배운다. 시퀀서를 통해 애니메이션을 추가할 수 있고, 파라미터 커브를 사용하여 껍데기가 변화하면서 움직이기까지 하는 애니메이션을 연출할 수도 있다. 


그렇게 순서대로 따라 하면서 덩어리와 껍데기를 만들고, 이펙트 넣고 배경 넣고 애니메이션까지 넣었다. 이제 이제 기획자의 자체 개발을 돕는 언리얼 엔진의 꽃, '블루프린트'를 만날 차례다.



블루 프린트는 언리얼 엔진에서 제공하는 프로그래밍 시스템이다. 이 책을 통해 '블루프린트'를 딥하게 배울 수는 없지만, 기본 사용법을 알아보고 위젯과 트리거에 대해 배울 수 있다. 기존에 다른 언어로 프로그래밍을 익숙하게 하고 있는 유경험자에게 이 부분은 정말 쉬울 거고, 그런 거 전혀 모르는 기획자도 열심히 따라 하면 책대로 따라 할 수 있도록 쉽게 쓰여 있다.



마지막 챕터에서는 본격적인 실습을 진행한다. 지금까지 배운 것들과 에셋을 활용하여 게임을 만들어 낼 시간!!


나는 중간에 컴공을 전공했지만, 프로그래머였던 적 없는 처음부터 기획자였던 사람이다. 그래서 대부분의 책을 게임기획자에게 쓸모가 있는가, 공부할 가치가 있는가를 기준으로 보고 평가하게 된다. 기획자가 굳이 언리얼 엔진을 공부해야 할 필요가 있는가라는 의견은 동료들 사이에서도 분분하지만, 아무리 잘 만든 기획도 그것을 구현할 동료가 없으면 텍스트에 불과하기 때문에 자체 개발 능력은 언제나 소중하다. 무엇보다 가용할 수 있는 리소스 안에서 최고의 결과를 기획하고 뽑아내야 하는 것이 기획자의 업무인 만큼, 할 수 있는 범위 내에서 기획을 하고 결과를 만들어 내는 것은 기획자에게 역량을 올릴 수 있는 좋은 공부가 된다고 생각한다. 이미 다른 언어로 프로그래밍을 하고 있는 사람들에게는 '언리얼 엔진으로 개발하는 A부터 Z'를 다룬 친절한 입문서가 될 것이고, 프로그래밍에 대해서 잘 모르는 기획 직군에게도 개발 환경과 과정을 경험하고 보여줄 수 있는 완성된 포폴을 만들 수 있도록 밑거름이 되어줄 책이다.


이전까지 게임기획자 지망생에게 유니티로 샘플 게임을 만들 수 있는 책을 추천하고는 했는데, 언리얼 엔진이 대세로 떠오른 만큼, 이런 쉽게 따라 배울 수 있는 언리얼 엔진 책이 나왔으니, 지망생이나 주니어에게 유니티가 아닌 언리얼을 추천하는 것도 가능해 보인다.


여러모로 기획자에게는 참 좋은 환경이 되어 가고 있는 중이다.



"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
신비로운 전자부품 매크로 포토그래피 - 회로 안에 숨은 아름다움을 들여다보다
윈델 H. 오스케이.에릭 슐래퍼 지음, 이하영 옮김 / 한빛미디어 / 2023년 11월
평점 :
장바구니담기


오늘 리뷰할 책은 조금 특별한 책이다. 언젠가 인터넷에서 특정한 물건을 몇십 배, 몇백 배 확대해서 그 신비로운 모습을 보여주는 사진들을 본 적이 있었다. 그때는 그냥 신기하구나 하고 넘어갔었는데, 이번엔 전자 부품들을 확대해서 그 속을 들여다볼 수 있는 책이 생겨서 흥미롭게 읽었다. 사실 진작에 다 읽었는데, 회사 크런치 모드에 갈려나가느라고 리뷰 이제 씀... 연말연시는 그냥 놀고먹었으면 좋겠는데, 라이브 서비스하는 게임 기획자는 그런 거 없다. 


"연말연시? 새해 이벤트 준비 안 하냐?"


이런 거지.

그리하여 2023년을 이틀 남긴 오늘에서야 써보는(그마저도 이제 몇 분 뒤면 곧 30일임) '신비로운 전자부품 매크로 포토그래피' 리뷰! 한빛미디어는 정말이지 특이하고 덜 대중적이라서 보고 싶은 사람은 있지만 다른 데서 잘 안 만들어주는 책을 만들어준다. 그래서 개인적으로 참 고맙게 생각하는 출판사다.

책을 펼쳐보면 목차에 수동소자부터 반도체, 전기기계, 케이블까지 다양한 물건들의 확대 샷을 담고 있다는 것을 알 수 있다.

아날로그시계에 'Quartz(쿼츠)'라고 적혀 있는 것은 사실 그 안에 '석영(쿼츠, 수정)'이 들어있기 때문이다. 이 책에서 가장 처음 만날 수 있는 녀석도 수정 진동자다. 사실 시계에 'Quartz'라고 적힌 이유를 안 지도 얼마 되지 않았는데, 그 수정 진동자를 보는 것은 처음이다. 이렇게 생겼구나..!!


"아, 이게 이렇게 생겼구나!!"


이 책은 이렇게 한 페이지 한 페이지 넘기면서 '아, 이게 이렇게 생겼구나!!'라고 감탄하면서 즐겁게 볼 수 있는 책이다. 어른에게도 재미있지만 뭘 좀 알만한 초등 고학년에게는 어린 시절 '과학 만화 전집'처럼 재미있는 책일 것 같다. 라떼는 그 나이대에 '과학 만화 전집'을 닳도록 넘겨 보고 그랬었는데..


주기적으로 한 2년에 한 번 정도는 컴퓨터를 조립하는 일이 생기는데, 그때마다 자주 보게 되는 컴퓨터 부품들도 이 책 안에서 만나볼 수 있다. 전공 교과목 공부할 때 말고는 평소에 관심 1도 없는 녀석들, 그저 '메인보드'로 퉁쳐서 불리는 녀석들의 면면을 책을 통해서 볼 수 있다.


한때 내 주변에서 유행했던 아두이노 개발 기판. 주변에 이걸 여러 개 연결해서 별 걸 다 만드는 사람도 있었었는데. 이 친구는 이렇게 생겼구나.!

스마트폰 기판에서 찾아볼 수 있는 SoC. 대체 누가 이걸 반으로 갈라볼 생각을 했을까.

모두에게 익숙한 마우스 안의 볼! 아니 요즘 어린 친구들은 볼 마우스를 본 적은 있을는지 모르겠다. 다들 광마를 써서. 그래도 우리의 광마에 있는 스크롤 휠 버튼도 여전히 이 녀석, 광학 인코더가 인식한다는 것!

이걸 보면, 왜 가끔 노트북 전원 선에 발이 걸려도 전원 선이 멀쩡한지를 알 수 있다. 선 부분이 지나치게 튼튼해서 정작 선은 무사한데 커넥터 부분이 망가지는 불상사가 있긴 하더라.

그래픽 신호와 사운드까지 한 번에 같이 옮겨주는 HDMI 케이블은 요렇게 생겼다. 단면이 알록달록 꽃처럼 화려하다.


일반 USB 케이블에 비해서 고속 케이블은 뭐가 다를까. 생긴 게 다르다!! 고속 USB 케이블의 단면은 마치 연밥처럼 생겼다.


이 외에도 재미있는 녀석들이 엄청 많아서 어른과 어른이는 물론 어린이들도 좋아할 것 같은 책, 이름하여 '신비로운 전자부품 매크로 포토그래피'. 옆에 두고 교양서도 두기에도 좋은 책이고 하드커버라서 보관도 용이하다. 전자 부품에 관심이 많은 사람이라면, 호기심 많은 아이를 키우는 부모님이라면, 우리 집에 신기한 전자부품 확대 샷 책을 한 권 구비해 두는 것은 어떨까.



댓글(0) 먼댓글(0) 좋아요(1)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
앤서블로 시작하는 인프라 자동화 - 기초부터 실무까지, 플레이북 예제로 마스터하는 앤서블
장현정.이태훈.김병수 지음 / 한빛미디어 / 2023년 9월
평점 :
장바구니담기


도서 ‘앤서블로 시작하는 인프라 자동화’는 시스템 관리자와 운영자, 인프라 엔지니어, 클라우드 시스템 엔지니어, 데브옵스 엔지니어, 자동화 프로세스 개발자, 그리고 리눅스 기초 지식이 있으며 앤서블을 배우고자 하는 모든 사람을 대상으로 한다. 



참고로 나는 게임 기획자이고, 인프라 엔지니어와 친하게 지내기는 하지만 인프라 관리 쪽은 잘 모르고, 리눅스 기초 지식이 있으면서 앤서블을 배우고자 하는 사람이다. 그러니 엔지니어 관점이 아니라 리눅스를 핥은 적 있는 기획자의 시선에서 이 책을 읽고 후기를 적었음을 알아주길 바란다.



개인적으로 좋았던 부분은 명령어나 메뉴 이름, 파일명 등을 서체를 다르게 해서 표시한 부분, 코드블록을 보여줄 때 명령어와 주요 구문은 굵게 표시하고, 여러 명령어가 있을 때 명령어별로 주석 구문을 추가한 부분이다. 코드 짜다가 세미콜론을 빼먹는다던가, 파이썬에서 스페이스 잘못 누른다든가 하는 등의 오류를 범할 수 있는데, 앤서블도 특성상 스페이스가 중요해서 스페이스가 몇 칸인지 표기해 준 부분이 좋았다.



코드로 인프라를 관리하는 방법에 대해서는 이전에도 다른 책을 통해 배운 적이 있었는데, 앤서블은 반복적인 작업을 많이 하는 시스템 엔지니어나 인프라와 시스템 관리 또는 개발을 담당하는 데브옵스 엔지니어, 클라우드 관리 포털 개발자도 사용할 수 있다. 


앤서블은 멱등성과 함께 시스템을 원하는 상태로 표현하여 유지하도록 설계되어 있어, 동일한 운영 작업을 여러 번 실행해도 같은 결과를 낸다. 매일 점검해야 하는 시스템의 상태를 체크할 때 사용하기 좋은데, 그렇다면 매주 점검을 하는 시스템에도 사용하면 좋지 않을까란 생각을 잠시 했다. 우리 회사 인프라는 이걸 쓰고 있나..?



짧은 이론 설명을 넘기면, 본격적으로 책을 따라 실습을 할 수 있다. VM을 활용하여 실습 환경을 만들 수 있는데, 리눅스 환경에서는 버추얼 머신 매니저를, 윈도우와 맥에서는 오라클 버추얼박스를 이용하여 실습 환경을 만들도록 지도한다. 먼저 리눅스 환경에서 CentOS, Ubuntu, RHEL 세 가지 운영체제로 실습 환경을 만들 수 있도록 가이드 하고 있고, 그 다음 윈도우 환경에서 세팅하는 방법을 가이드 해준다. 환경 설정을 마치고 앤서블을 설치하면 실습 준비 끝!



자동화 대상 호스트 선정, 플레이북 작성, 변수와 팩트 사용, 반복문과 조건문을 이용한 제어문 구현, 롤과 콘텐츠 컬렉션을 활용한 플레이북 구현 등의 기본 사용법과 기초 문법을 습득한 후, 3부에서 다양한 예제들을 통해 본격적인 앤서블 활용법을 배운다.



깃허브에서 레이북을 다운로드 받을 수 있기 때문에 좀 더 쉽게 플레이북을 작성할 수 있다. 앤서블의 플레이북 작성은 곧 플레이북을 개발한다는 것과 같은 의미다. 모든 개발에는 분석과 설계 단계가 필요하고, 앤서블 역시 사전 분석과 플레이북 설계가 이루어져야 한다. 책을 통해 플레이북 분석과 설계, 개발을 예제를 따라 차근차근 해볼 수 있다. 


(확실히 인문학 도서 같은 거면 그냥 읽고 감상을 쓰면 다인데, 기술 서적은 실습을 병행해야 이 책이 얼마나 가치가 있는지 알 수 있어서 난도가 좀 있는 것 같다. 그래서 기간을 길게 주는 걸까)


한 번 책을 통해 예제를 실습했다고 해서 바로 실무에 가져다 쓸 수 있을 정도가 되려면, 리눅스에 기초 지식이 있는 기획자인 나보다는 실제 인프라 업무를 하고 있는 인프라 엔지니어여야 할 것 같다. 앤서블은 보안 설정 자동화와 모니터링 자동화 등에 매우 유용해 보이는데, 실제로 내가 이걸 쓸만한 데는 클라우드 시스템 자동화 정도랄까. 19장과 20장에서 다루는 RBAC 적용 및 워크플로와 RBAC를 이용한 승인 프로세스 구현은 지금 승인 프로세스를 교체하고 싶어 하는 회사 윗분들이 관심을 가질만한 내용인 것 같다.


내일 회사 갈 때 책을 슬쩍 가져가서 인프라 직원에게 추천해 줘볼까 한다.




"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo