서평 - 챗GPT API를 활용한 챗봇 만들기

이 포스팅은 도서 챗GPT API를 활용한 챗봇 만들기에 대한 리뷰를 담고 있습니다.

챗GPT API를 활용한 챗봇 만들기 표지

요약

챗GPT API를 활용한 챗봇 만들기는 챗GPT API를 이용하여 챗봇을 개발하는 과정을 이해하기 쉽게 안내하고 있습니다. 책은 단계별로 프롬프트 엔지니어링 기법을 설명하며, OpenAI API 호출부터 실제 카카오톡 챗봇 생성까지 상세하게 다루고 있습니다. 이를 통해 거대 모델이 나오면서 생긴 프롬프트 엔지니어링이 무엇인지 이 책을 읽고 제대로 이해할 수 있었습니다.

저는 이 책을 읽고 OpenAI에서 현재까지 출시한 서비스 - ChatGPT, Function Calling, Assistants API, 그리고 GPTs - 에 대한 전반적인 사항을 쉽게 이해할 수 있어서 좋았습니다. 또한 임베딩 공간과 벡터 DB에 대한 설명도 간결하고 이해하기 쉽게 되어 있는 부분이 인상적이었습니다. 텍스트, 이미지, 그리고 영상까지 거대 모델이 나오며 여러 분야에서 변화가 일어나고 있는데 그 흐름이 궁금하시다면 이 책을 추천합니다.

더보기

서평 - 게임 AI를 위한 탐색 알고리즘 입문

이 포스팅은 도서 게임 AI를 위한 탐색 알고리즘 입문에 대한 리뷰를 담고 있습니다.

게임 AI를 위한 탐색 알고리즘 입문 표지

요약

게임, AI, 그리고 알고리즘. 이 세가지가 겹치는 영역에 재밌는 문제들이 많습니다. 이 영역에서 널리 알려진 것 중 하나로 바둑을 플레이 하는 알파고를 예로 들 수 있습니다. 다른 예로는 체스를 플레이 하는 딥블루를 예로 들 수 있습니다. 컴퓨터를 통해 문제를 푼다는 것은 결국 탐색을 한다는 것으로도 이해할 수 있습니다. 게임 AI를 위한 탐색 알고리즘 입문에서는 주어진 문제 공간을 이해하고 정의하여 우리가 원하는 답 - 게임에서는 승리 - 을 효율적으로 찾아 내기 위한 기법을 설명하고 있습니다. 저는 이 책에서 알파고에 사용된 Monte Carlo Tree Search (MCTS) 및 저자가 알파 제로에서 영감을 얻은 Thunder 탐색에 대해 설명한 내용을 이해한 후 꽤 큰 감동을 받았습니다. 탐색 방법 중 minimax 혹은 Alpha-beta pruning에 대해 이해하고 있다면 어렵지 않게 이 책을 볼 수 있습니다. 최신 게임 AI가 어떻게 동작하는지 그 원리를 이해하고 싶으신 분들이라면 이 책을 꼭 살펴보시면 좋겠습니다.

더보기

서평 - 천개의 뇌

이 포스팅은 도서 천개의 뇌에 대한 리뷰를 담고 있습니다.

천개의 뇌 표지

요약

학부 시절부터 사람의 뇌와 똑같은 방식으로 코드를 짜서 돌리면 사람하고 똑같은 행위를 하지 않을까 고민을 했고 지금도 계속 하고 있다. 그 와중에 위 책을 접하게 되어 읽고나서 큰 충격을 받았다. 어쩌면 우리는 레이 커즈와일이 언급한 특이점 앞이 아닐까?

더보기

서평 - 따라하며 배우는 언리얼 엔진5 입문

이 포스팅은 도서 따라 하며 배우는 언리얼 엔진 5 입문에 대한 리뷰를 담고 있습니다.

따라 하며 배우는 언리얼 엔진 5 입문 입문표지

요약

