↓폴밍끼 유튜브 채널 자세히보기

전체 글 74

하나의 도커 이미지 docker image 에 여러 개의 컨테이너 container 만들기(tensorflow/serving)

호스트 시스템의 TCP 포트 번호를 달리 해서 가능하게 했습니다. tensorflow model server를 도커를 통해 실행시켰는데, 비트코인 가격 예측 모델은 포트 번호 8501:8501로 하여 컨테이너를 만들고 이더리움 가격 예측 모델은 도커 엔진이 호스트 시스템의 TCP 포트 8502번을 컨테이너의 TCP 포트 8501번으로 포워딩하도록 하여(8502:8501) 컨테이너를 두 개 만들었습니다. 즉, 호스트 시스템의 TCP 포트만 바꿔주고(8501->8502) 컨테이너의 TCP 포트는 8501번으로 고정시켜 줍니다. 기본적으로 TF서빙은 8501번 포트를 사용하여 REST API를 제공하기 때문입니다. (8500번은 gRPC API를 제공하는 데 사용합니다.) 참고로 각각 예측 모델의 컨테이너 생..

도커를 활용한 Tensorflow model server에 새로운 버전의 모델 배포하기

새로운 버전의 모델을 만들어 이전 글의 0번째 단계에서와 같이 C:\Users\007_0\serving\btc_lstm\2 폴더에 saved_model함수를 써서 모델을 저장합니다. import tensorflow as tf data_path = 'C:\Users\007_0\serving\btc_lstm' modelpath = data_path + "\2" # 모델 버전 2을 의미합니다 tf.saved_model.save(model, modelpath) 끝입니다. 이렇게 저장만 해준다면 일정한 간격으로(간격 조정 가능) 텐서플로 서빙이 새로운 버전을 확인합니다. 새로운 버전을 찾으면 자동으로 버전 교체를 진행합니다. 기본적으로 대기 중인 요청이 있다면 이전 버전의 모델로 응답합니다. 새로운 요청은 새 버..

Tensorflow Model Server 정복 (REST API, WSL2 사용, LSTM 모델)

저는 Tensorflow Model Server를 아무것도 모르는 상태에서 구현하기 위해 많은 애를 써야 했습니다. 그래서 저의 경험을 바탕으로 다른 분들은 조금이라도 쉽게 이에 접근하실 수 있도록 포스트를 작성합니다! 방법은 크게 5단계입니당!! 0. 일단은 학습한 모델을 다음과 같이 tensorflow의 saved_model 함수를 써서 저장해야 합니다. (여기엔 생략된 것이지 위쪽에 model=Sequential() 해서 LSTM 모델 학습을 시켜주었습니다) import tensorflow as tf data_path = 'C:\Users\007_0\serving\btc_lstm' modelpath = data_path + "/1" # 모델 버전 1을 의미합니다 tf.saved_model.save(..

아~ 무리 해도 prettier가 python 파일에는 안 먹힐 때 해결 방법

Extension prettier cannot format python을 해결해보겠습니다... 그러니까 다음과 같은 상황입니다. Format on Save 설정도 하고, default Formatter도 prettier로 설정했는데 그러니까 이 짓 저 짓 다~ 했는데 python 파일에는 적용이 안될 때!!! 1. vs code에 설정(setting)으로 들어가 json이라고 검색한 다음 'settings.json'에서 편집 클릭 2. 다음 코드를 설정 아래쪽에 붙여 넣은 후 저장합니다. "[python]": { "editor.defaultFormatter": "ms-python.python" } 3. 그러고 나면 우측 하단에 autopep8을 설치하라는 말이 나올 텐데 설치해줍니다. 참고로 저는 설치하..

pandas timestamp형을 문자열로 변환

https://rfriend.tistory.com/498 [Python pandas] Pyhon datetime, pandas Timestamp을 문자열(string)로 변환, 문자열을 datetime, Timestamp로 변환하 지난번 포스팅에서는 Python standard datetime과 pandas Timestamp 객체로 날짜-시간 데이터를 입력, 변환, 조회하는 방법을 소개하였습니다. 이번 포스팅에서는 (1) Python datetime, pandas Timestamp 객체를.. rfriend.tistory.com

flask로 만든 변수를 chart.js 에 적용하는 방법

이 글은 flask로 chart.js를 적용해서 만드는데 html부분에 변수 적용이 어려웠던 저의 경험을 나누고자 작성되었습니다. 아래는 https://www.chartjs.org/docs/latest/ 에서 제공하고 있는 예시인데요, 이 코드의 결과물은 아래와 같고요, 웹에 chart.js를 띄울 때 보통 labels: ['Red', 'Blue', 'Yellow', 'Green', 'Purple', 'Orange'], 이 부분(x축 라벨)과, datasets의 data: [12, 19, 3, 5, 2, 3] 이 부분(y 데이터)을 바꾸고 싶어 하실 거예요. 예시와 같이 고정 데이터면 상관없겠지만 때에 따라 바뀌어야 하는 데이터라면 flask로 생성한 변수를 그때그때 넣어줘야 하니까 json데이터로 넣어..

FRAME WORK/Flask 2021.07.26