이미 소장하고 있다면 판매해 보세요.
|
추천의 글
지은이 소개 옮긴이 소개 옮긴이의 말 들어가며 1부 | 데이터 사이언스를 위한 API 개발 1장 데이터 사이언티스트를 위한 API 만들기 데이터 사이언티스트는 API를 어떻게 활용할까? 데이터 사이언티스트는 어떤 도구를 사용할까? 데이터 사이언티스트를 위한 API 설계 1부 포트폴리오 프로젝트 소개 모든 API에는 스토리가 있다 __SportsWorldCentral 회사 소개 __SWC에 API가 필요한 이유 첫 번째 API 제품 선택 __잠재 사용자 식별 __사용자 스토리 만들기 참고 자료 요약 2장 API 아키텍처 선택 API 아키텍처 스타일 __상태 전이 표현 __GraphQL __gRPC __우리의 선택: REST 기술 아키텍처 2장에서 사용하는 소프트웨어 __파이썬 __GitHub GitHub Codespace 시작하기 __GitHub 계정 만들기 __1부 저장소 복제하기 __GitHub Codespace 실행하기 __Codespace 환경 둘러보기 __첫 번째 커밋하기 참고 자료 요약 3장 데이터베이스 만들기 API 구성 요소 3장에서 사용하는 소프트웨어 __SQLite __SQLAlchemy __pytest SQLite 데이터베이스 만들기 __데이터베이스 테이블 만들기 __테이블 구조 이해하기 __데이터 불러오기 파이썬을 사용해 데이터에 접근하기 __사용자 환경에 SQLAlchemy 설치하기 __데이터베이스 접근을 위한 파이썬 파일 만들기 __데이터베이스 구성 파일 만들기 __SQLAlchemy 도우미 함수 만들기 __환경에 pytest 설치하기 __SQLAlchemy 코드 테스트하기 참고 자료 요약 4장 FastAPI 코드 개발 포트폴리오 프로젝트 진행 4장에서 사용하는 소프트웨어 __FastAPI __HTTPX __Pydantic __Uvicorn 3장 프로젝트 파일 복사하기 Codespace에 새 라이브러리 설치하기 API용 파이썬 파일 만들기 __Pydantic 스키마 정의하기 __FastAPI Controller 만들기 API 테스트 API 실행하기 참고 자료 요약 5장 API 문서화 신뢰 확보하기 좋은 API 문서 만들기 __핵심 기능 __추가 기능 실제 API 문서 살펴보기 __Sleeper 애플리케이션 __MyFantasyLeague __Yahoo! 판타지 풋볼 API 내장 문서 확인하기 __4장 프로젝트 파일 복사하기 __문서화 옵션 1: Swagger UI __문서화 옵션 2: Redoc OAS 파일 포트폴리오 프로젝트 이어하기 __OAS info 객체에 세부 정보 추가하기 __경로 분류를 위한 태그 추가하기 __개별 엔드포인트에 세부 정보 추가하기 __쿼리 매개 변수 설명 추가하기 __Swagger UI에서 변경 사항 확인하기 __API 회귀 테스트 README.md 파일 업데이트하기 참고 자료 요약 6장 클라우드에 API 배포하기 클라우드 배포의 장점과 책임 __장점 __책임 클라우드 호스트 선택 방법 프로젝트 디렉터리 설정 GitHub Codespace를 클라우드 호스트로 사용하기 Render에 API 배포하기 __Render 계정 만들기 __새 웹 서비스 만들기 __API 변경 사항 자동 배포하기 도커 컨테이너로 애플리케이션 배포하기 __도커 주요 용어 정리 __도커 설치 여부 확인하기 __도커파일 만들기 __.dockerignore 파일 만들기 __컨테이너 이미지 빌드하기 __로컬에서 컨테이너 이미지 실행하기 AWS에 애플리케이션 배포하기 __Lightsail 컨테이너 서비스 만들기 __AWS CLI 설치하기 __Amazon Lightsail 컨테이너 서비스 플러그인 설치하기 __로그인 자격 증명 구성하기 __컨테이너 이미지를 Lightsail로 푸시하기 __Lightsail 배포 만들기 API 문서 업데이트 참고 자료 요약 7장 바로 사용할 수 있는 파이썬 SDK 만들기 SDK는 사용자와 API의 간극을 메워 준다 SDK 개발 언어 선택 전략 최소 기능 SDK로 시작하기 __전문가의 조언: SDK를 쉽게 설치하도록 만들어야 한다 __전문가의 조언: 일관되고 자연스러운 파이썬 스타일의 SDK를 만들어야 한다 다양한 기능을 갖춘 SDK 만들기 __전문가의 조언: 합리적인 기본값을 사용해야 한다 __전문가의 조언: 다양한 기능을 제공해야 한다 __전문가의 조언: 의미 있는 로그를 남겨야 한다 __전문가의 조언: API의 복잡한 세부 사항은 숨겨야 한다 __전문가의 조언: 대용량 다운로드 기능을 지원해야 한다 __전문가의 조언: SDK 문서를 만들어야 한다 __SDK 테스트 __전문가의 조언: 모든 API 작업을 SDK로 지원해야 한다 1부 프로젝트를 마무리하며 참고 자료 요약 2부 | 데이터 사이언스 프로젝트에서 API 활용하기 8장 데이터 사이언티스트가 API에 관해 알아야 할 것들 다양한 API 스타일 활용하기 HTTP 기본 사항 API를 책임감 있게 사용하는 방법 관심사 분리: API 호출 코드 분리와 SDK 활용의 중요성 API를 만드는 방법 API 테스트 방법 API 배포 및 컨테이너화 버전 관리 시스템의 중요성 2부 포트폴리오 프로젝트 소개 GitHub Codespace 실행하기 __2부 저장소 복제하기 __GitHub Codespace 실행 및 설정 로컬에서 SWC API 실행하기 참고 자료 요약 9장 데이터 분석을 위한 API 활용 스포츠 분석을 위한 사용자 정의 측정 지표 판타지 사용자 정의 측정 지표를 위한 API 데이터 소스 샤크 리그 점수 사용자 정의 측정 지표 만들기 9장에서 사용하는 소프트웨어 __httpx __주피터 노트북 __pandas Codespace에 새 라이브러리 설치하기 Codespace에서 API 실행하기 API 클라이언트 파일 만들기 주피터 노트북 생성 및 환경 설정 노트북 설정하기 API 데이터 활용하기 리그 균형 점수 계산 라인업 효율성 점수 계산 샤크 리그 점수 계산 참고 자료 요약 10장 데이터 파이프라인에서 API 활용하기 데이터 파이프라인의 데이터 소스 유형 데이터 파이프라인 구축 계획 Apache Airflow로 데이터 파이프라인 오케스트레이션하기 GitHub Codespace에 Apache Airflow 설치하기 로컬 분석용 데이터베이스 만들기 Codespace에서 API 실행하기 Airflow 연결 설정 첫 번째 DAG 만들기 공유 함수 만들기 DAG 실행하기 요약 11장 Streamlit 데이터 애플리케이션에서 API 사용하기 대화형 시각화로 사용자 참여 유도하기 11장에서 사용하는 소프트웨어 __nfl_data_py __Streamlit Streamlit 및 nfl_data_py 설치하기 Codespace에서 API 실행하기 9장 API 클라이언트 재사용하기 Streamlit 애플리케이션 만들기 진입점 파일 업데이트 Streamlit 애플리케이션 실행하기 팀 선수 명단 페이지 만들기 팀 통계 페이지 만들기 Streamlit 애플리케이션 배포하기 2부 프로젝트를 마무리하며 참고 자료 요약 3부 | API로 AI 활용하기 12장 API로 AI 활용하기 AI와 API의 접점 생성형 AI와 LLM이 사용할 API 설계하기 AI의 정의 생성형 AI와 LLM 에이전트형 AI 애플리케이션 만들기 3부 포트폴리오 프로젝트 소개 GitHub Codespace 시작하기 __3부 저장소 복제하기 __GitHub Codespace 실행 및 설정 참고 자료 요약 13장 머신러닝 API 배포하기 머신러닝 모델 학습 과정 13장에서 사용하는 소프트웨어 __ONNX Runtime __scikit-learn __sklearn-onnx Codespace에 새 라이브러리 설치하기 CRISP-DM 프로세스 사용하기 비즈니스 이해 데이터 이해 데이터 준비 모델링 평가 배포 참고 자료 요약 14장 LangChain을 활용해 API 사용하기 AI를 사용해 API 호출하기(LangChain 활용) LangGraph 에이전트 만들기 __Anthropic 가입하기 __GitHub Codespace 실행하기 Codespace에 새 라이브러리 설치하기 주피터 노트북 만들기 LangGraph 에이전트와 대화하기 로컬에서 SWC API 실행하기 swcpy SDK 설치하기 LangChain 툴킷 만들기 AI를 사용해 API 호출하기(LangGraph 활용) 에이전트와 대화하기(도구 사용) 참고 자료 요약 15장 챗GPT를 사용해 API 호출하기 애플리케이션 아키텍처 챗GPT 시작하기 사용자 정의 GPT 만들기 GitHub Codespace 실행하기 GitHub Codespace에서 SWC API 실행하기 OAS 파일에 서버 정보 추가하기 GPT 작업 만들기 GPT에서 API 테스트하기 사용자 정의 GPT와 대화하기 3부 포트폴리오 프로젝트 마무리 요약 찾아보기 |
Ryan Day
김경환의 다른 상품
장기식의 다른 상품
|
1. 설계부터 배포까지 한 번에!
이 책은 요구 정의와 사용자 스토리에서 출발해 REST 선택, 데이터 모델링, 엔드포인트 설계를 차근차근 완성해 나간다. 이어서 FastAPI·SQLAlchemy·Pydantic을 활용해 타입 안정성과 유지보수성을 확보하고, OpenAPI 기반 문서를 통해 팀 협업을 더욱 정교하게 다듬는다. 회귀 테스트와 도커 컨테이너로 안정적인 릴리스 흐름을 마련한 뒤, Render와 AWS로 배포해 실제 운영 환경까지 준비한다. 마지막으로 파이썬 SDK를 PyPI에 배포해 일관된 사용 경험과 재사용성을 제공하며, API 실무의 처음부터 끝까지 한 번에 완주할 수 있도록 안내한다. 2. 만든 순간 쓰이는 마법 이 책에서 다루는 노트북·파이프라인·대시보드는 ‘만드는 즉시 가치가 드러나는’ 실무 도구들이다. httpx 클라이언트로 API를 호출해 주피터와 pandas에서 지표를 계산하고 인사이트를 도출할 수 있으며, Airflow로 증분 수집과 의존성을 관리해 반복 가능한 데이터 파이프라인을 구축할 수 있다. 여기에 Streamlit으로 대화형 시각화를 제공하면 사용자 참여와 의사결정 속도가 동시에 높아진다. 나아가 API 소비자 관점에서의 모범 사례를 통해, 데이터가 어떻게 실제 제품 가치로 전환되는지 자연스럽게 확인할 수 있다. 3. 모델을 서비스로! 이 책은 ONNX·LangChain·챗GPT를 활용해 모델을 실제 서비스로 전환하는 과정을 일관되게 보여준다. 우선 scikit-learn 모델을 ONNX로 변환해 추론 성능과 이식성을 끌어올리고, FastAPI를 통해 예측 엔드포인트를 공개한다. 여기에 인증·인가를 더해 보안 경계를 확보하고, 운영 환경에 맞는 설정을 갖춰 실 서비스 수준으로 완성한다. 이후 LangChain과 LangGraph로 도구 호출형 에이전트를 구성해 API 오케스트레이션을 자동화하고, 챗GPT와 OAS를 연동해 대화형 워크플로까지 확장함으로써, 모델이 실제 사용자 경험으로 자연스럽게 이어지도록 돕는다. 이 책의 대상 독자 및 이 책에서 다루는 내용 이 책은 API, AI, 데이터 사이언스의 접점에 있는 내용을 다루는 만큼, 다음 세 가지 유형의 독자에게 특히 유용하다. 데이터 사이언티스트 데이터 사이언티스트(data scientist)들은 항상 API를 사용하지만, ‘REST API 호출은 코드 몇 줄이면 구현할 수 있다’라는 이유로 API 사용에 대해 새로 배울 것이 없다고 생각하기 쉽다. 실제로 REST API는 호출이 간단하며, 그 점이 API 확산의 한 이유가 됐다. 하지만 안정적이고 견고하며 제공자에게 부담을 주지 않는 탄력적인 방식으로 API를 사용하려면 더 세심한 접근이 필요하다. 이 책을 통해 배울 수 있는 핵심 기술은 다음과 같다. ● API 개발 및 배포하기 ● 소프트웨어 개발 키트(SDK, Software Development Kit) 및 API 클라이언트 개발하기 ● 파이썬(Python) 패키지를 만들어 PyPI에 배포하기 ● 머신러닝 모델을 API로 배포하기 ● Streamlit 기반 데이터 애플리케이션 개발하기 ● Airflow 데이터 파이프라인 구축하기 ● LangChain과 챗GPT(ChatGPT)를 활용한 생성형 AI 애플리케이션 개발하기 API 개발자 및 설계자 API 개발자와 설계자는 중요한 새 사용자층을 위해 API를 강화하는 방법을 배울 수 있다. 데이터 사이언티스트가 하는 일, 수행하는 작업, 선호하는 API 기능 등을 배우게 된다. 또한 생성형 AI 애플리케이션이 API를 호출하는 방법과 API에 필요한 기능에 대해서도 배울 수 있다. 그리고 실습 예제를 통해 다음과 같은 다양하고 새로운 기술을 배울 수 있다. ● FastAPI, SQLAlchemy, Pydantic을 사용하는 파이썬 API 개발하기 ● 도커(Docker)로 API 컨테이너화하기 ● 클라우드 호스트에 API 배포하기 ● 파이썬 SDK를 만들어 PyPI에 배포하기 ● LangChain과 챗GPT를 사용해 생성형 AI 애플리케이션 개발하기 구직자 및 이직자 위에서 소개한 기술들은 현장에서 많이 필요로 하는 기술이므로, 이 기술을 배우면 데이터 사이언스나 소프트웨어 개발 분야에서 첫 직장을 찾거나 새로운 역할에 도전하는 데 큰 도움이 될 것이다. 이 책은 포트폴리오 프로젝트를 중심으로 구성했다. 이를 통해 구체적인 목표를 달성해 실력을 증명하는 가시적인 성과물을 만들 수 있다. 지은이의 말 인공지능(AI, Artificial Intelligence) 분야에서 성공하려면 먼저 애플리케이션 프로그래밍 인터페이스(API, Application Programming Interface)에 익숙해져야 한다. AI, 머신러닝(machine learning), 데이터 사이언스(data science)의 비약적 성장으로 인해 API를 활용하는 능력은 그 어느 때보다 중요해졌다. 하지만 이렇게 광범위한 기술을 한꺼번에 배우려면 막막할 수 있다. 어떻게 시작해야 할까? 다행히도 모든 기술을 한 번에 배울 필요는 없다. 실전 예제를 통해 한 번에 한 가지 기술을 차근차근 배워 나가면, 배운 기술 하나하나가 다음 기술을 더 쉽게 익힐 수 있는 디딤돌이 돼 줄 것이다. 이 책을 펼친 여러분은 분명히 실력을 쌓고자 하는 열정이 있을 것이다. 나 역시 직접 실습 예제 코딩을 통해 가장 빠르고 깊이 있게 배웠다. 학습한 코드를 공개 저장소에 올리고, 블로그나 SNS를 통해 결과물을 공유하면 다른 사람들에게 도움을 줄 수 있는 지식을 전수할 수 있을 뿐만 아니라, 취업 시 여러분의 전문성을 구체적으로 보여 줄 수 있는 탄탄한 포트폴리오를 만들 수 있다. 이 책을 처음부터 끝까지 순서대로 읽기보다는, 배우고 싶은 기술을 먼저 선택하고 해당 기술을 공부하는 것을 권장한다. 빠르게 시작하는 방법은 다음과 같다. 1. API 개발(1부), 데이터 사이언스에서 API를 사용하기(2부), AI에서 API를 사용하기(3부) 중 먼저 시작하려는 주제를 결정한다. 2. 해당 부의 시작 장에 소개한 지침에 따라 GitHub 저장소를 복제(clone)하고 Codespace를 실행한다. 3. 해당 장의 지침에 따라 코드를 실행한다. 각 장은 독립적으로 학습할 수 있도록 구성했다. 한 가지 기술을 배운 다음에, 배우고 싶은 다른 기술을 찾아 같은 방식으로 학습하기 바란다. 이 책의 기술들은 마치 블록 쌓기와 같아 배운 기술 하나하나가 다른 기술을 더 잘 이해할 수 있는 토대가 된다. 모든 기술을 다 배우고 나면 데이터 사이언스와 AI 분야의 API를 폭넓게 이해할 수 있을 것이다. 옮긴이의 말 회사에서 데이터 수집 및 분석 플랫폼을 구축하고 AI 모델을 개발하는 업무를 수행하다 보면, 늘 반복되는 과제가 있다. 바로 ‘데이터와 분석 결과를 어떻게 사용자에게 효과적으로 전달할 것인가’이다. 이 질문에 대한 가장 실용적이고 확장 가능한 해결책은 API였다. 업무상 API를 직접 개발하고 기존 시스템에 통합해야 할 필요성이 커지던 시기, 이 책 『AI와 데이터 사이언스 API』를 접하게 됐다. 처음에는 API 기술을 체계적으로 학습할 목적으로 번역을 시작했다. 그러나 번역 과정에서 이 책이 단순한 기술 입문서를 넘어서는 깊이를 지녔음을 깨달았다. 저자 라이언 데이(Ryan Day)는 판타지 풋볼 데이터를 활용한 프로젝트를 통해 데이터 수집, 모델 학습, API 구축, 클라우드 배포에 이르는 전체 워크플로를 명확히 제시한다. 이는 현재 개발 중인 플랫폼의 아키텍처와 직접적으로 일치해 큰 통찰을 줬다. FastAPI와 SQLAlchemy를 활용한 데이터베이스 연동, Pydantic을 이용한 입력 검증 로직은 대용량 데이터 처리와 모델 안정성을 강화하는 데 즉시 적용할 수 있는 내용이었다. 실시간 예측 모델 배포 시 AWS와 도커를 고민하던 부분에서 CI/CD 파이프라인 예제는 실무적 해결책을 제공했다. API를 개발하는 측면과 사용하는 측면의 경계를 허무는 접근도 인상적이었다. 2부와 3부에서 1부의 API를 주피터 노트북, Airflow 파이프라인, Streamlit 대시보드와 연동하는 과정은 데이터 서비스의 가치를 구체화하는 데 기여했다. ONNX 모델 변환과 LangChain을 이용한 AI 에이전트 구현은 AI 분석 모델을 서비스로 확장하는 최신 방법을 보여 줬다. 데이터 사이언티스트로서 모델링에 집중하다 보면 소프트웨어 엔지니어링 측면을 간과하기 쉽다. 이 책은 API를 단순 인터페이스가 아닌 분석 결과를 전달하는 연결 고리로 인식하게 한다. RESTful 설계 원칙, OpenAPI 문서화, 인증·인가 메커니즘은 팀 협업을 원활하게 하고 보안 수준을 높이는 데 실질적 도움이 됐다. 번역을 마무리하며, API는 데이터 중심 조직의 핵심 인프라임을 재확인했다. 이 책은 데이터 사이언티스트, 백엔드 엔지니어, IT 아키텍트 등 실무 개발자에게 유용한 지침서가 될 것이다. 원저자의 실전 중심 접근에 감사드린다. |
|
이 책은 데이터 사이언스 커뮤니티에 커다란 기여를 하고 있다. 라이언 데이는 데이터 사이언티스트들이 종종 너무 늦게 배우는 핵심 주제인 ‘사용자에게 솔루션을 제공하는 방법’을 체계적으로 소개한다. 이 책을 통해 API에 대한 내용을 배울 수 있을 뿐만 아니라, 데이터 사이언스 툴킷으로 사용할 수 있는 12가지 이상의 새롭고 강력한 도구를 얻을 수 있다. 여러분의 전문성 향상을 위해 이 책을 꼭 읽고, 더 뛰어나고 효율적인 데이터 사이언티스트가 되길 바란다! - 알렉스 거트맨 (『대격변 AI 시대, 데이터로 사고하고 데이터로 리드하라』(책만, 2024)의 저자)
|
|
이 책은 판타지 풋볼(fantasy football)이라는 매우 시의적절한 산업을 예로 들어 빈틈없고 명확한 API 구축 로드맵을 제시한다. 이 책은 개인으로서 데이터 사이언스 역량을 강화하거나 조직 차원에서 고객 서비스를 강화하려는 분들을 위한 필독서다. - 에릭 에거(Eric Eager) (캐롤라이나 팬더스(Carolina Panthers)의 풋볼 애널리틱스(football analytics) 부사장이자 『Football Analytics with Python and R』(O’Reilly Media, 2023)의 저자)
|
|
데이터 사이언스와 AI 분야에서 API의 중요성이 커지고 있는 지금, 이 책은 실용적인 인사이트를 얻기 위한 최고의 지침서다. 이 책은 ‘사용자의 이해’를 최우선으로 삼아 좋은 API를 설계하고 구축하는 방법을 상세히 소개하며, 실행 가능한 예제와 전문가의 노하우를 제공한다. - 제임스 고프 (『Mastering API Architecture』(O’Reilly Media, 2023)의 저자)
|
|
이 책은 API를 구축하거나 API를 통해 데이터를 활용하는 데이터 사이언티스트를 위한 필수 지침서다. 매우 실용적이고 재미있게 읽을 수 있으며, 소프트웨어 엔지니어링 역량을 한 단계 높이고자 하는 분께 강력히 추천한다. - 캐서린 넬슨 (『데이터 과학을 위한 소프트웨어 엔지니어링』(제이펍, 2025)의 저자)
|
|
이 책은 모든 수준의 데이터 사이언티스트를 위해 깊이 있는 기술 전문 지식과 실용적인 전략을 결합한 포괄적인 API 사용법을 제시한다. - 크리스 로울리(Kris Rowley) (CSBS 최고데이터책임자(CDO, Chief Data Officer), 데이터 파운데이션(Data Foundation) 이사회 멤버)
|
|
이 책은 기술 서적에서 흔히 볼 수 있는 ‘실제 활용 맥락과 동떨어진 이론’을 배제하고, 기술이 실제로 사용되는 방식을 소개한다. 저자는 스포츠 데이터를 활용한 재미있는 사례를 통해 단일 API 프로젝트를 여러 각도에서 살펴본다. 데이터 사이언스 분야 종사자라면 누구나 이 책에서 유용한 정보를 얻을 수 있을 것이다. - 아담 듀벤더(Adam DuVander) (에브리디벨로퍼(EveryDeveloper))
|
|
이 책은 판타지 스포츠의 흥미로운 사례를 통해 더 나은 API 사용자이자 제작자가 되는 방법을 자세히 소개한다. - 리처드 에릭슨(Richard Erickson) (데이터 사이언티스트, 『Football Analytics with Python and R』(O’Reilly Media, 2024)의 저자)
|