게임 엔진 중 가장 유명한 두 가지를 꼽으라면 언리얼과 유니티가 있습니다. 저는 유니티를 사용하여 게임을 오픈한 적이 있으며 언리얼은 사용해 본 적이 없습니다. 다만 언리얼이 워낙 게임 클라이언트 개발자 사이에서 필수 덕목이기에 이번 기회에 이 책을 읽어보게 되었네요.

유니티를 상당히 깊이 있게 사용해 왔는데 이 책을 보면서 언리얼과 유니티 사이에 공통 개념이 많다는 것을 알았습니다. 예를 들어 언리얼은 레벨과 액터로 구성되어 있다고 하는데 유니티의 오브젝트가 액터와 비슷한 개념이구나 싶었습니다. 또한 스태택 메시의 경우 유니티의 프리펩과 맞닿은 개념이라고 이해했습니다. 물론 세부적인 사항이 다르겠지만 위처럼 유니티와 언리얼의 비슷한 점을 비교하며 책을 보니 금방 읽을 수 있었습니다.

이펙트 및 애니메이션 또한 유니티에 맞닿은 기능들이 있어서 이해하기 수월했습니다. 블루프린트의 경우 코딩없이 로직을 검증할 수 있는 좋은 기능이라고 수차례 들어왔는데 이 책을 보면서 기초적인 부분을 이해할 수 있었습니다.

이 책은 기존에 다른 엔진을 통해 게임 개발을 해보신 분이라면 아주 편하게 언리얼 엔진5를 입문하실 수 있을 것이라 생각합니다. 만약 게임 제작을 처음하신다면 이 책을 읽고 한번 쭉 따라해보는 것이 상당히 좋은 경험일 것 입니다. 기초 개념을 잘 전달하고 있는 책이라 언리엘 엔진5에 입문해보고 싶으신 분들 모두에게 추천합니다.

더보기

서평 - 신비로운 전자부품 매크로 포토그래피

이 포스팅은 도서 신비로운 전자부품 매크로 포토그래피에 대한 리뷰를 담고 있습니다.

신비로운 전자부품 매크로 포토그래피 노하우 표지

  • 출처: 한빛미디어

요약

들어가는 말에 보면 아래와 같은 말이 나온다.

좋은 디자인은 사람의 신체 감각, 궁극적으로는 우아함에 대한 감각을 자극한다.

이 책, 신비로운 전자부품 매크로 포토그래피는 그 자체로 우아함에 대한 감각을 자극한다. 다양한 전자부품에 대한 설명과 각 부품의 근접사진을 보고 있자면 아주 잘 다듬은 브로셔를 보는 느낌이다. 서평에 이러한 말을 하는 게 맞는지 모르겠지만 책을 보고 있으면 구성의 아름다움에 행복해진다.

내용 또한 훌륭한데 우리가 전자기기를 뜯어보면 보이는 조그만 부품들이 어떤 역할인지와 어떻게 구성되었는지 설명을 하고 있다. 공개된 내용 중 어디에선가 한번쯤 봤을 법한 탄소피막 저항기, 모듈식 전화 케이블, 그리고 진공 형광 디스플레이관에 대한 내용을 본문에 정리하였다. 각 부품이 어떤 역할을 하고 어떻게 구성되어 있는지 설명하고 있는데 어릴적 고장난 장비를 뜯으며 봤던 것들에 대한 이해를 할 수 있었다.

이 책은 그 자체로 잘 다듬어진 작품같아 책장에 오래두고 보기 좋은 책이기에 추천한다.

더보기

서평 - 플레이어를 생각하는 게임UI 디자인 노하우

이 포스팅은 도서 플레이어를 생각하는 게임UI 디자인 노하우에 대한 리뷰를 담고 있습니다.

플레이얼르 생각하는 게임UI 디자인 노하우 표지

  • 출처: 한빛미디어

요약

