파이썬과 자바스크립트로 배우는 OpenAI 프로그래밍
도서+사은품 또는 도서+사은품+교보Only(교보굿즈)
15,000원 미만 시 2,500원 배송비 부과
20,000원 미만 시 2,500원 배송비 부과
15,000원 미만 시 2,500원 배송비 부과
1Box 기준 : 도서 10권
로그아웃 : '서울시 종로구 종로1' 주소 기준
이달의 꽃과 함께 책을 받아보세요!
1권 구매 시 결제 단계에서 적용 가능합니다.
해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
패키지
북카드
키워드 Pick
키워드 Pick 안내
관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.

작가정보
(掌田 津耶乃)
일본 최초의 맥 전문 월간지인 《Mac+》를 비롯해 주로 맥 관련 잡지에 기고하고 있다. 하이퍼카드가 등장한 이후 ‘초보자를 위한 프로그래밍’에 눈을 돌렸고, 이후 macOS, 윈도우, 웹, 안드로이드, iOS 등 다양한 플랫폼의 초보자를 대상으로 한 서적을 집필하고 있다. 저서로는 《따라 하며 배우는 언리얼 엔진 5 입문》(한빛미디어, 2024), 《Amazon Bedrock 超入門(Amazon Bedrock 초입문)》(秀和システム, 2024), 《プロンプトエンジニアリング入門(프롬프트 엔지니어링 입문)》(秀和システム, 2023) 등이 있다.
목차
- 옮긴이 머리말 xi
베타리더 후기 xii
시작하며 xv
CHAPTER 1 OpenAI API를 시작하자 1
1.1 OpenAI API를 사용하기 위한 준비 1
__1.1.1 ChatGPT가 준 충격 1
__1.1.2 OpenAI API 3
__1.1.3 OpenAI 개발자 페이지 5
__1.1.4 OpenAI 계정 등록 9
__1.1.5 Playground에서 OpenAI API를 사용해보자 12
1.2 OpenAI 계정 설정 17
__1.2.1 API 사용 현황 관리 18
__1.2.2 Settings 18
__1.2.3 API 키 작성 27
1.3 파이썬/Node.js로 API 사용하기 30
__1.3.1 OpenAI API 개발 환경 30
__1.3.2 [파이썬] 파이썬 준비 30
__1.3.3 [Node.js] Node.js 준비 34
1.4 웹 애플리케이션에서 API 사용하기 37
__1.4.1 [파이썬] 플라스크 애플리케이션 37
__1.4.2 애플리케이션의 메인 프로그램 작성 39
__1.4.3 템플릿 파일 생성 41
__1.4.4 [Node.js] Express 애플리케이션 43
__1.4.5 Express 애플리케이션 작성 46
__1.4.6 index.js 49
__1.4.7 index.ejs 템플릿 파일 생성 51
__1.4.8 OpenAI에 익숙해지자 54
CHAPTER 2 API 사용법을 익혀보자 55
2.1 파이썬에서 API 사용하기 55
__2.1.1 OpenAI API와 Completions API 55
__2.1.2 API 사용하기 57
__2.1.3 스크립트 작성하기 58
__2.1.4 스크립트 내용 살펴보기 59
__2.1.5 반환값 60
__2.1.6 Completion에서 Chat Completion으로 62
2.2 Node.js에서 API 사용하기 63
__2.2.1 API 사용하기 63
__2.2.2 스크립트 작성하기 66
__2.2.3 스크립트 구조 살펴보기 68
__2.2.4 access_openai 함수에서의 API 접근 70
2.3 웹 API 직접 사용하기 71
__2.3.1 웹 API에 직접 접근하기 71
__2.3.2 자바스크립트로 API에 접근하기 72
__2.3.3 콜백 함수와 반환값 처리 74
__2.3.4 API를 사용하는 웹페이지 만들기 75
__2.3.5 클라이언트에서 직접 API를 사용할 때의 위험성 78
CHAPTER 3 프롬프트 디자인 80
3.1 기본 프롬프트 80
__3.1.1 프롬프트의 중요성 80
__3.1.2 지시와 메타 프롬프트 82
__3.1.3 한국어를 영어로 번역 83
__3.1.4 지시의 다양한 이용 예 85
3.2 ID와 캐릭터 설정 87
__3.2.1 ID 할당과 질의 예 87
__3.2.2 제로숏 학습과 예시 89
__3.2.3 캐릭터 할당 90
__3.2.4 재미있는 AI 봇 만들기 91
__3.2.5 Q&A용 AI 만들기 94
3.3 그 밖의 프롬프트 기능 96
__3.3.1 순서 설명 96
__3.3.2 텍스트 요약 97
__3.3.3 콘텐츠 생성 프롬프트 97
__3.3.4 선택지 제시와 입력 99
__3.3.5 문장 구조 이해시키기 102
3.4 명령어 정의와 출력 형식 104
__3.4.1 명령어 생성하기 104
__3.4.2 명령으로 프롬프트 실행하기 107
__3.4.3 출력 형식에 관한 프롬프트 110
__3.4.4 프롬프트 인젝션 111
CHAPTER 4 Completion 탐구하기 117
4.1 에러 처리/모델 API 117
__4.1.1 에러 처리 117
__4.1.2 [파이썬] Completion 에러 처리 119
__4.1.3 [Node.js] Completion 에러 처리 121
__4.1.4 모델 122
4.2 옵션 인수 126
__4.2.1 suffix를 이용한 중간 텍스트 생성 126
__4.2.2 여러 후보 생성하기 130
__4.2.3 생성 내용 조정하기 133
__4.2.4 생성 내용에 관한 옵션 138
__4.2.5 실시간 토큰 처리 144
CHAPTER 5 Chat Completion과 Transcription 147
5.1 Chat Completion 기본 147
__5.1.1 Completion과 Chat 147
__5.1.2 Chat Completions API 148
__5.1.3 API로부터의 반환값 150
__5.1.4 [파이썬] 챗 만들기 151
__5.1.5 [Node.js] 챗 만들기 154
__5.1.6 프로그램 실행 159
__5.1.7 [자바스크립트] 웹페이지에서 채팅하기 160
__5.1.8 Chat Completion의 프롬프트 디자인 163
__5.1.9 role에 함수 지정하기 166
5.2 Speech to text를 이용한 음성 입력 167
__5.2.1 오디오 파일과 문자 읽기 167
__5.2.2 [파이썬] 오디오 파일에서 텍스트 얻기 168
__5.2.3 [Node.js] 오디오 파일에서 텍스트 얻기 169
__5.2.4 프로그램 실행 171
__5.2.5 [자바스크립트] 오디오 파일에서 텍스트 얻기 171
__5.2.6 Transcription 옵션 설정 175
__5.2.7 Translation API 176
__5.2.8 Transcription과 Translation의 차이 179
CHAPTER 6 Image Generation 180
6.1 Image Generation 기본 180
__6.1.1 Image Generation으로 이미지 생성하기 180
__6.1.2 [파이썬] 이미지 생성 프로그램 만들기 183
__6.1.3 [Node.js] 이미지 생성 프로그램 만들기 184
__6.1.4 프로그램 실행 186
__6.1.5 [자바스크립트] 이미지 생성 프로그램 만들기 187
__6.1.6 여러 이미지 생성 192
__6.1.7 프롬프트를 이용한 스타일 설정 194
__6.1.8 생성 이미지 저장하기 196
6.2 이미지 편집 200
__6.2.1 이미지 일부 수정하기 200
__6.2.2 이미지 준비 201
__6.2.3 [파이썬] create_edit 함수 사용하기 203
__6.2.4 [Node.js] createImageEdit 메서드 사용하기 204
__6.2.5 프로그램 실행 206
__6.2.6 [자바스크립트] 웹 API에 직접 접근하기 206
6.3 이미지 변형 209
__6.3.1 변형을 생성하는 Variations 209
__6.3.2 [파이썬] 변형 이미지 생성 209
__6.3.3 [Node.js] 변형 이미지 생성 210
__6.3.4 프로그램 실행 212
__6.3.5 [자바스크립트] 웹 API에 직접 접근하기 213
__6.3.6 Image Generation은 이제부터! 215
CHAPTER 7 모델과 데이터 튜닝 216
7.1 파인 튜닝 216
__7.1.1 나만의 AI 모델 생성 216
__7.1.2 학습용 데이터셋 작성 218
__7.1.3 파인 튜닝/모델 생성 220
__7.1.4 파인 튜닝/모델 사용하기 225
__7.1.5 생성 모델 관리 228
7.2 Moderation을 통한 정책 점검 230
__7.2.1 OpenAI의 정책 점검 230
__7.2.2 정책 위반 점검 232
__7.2.3 프롬프트에 대한 정책 점검 234
7.3 Embedding과 시맨틱 유사성 239
__7.3.1 Embedding과 벡터 데이터 239
__7.3.2 Embedding 사용하기 241
__7.3.3 [파이썬] Embedding API에 접근 242
__7.3.4 [Node.js] Embedding API에 접근 243
__7.3.5 코사인 유사도로 벡터 사이의 유사성 확인하기 244
__7.3.6 [파이썬] openai.embeddings_utils 준비 245
__7.3.7 [Node.js] compute-cosine-similarity 준비 246
__7.3.8 선택지에서 가장 적합한 것 선택하기 247
__7.3.9 [파이썬] 선택지에서 가장 적합한 것 고르기 248
__7.3.10 [Node.js] 선택지에서 가장 적합한 것 고르기 250
__7.3.11 프로그램 실행 253
CHAPTER 8 Power Platform에서 API 사용하기 254
8.1 Power Automate에서 API 사용하기 254
__8.1.1 OpenAI API와 다양한 개발 환경 254
__8.1.2 Power Automate 255
__8.1.3 흐름 작성하기 256
__8.1.4 OpenAI 단계 작성하기 258
__8.1.5 결과를 변수에 설정하기 263
__8.1.6 Power Apps에 대한 반환값 준비하기 265
__8.1.7 테스트 수행하기(OpenAPI 커넥터) 267
__8.1.8 HTTP에 접근하는 흐름 만들기 271
__8.1.9 HTTP 커넥터 사용하기 273
__8.1.10 JSON 데이터에서 반환값 얻기 275
__8.1.11 JSON 데이터를 변수에 가져오기 277
__8.1.12 흐름 테스트 278
__8.1.13 다양한 흐름 테스트 279
8.2 Power Apps에서 API 사용하기 280
__8.2.1 Power Apps란? 280
__8.2.2 캔버스 앱 편집하기 282
__8.2.3 PowerFX 코드 입력 284
__8.2.4 Power Automate의 흐름 할당하기 286
__8.2.5 버튼에서 AccessToOpenAI 흐름 실행하기 287
__8.2.6 앱 실행하기 288
__8.2.7 어떤 애플리케이션에서도 사용할 수 있다 289
8.3 데스크톱용 Power Automate에서 API 사용하기 289
__8.3.1 데스크톱용 Power Automate란? 289
__8.3.2 흐름 편집 291
__8.3.3 OpenAI API에 접근하기 294
__8.3.4 JSON 데이터를 사용자 지정 개체로 변환하기 297
__8.3.5 결과 표시 299
__8.3.6 흐름 실행하기 301
CHAPTER 9 노코드/매크로에서 API 사용하기 302
9.1 Click에서 사용하기 302
__9.1.1 Click이란? 302
__9.1.2 애플리케이션 편집하기 304
__9.1.3 요소 편집 307
__9.1.4 ClickFlow 309
__9.1.5 맞춤 ClickFlow 작성하기 310
__9.1.6 맞춤 ClickFlow 사용하기 316
__9.1.7 애플리케이션 실행하기 318
9.2 Google Apps Script에서 사용하기 319
__9.2.1 Google Apps Script란? 319
__9.2.2 GAS의 스크립트 편집기 320
__9.2.3 OpenAI API용 함수 만들기 322
__9.2.4 테스트용 함수 준비하기 324
__9.2.5 스크립트 ID 확인하기 327
__9.2.6 스프레드시트에서 사용하기 328
__9.2.7 GAS 열기 329
__9.2.8 스크립트 입력 331
__9.2.9 매크로 가져오기 332
__9.2.10 매크로 실행하기 333
__9.2.11 다양한 구글 서비스에서 호출하기 334
9.3 AppSheet에서 사용하기 334
__9.3.1 AppSheet란? 334
__9.3.2 AppSheet의 앱 편집 화면 335
__9.3.3 데이터베이스 편집하기 337
__9.3.4 AppSheet에서 Table 1 편집하기 340
__9.3.5 View 편집하기 341
__9.3.6 Automation 작성하기 342
__9.3.7 OpenAI API에 접근하는 단계 생성 345
__9.3.8 레코드를 업데이트하는 단계 생성 349
__9.3.9 앱 동작 확인하기 352
9.4 Office Script에서 사용하기 354
__9.4.1 Office Script란? 354
__9.4.2 Office Script 작성하기 355
__9.4.3 실행하기 360
__9.4.4 Office Script는 매우 강력한 도구가 될 언어 361
찾아보기 363
책 속으로
원칙적으로는 유료이지만 API가 어떤 것인지 잠깐 사용해보고 싶은 정도라면 요금을 지불하지 않고 사용할 수 있다. / OpenAI API는 계정 등록 시 5달러의 무료 플랜을 제공하므로 그 플랜 안에서 무료로 사용할 수 있다. 고작 5달러라고 생각할 수도 있겠지만 앞서 설명한 것처럼 이용 방식에 따라 수백만 번 정도 접근할 수 있으므로 부족하지 않다. / 5달러 무료 플랜은 3개월 간 유효하므로 학습 기간 동안 충분히 사용할 수 있다. 또한 지불 정보(신용카드 정보)는 유료 플랜으로 전환할 때 등록하므로 사용하지 않고 방치하더라도 임의로 요금이 청구되지 않는다. (4쪽)
플라스크에서는 함수에 특별한 값(데커레이터)을 붙여서 핸들러를 정의했다. Express에서는 Express 객체의 get 등의 메서드를 사용해서 핸들러를 작성한다. 첫 번째 인수에는 경로를 지정하고, 두 번째 인수에는 함수를 지정한다. 이를 통해 지정한 경로에 접근하면 준비한 함수가 실행된다. / 이 함수는 최소 두 개의 인수를 갖는다. 이 인수는 Request와 Response라는 객체로, 각각 클라이언트로부터 전송된 요청과 서버로부터 클라이언트에 반환하는 응답 정보를 관리한다. / 이 함수에서 필요에 따라 프로세스를 수행하고 마지막에 Response의 render 메서드로 페이지를 작성한다. render는 첫 번째 인수에 지정한 템플릿 파일을 렌더링하고 결과를 클라이언트로 출력한다. 두 번째 인수에는 템플릿에 전달하는 값을 객체 안에 모아서 지정할 수 있다. 그러면 객체 안의 값을 템플릿 측에서 값으로 사용할 수 있다. (45쪽)
Chat Completion은 챗봇과 같은 대화형 응답(interactive response)을 생성하기 위해 설계된 모델이다. 이전 대화와 컨텍스트를 고려하면서 응답을 생성한다. / Chat Completion은 캐주얼한 대화, 고객 지원, 질의 응답 등 대화형 응답을 필요로 하는 시나리오에 최적화된 모델이다. / 종합하면 Completions API는 범용적인 텍스트를 생성하기 위해 사용되고, Chat Completions API는 대화형 응답을 생성하기 위해 특별히 설계되었다고 할 수 있다. (148쪽)
메서드는 POST를 지정하고 헤더 정보에 Content-Type과 Authorization을 전달한다. 지금까지 여러 차례 구현했으므로 익숙할 것이다. / 핵심인 바디 부분에는 prompt, n, size값을 정리한 객체를 준비한 뒤 JSON.stringify를 이용해 텍스트화하여 지정한다. 내용은 다르지만 그 동작은 같다. fetch는 비동기 함수이므로 여기서는 then으로 콜백 처리를 준비한다. 그 안에서 한 차례 더 비동기인 json을 호출하고 then에서 json의 콜백 처리를 준비한다. 그리고 API에서 받은 값을 처리한다. (191쪽)
반환값 안에 있는 data에는 Embedding한 결과가 모여 있다. 배열로 돼 있으며 각 항목의 embedding에 벡터 데이터(실수 배열)를 저장한다. Embedding 결과를 활용하고 싶을 때는 여기에 있는 벡터 데이터를 사용한다. / 이 벡터 데이터는 text-embedding-ada-002를 사용하는 경우 1536개의 실수 배열로 이루어져 있다. 즉 이 모델에서는 모든 텍스트를 1536개 지표를 기준으로 수치화한다. Embedding 모델에 따라 지표 수도 달라진다. / 이후 새로운 모델이 릴리스돼 지표 수가 증가하면 보다 명확하게 콘텐츠의 의미를 파악할 수 있다. Embedding을 통해 얻어지는 벡터 데이터 내용 또한 모델에 따라 다르다. (242쪽)
Power Automate에서는 흐름(flow)이라 불리는 것을 작성해 프로세스를 구현한다. 흐름은 다양한 서비스에 접근해 결과를 처리하는 일련의 작업을 정의하기 위한 것이다. Power Automate로 무언가 작업을 수행하려면 먼저 수행할 내용에 맞는 흐름을 작성하고 그 흐름 안에 다양한 프로세스를 조합한다. (...) Power Automate는 그 자체로 어떤 프로세스를 수행한다기보다 다른 서비스와 연동하는 프로세스를 조합한다. 따라서 OpenAI API를 이용하더라도 반환값을 Power Automate 안에서 소비하는 일은 거의 없다. 값을 받으면 그 값을 엑셀 시트에 출력하거나 원드라이브(OneDrive)에 파일을 저장하거나 다른 웹 서비스에 데이터를 전송하는 식으로 사용하는 것이 일반적이다. 여기서는 그런 예의 하나로 Power Apps에서 호출하여 사용하는 흐름을 작성해본다. (256쪽)
출판사 서평
강력한 무기 OpenAI API로 나만의 AI 구현하기2022년 말 혜성같이 등장한 ChatGPT는 어느새 일상에 깊숙이 파고들었다. ChatGPT 개발사인 오픈AI는 AI 모델을 누구나 쉽게 커스터마이즈할 수 있는 API를 공개했다. 바로 OpenAI API다. AI 모델을 위한 API로, 관련 지식이 없어도 누구나 이용할 수 있는 API다. 단 1달러로 API를 수백 번 사용할 수 있고, 등록만 하면 곧바로 테스트해볼 수도 있다. AI 봇이나 이미지 생성, 정보를 학습시킨 오리지널 AI 모델 제작 등 원하는 용도로 쉽게 활용할 수 있다.
이 책은 AI 시대에 강력한 무기가 되어줄 OpenAI API 활용법을 체계적으로 담아냈다. 많은 개발자에게 친숙한 프로그래밍 언어인 파이썬과 자바스크립트(Node.js)를 사용한 다양한 예제를 제공하는 것은 물론 노코드 도구를 통한 OpenAI API 사용법까지 소개한다.
1장은 OpenAI API의 개념을 살펴본 후 본격적으로 예제에 들어가기 앞서 계정 등록, 샘플 동작 확인 등 API를 사용해 개발할 수 있는 환경을 준비한다. 2장은 파이썬과 Node.js의 라이브러리를 사용해 OpenAI API에 접근하는 방법을 설명하며, 웹 애플리케이션과 웹페이지에서 API를 사용하는 샘플을 작성해본다. 3장은 Completions API를 사용해 사전 만들기, AI 봇 만들기, Q&A용 AI 제작 등을 해보면서 기본적인 프롬프트를 작성법을, 4장은 Completions API의 다양한 옵션 기능인 에러 처리와 모델, 옵션 인수를 알아본다.
5장은 채팅을 이용하는 Chat Completion과 음성 데이터를 텍스트로 생성하는 Transcription API를 설명하면서 채팅창을 만들고 음성을 텍스트로 추출해보고, 6장은 이미지 생성 기능인 Image Generation을 살펴보면서 이미지를 생성하고 편집하는 방법을 알아본다. 7장은 기존의 AI 모델을 기반으로 자체 데이터를 추가해 나만의 모델을 만들어보고, 8장은 파워 플랫폼 환경인 파워 오토메이트, 파워 앱스, 데스크톱용 파워 오토메이트 등에서 API를 사용하는 방법을 설명한다. 마지막으로 9장은 클릭이나 구글 앱시트, 앱스 스크립트, 오피스 스크립트와 같은 노코드 개발 도구에서의 사용법을 살펴본다.
AI 시대를 살아가고 있는 지금, AI 활용 능력을 높이고 싶다면 다양한 예제를 통해 OpenAI API 활용법을 쉽게 알려주는 이 책이 좋은 지침서가 되어줄 것이다.
주요 내용
● OpenAI API의 기본 개념
● 파이썬과 자바스크립트에서의 OpenAI API 활용법
● 원하는 결과를 얻기 위한 프롬프트 작성법
● DALL-E를 이용한 이미지 생성과 설정법
● 자체 데이터를 기반으로 한 나만의 모델 제작
● 파워 플랫폼, 노코드, 매크로 환경에서의 API 사용법
기본정보
ISBN | 9791193926284 |
---|---|
발행(출시)일자 | 2024년 08월 16일 |
쪽수 | 384쪽 |
크기 |
188 * 245
* 21
mm
/ 867 g
|
총권수 | 1권 |
Klover
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
판매가 5,000원 미만 상품의 경우 리워드 지급 대상에서 제외됩니다. (2024년 9월 30일부터 적용)
구매 후 리뷰 작성 시, e교환권 100원 적립