Thinking/Book

[독서노트] AI 시대의 프로그래

산책散策 2025. 2. 13. 00:19
728x90

지은이 톰 타올리

옮긴이 이일섭, 황은옥

출판 한빛미디어

발행 2024.08.23

 

 chatGPT 가 어느 순간 나오고, 프로그래머에게는 AI  용어 뿐만 아니라 GitHub copliot 같은 AI 어시턴스의 도움을 받아가면서 살아가는 시대가 된거 같다. 그래서 이책을 읽고나면 AI 트렌드까지는 아니어도 AI 와 함께하는 프로그래밍이라는 게 어떤건지 알게 될것이다.

 2024년 중반에 발간된 책이다보니, 2025년 새해에 큰 충격이었던 딥시크 관련 내용은 당연히 없다. 작년이랑 올해랑 비교해도 LLM 모델의 성능이 너무나도 빠르게 변하고 있다. 대 AI 시대에 뒤쳐지지 않고자 하는 개발자라면 꼭 읽어야 봐야 한다고 본다. 물론 270쪽 정도되는 분량이다보니 알맹이는 빠지고 겉만 훓고 가는 느낌을 받지만 다른책으로 심화를 하면 된다고 본다.

 평점 : 7/10

 


chapter 1 개발자에게 열린 새로운 세상
 
chapter 2 AI 어시스턴트의 작동 원리
- 컴파일러 : 어휘 분석(토큰화), 구문 분석, 의미 분석(오류 검사), 중간 코드 생성, 코드 최적화, 코드 생성, 링킹 및 로딩
- AI 어시스턴트 : 코드의 일부를 추측하고 제안. 확률에 따르기 때문에 제안 사항이 다양. 오류를 발견하는데 효과적이지만, 컴퍼일러의 오류 검사 기술에는 미치지 못한다. 논리적 오류에 대해서는 통찰력을 발휘. 미처 생각못했던 대안이나 해법을 제안해서 해결하도록 유도
 
- 트랜스포머
-- 인코딩 단계 : 언어학자가 외국어로 문장을 이해하듯 입력 텍스트를 읽고 이행
-- 디코딩 단계 : 인코딩 단계에서 얻은 이해를 바탕으로 새로운 텍스트나 번역을 생성
-- 어텐션(attention) : 문자의 각 단어와 다른 단어의 관련성을 어텐션 점수를 할당
-- 셀프 어텐션 매커니즘 : 전체 문장을 살펴서 단어 간의 관계를 이해하며 긴 텍스트에서 관계를 파악. 장기기억을 통해 지금까지 나타난 모든 단어 또는 토큰에 집중해서 더 넓은 컨텍스트를 이해할 수 있다.
-- 위치 인코딩 : 모델에 문장 내 각 단어의 위치에 대한 정보를 제공
-- 멀티 헤드 어텐션 메커니즘 : 여러 쌍의 눈을 가진 모델이 고유한 각도에서 문장을 검토하고 단어 간의 다른 측면이나 관계에 초점
 
- LLM 성능 평가
-- 스탠퍼드 대학의 파운데이션 모델 투명성 지수 : https://www.nytimes.com/2023/10/18/technology/how-ai-works-stanford.html. 100가지 지표를 정의하여 LLM의 투명성 평가
-- BERTScore, Perplexity, BLEU(gilingual evualation understudy), ROUGE(Recall-Oriented Understudy for Gisting Evaluation), MBXP(Most Basic X Programming Problems), HumanEval, Multilingual HumanEval(HumanEval-X)
-- 매개변수의 수 확인. 파인튜닝.
 
- 오픈소스 LLM
GPT-NeoX-20B, Llama 3.1, OPT-175B, BLOOM, Falcon-40B, Dally 2.0, Mistral 7B, Mixtral 8x7B
- AI 어시스턴트 프로그래밍 도구 평가
 
chapter 3 프롬프트 엔지니어링
- 구체적으로 작성하기, 명확한 약어와 기술 용어, 제로샷 러닝과 퓨샷 러닝, 키워드(def, function, <button, P {, INSERT INTO, public), 생각의 사슬 프롬프트, 중립적인 태도 및 질문(유도X), 예시와 비유 요청하기
- 환각 감소 : 개방형 질문 X, 미리 정의된 선택지 제공하고 선택하도록 요청
- 자율(Autonomous) AI 에이전트 (AAA)
  : 어떤 목표가 주어지면 그에 맞는 실행 계획을 세우고, 벡터 데이터베이스(파인콘 Pinecone or 크로마 DB Chroman DB)를 활용해서 모델이 이해하는 복잡한 단어 임베딩을 처리한다.
ex) 사용자 로그인 시스템이 포함된 기본적인 날씨 애플리케이션을 만듭니다.
 
 
chapter 4 깃허브 코파일럿
- 사용 사례 : AMD, 쇼피파이, 액센츄어, 보안
- 코파일럿 채팅 : 에이전트(@workspace, @vscode, @terminal), 명령어(/new, /newNotebook, /api, /clear)
- 인라인 채팅 : command(or control) + i
 

 

chapter 5 기타 AI 어시스턴트 프로그래밍 도구
chapter 6 ChatGPT 및 기타 범용 LLM
chapter 7 기획
chapter 8 코딩
chapter 9 디버깅, 테스트, 배포
chapter 10 AI 시대의 개발자를 위한 팁

- AI 가 바꾼 프로그래밍 방식, AI 어시스턴트의 이점, AI 어시스턴트의 유의점(보안, 개인정보 규정), 프롬프트 엔지니어링의 특성, 프로그래밍 이상의 작업, 프로그래머의 역할

듀러블 설립자 제임스 클리프트

"AI 의 발전은 노동 시장의 역학 관계에 변화를 가져오겠지만 AI 와 비즈니스가 결합되면 이점이 더 크다는 점을 인식해야 합니다. 어느 하나가 다른 하나를 대체할 수는 없습니다. 변화를 두려워하지 않고 기술을 수용해 비즈니스 성장과 일자리 창출을 지원하는 것이 핵심입니다. AI 도구는 대기업만 사용할 수 있었던 리소스를 모든 사람이 사용할 수 있게 해주는 효과가 있습니다."

 
부록 클로드 3.5