서버와 클라이언트 프로그래머로 일을 하면서 어떻게 하면 플레이어에게 아름답고 효과적으로 어떻게 보일 수 있는지 관심이 많았기에 플레이어를 생각하는 게임UI 디자인 노하우 책을 보았을 때 굉장한 호기심이 들었습니다. 이 책은 역할에 따라 캐릭터 (페르소나) 로 이해하기 쉽게 설명을 하고 있는데 저는 안경끼고 줄무니 셔츠를 입은 엔지니어 캐릭터에 속하네요. (네, 안경을 쓰고 있습니다)

엔지니어 입장에서 봤을 때 UI 디자인 시 색각 이상과 프레임 속도까지 고려한다는 점이 매우 흥미로웠습니다. 서버 개발을 주로 진행했던 터라 색각을 고려해야 할 것이라고는 생각해 본 적이 없었습니다. 나라별로 긍정/부정의 의미를 나타내는 색이 다르다는 부분도 재밌었습니다. 글로벌 오픈을 위한 Localization (L10N) 작업을 진행하며 나라별로 주의해야 할 점이 있다는 것은 알았지만 색도 다르게 사용해야 한다는 부분은 이 책을 통해 처음 알았습니다.

이 책에는 이러한 지식 전달 외에도 다른 팀과의 협업을 어떻게 해야 좋은지와 실제 작업을 진행하며 주의해야 할 점이 무엇인지 잘 설명하고 있습니다. 게임 개발에 막 발을 내딛은 분들에게는 꼭 필요한 영양소와 같은 내용을 담고 있습니다. 또한 개발 경력이 있는 분들에게는 놓친 부분은 없는지 점검해 볼 수 있는 가이드를 제공한다고 생각합니다. 저의 경우엔 엔지니어 입장에서 UI 디자이너의 입장을 이해할 수 있었으며 멋진 게임 출시를 위한 UI 디자이너와의 협업에 큰 도움이 되리라 생각합니다.

더보기

서평 - 개발자를 위한 실전 선형대수학

이 포스팅은 도서 개발자를 위한 실전 선형대수학에 대한 리뷰를 담고 있습니다.

개발자를 위한 실전 선형대수학 표지

  • 출처: 한빛미디어

요약

선형대수(linear algebra)는 데이터분석 혹은 기계학습을 학습하는데 있어 기초를 탄탄하게 할 수 있는 기초 중 하나입니다. 실제로 어떻게 쓰이는지 예시를 본다면 다음과 같습니다.

첫째로 딥러닝을 통한 임베딩 스페이스를 발견하기 전에는 단어와 문서 사이에 보이지 않는 관계를 가정하여 pLSA (probabilistic Latent Semantic Analysis) 라는 방법을 사용했습니다. 좀 더 쉽게 설명하자면 각 문서가 어떤 토픽으로 구성되었나 하는 것들을 분석하기 위해서 이러한 작업을 했다고 생각하시면 됩니다. 이 책에서는 pLSA의 기반이 되는 특이값 분해 (Singular Value Decomposition)을 설명하고 있습니다.

둘째로 바로 앞에 언급한 임베딩 스페이스에서는 서로간의 유사성을 측정하기 위해 코사인 유사도를 사용하는데 이 책에서 설명하고 있는 벡터-내적 연산을 활용합니다.

이 외에도 선형대수의 기초적인 개념은 다양한 곳에서 쓰이고 있습니다. 이 책은 선형대수에서 중요한 핵심 개념들을 설명하고 있는데 어떤 분야를 공부하기 위해 선형대수를 보게 되었는지 생각하시면서 이 책을 보신다면 더욱 도움이 될 것이라 생각합니다. 물론 선형대수 자체에 흥미를 느껴 이를 탐구하고자 할 때에도 좋은 책이라 생각합니다. 파이썬의 numpy 라이브러리와 함께 잘 설명하고 있기에 추후 데이터 분석 혹은 기계학습 모델링을 할 때 기초가 부족하여 막히는 경우는 없을만큼 내용이 잘 정리된 책이라 생각합니다.

더보기