-
Fast API대학 수업/Fast API 2024. 9. 2. 12:20
?
유비쿼터스 네트워크
=> RFID, bluetooth 등의 기구를 통한 대상(사람, 사물) 인식
==> 고전적임
Python netframework
AI - IOT(주요 내용) 연결 서비스
어떤 형태로 서비스가 구축되는지, 어떻게 이뤄질것인지
DevOps
개발/운영 작업 결합, 및 자동화
=> 소프트웨어 개발 방법론
==> 기존 개발 단계가 연결성이 부족한 면을 보완, 자동화
CI : Continuous Integration
위를 포함한,
CD : Continuous Delivery(+다른 용어)
source control <> githup
jankis?
ML Ops
데옵 철학, 도구 가져와 머신러닝 고유한 요구 사항을 추가하여 적용한 개발방법론 및 도구
(모델 개발과 이용의 연계가 잘 이뤄지지 않는 상황을 개선하기 위한 개념 적용)
모델 배포 및 유지관리 자동화, 서비스 신속 출시
모델 품질 및 안정성 향상
DS, Ops 간의 협업성 개선
ML+Dev+Ops
운영환경을 구축하고, 모델을 서빙하는데 주점을 둔 과정(수업이다)
Model Serving
프로토콜을 이용한 서비스
왜 FastAPI인가?
Python과 가장효과적으로, 편하게 통신할 수 있다.
=>파이썬 기반 프레임워크
==> 현대적이고 빠른 웹 프레임워크
현대적 : 개요자료를 살펴보니
=> '빠르다' + '현대적이다'
웹을 기반으로 동작하는 프로그램에는
웹 어플리케이션 vs 웹 서비스 가 존재한다.
개발방법은 똑같으나 결과물이 다르다
다른 형태의 서비스 프로토콜을 구현한다?
=> 어플리케이션 : 웹 페이지 // 클라이언트 대상으로 response 가 웹 페이지이다.
=> 서비스 : 처리 결과에 대한 데이터를 제공한다 // xml, json...
<> web api // open api
api란 무엇인가?
함수호출
필요로 하는 기능(함수)를 호출한다
호출한 뒤, 결과를 요구(데이터)
http프로토콜 기반 구축 = web api
SOAP : XML
RESTful : http기반으로, 정의된 것으로 : Json
=> 라이브러리 이용하면 web api(restful) 개발 가능
웹 페이지를 탬플릿팅? 라이브러리?을 통해 만들 수 있다.
높은 성능, 직관적 문법(단순하게 구현 가능)
ASGI 기반 비동기 처리 지원 : 웹 어플리케이션 개발 지원
WSGI(web server gateway interface)
- 파이썬 웹 어플리케이션과 웹 서버 간의 인터페이스로서 사용
- 동기적인 프로그래밍 모델(싱글 스레드), 동시처리 제약 있음
- Flask, Django 와 같은 기존 프레임워크 지원
ASGI - fast api 가 지원함
- 비동기 웹어플리케이션 위한 파이썬 웹 서버 -프레임워크
- 비동기 + 동기 처리 지원 : 더욱 향상된 성능
fastapi 특징
- 성능 : 특정 경우 Node.js 와 Go에 견줄만 하다
- 빠른 개발 : 이해하기 어렵거나 이상한 부분이 없다
- 추상화 : 제약적인 활용방안
- 인공지능 서비스 제공한다 => 간단하게 제공만 할 수 있다면 해결!
- 대규모 사용자를 지원할 수 있는 플랫폼이면 충분하다
- 향상된 코드 품질(현대적) : 타입 힌트와 Pydatic 모델 버그 줄이는데 유용
- data validation : 클라이언트가 보낸 데이터가 유효한가? 를 확인
- 자동 생성된 문서 및 테스트 페이지 : Open API (URL 호출) URL, Request parameter, Response json
- document 생성 자동화
CGI : common gateway interface
웹 프로그램 실행할 능력이 없다 => 프로그램 실행한 결과를 받아오기 위한 프로토콜
whas server?
파이썬 언어 공유되니까
docker 를 이용하여 container 로 묶어 cloud 로 공유
D / F / Fapi
d : orm(db, interface) : 풀스택
f : 부하관리(ex : 수강신청) // micro sevice? architecture 특징 존재 // orm, 폼 검증 등 추가 라이브러리 필요
fa : 추가 기능(db접속 등) 라이브러리 필요
윈도우 환경
=> WSL2 우분투 + Terminal (원하는 셀을 실행할 수 있는~ 마소 프로그램 중 하나?)
Cy기반 : 명령어 기반 프로그램 실행
테스트 하기위한 웹 클라이언트
Curl(Text UI) ,크롬, Postman
'그'UI / GUI
=> get post release...
브라우저 상에서 보낼 수 없는 것을 Postman활용
OpenAPI . json
프론트엔드 프로그램 자동 생성? 존재하지만 완벽하지 않음
제이슨 기반 웹 기반 서비스 해준다
스웨그 니닥
intective?
=> docu보여주고 ~~???
7~8주차까지
Fast api
나머지를 mlops구현
=> 책 : 딥러닝 서비스
+ Fast api 를 사용한 파이썬 웹 개발 2만
10월 이후 공채 - 대기업 - 경쟁 치열
일할 기회가 있다면 경력을 어쨋든 만들어라
'대학 수업 > Fast API' 카테고리의 다른 글
인터프리터와 컴파일러 그리고 IDE (2) 2024.09.02