목록전체 글 (41)
강
본 포스팅은 “MLFlow를 활용한 MLOps” 책을 통해 학습하고 추가적으로 공부하여 정리한 글입니다. 실습 코드 전체 버전과 Tensorflow 의외에 다른 프레임워크를 다룬 코드는 깃허브에 정리되어 있습니다. 머신러닝 파이프라인 자동화 머신러닝과 딥러닝 모델의 수요는 ChatGPT의 등장과 함께 더더욱 늘어나고 있고 앞으로도 늘어날 것 이다. 회사 입장에서 AI 모델을 사용하기 위해 일반적으로 아래의 과정을 따른다. 이러한 배포 구조를 ML 파이프라인이라고 부르며 모든 과정은 한번만 수행되는 것이 아닌 파이프라인 배포 상황에 따라서 유동적으로 조정될 여지가 있어 반복적인 성향을 띈다. 따라서 Frontend, Backend, Data Engineer 등의 반복되는 업무를 자동화 해주고 인프라를 구성..
ChatGPT는 출시된 후 프로그래머 사이에 적잖이 큰 충격을 주었다. 기대이상의 수준 높은 답변과 직접 코딩까지 해주는 등 업무에 이용할만한 수준까지 발전되었기 때문이다. 지금까지 ChatGPT를 사용하려면 직접 ChatGPT 웹사이트에 방문하여 질문을 남기는 방식이 일반적이였다. 하지만 슬랙에서 ChatGPT를 사용할 수 있다면 얼마나 편할까? 팀원들과 업무를 진행하면서 의문점이 생겼을 때 곧바로 ChatGPT를 통해 질문을 남기고, 답변을 받는다면 업무처리가 조금 더 원활해 질 수 있을 것 이다. 따라서 본 포스팅에서는 슬랙에서 ChatGPT를 사용할 수 있도록 안내한다. Python, OpenAI, 슬랙봇의 RTM 기능을 이용할 예정이다. 0. ChatGpt 슬랙에 온걸 환영합니다. 1. 슬랙 봇..
AWS Lambda 환경에서 ML 추론 작업 수행해보기 서론 해당 글에서는 다양한 ML 프레임워크 중 Tensorflow를 사용해 간단한 딥러닝 추론을 진행하는 방법에 대해 다룹니다. Tensorflow 추론 코드에 대한 이해도가 어느정도 있다고 가정하고 진행합니다. 1. 깃허브 구성 AWS Lambda에서 실행시킬 코드와 관련 라이브러리 환경 구성을 위해 깃허브를 이용합니다. 해당 깃허브 링크를 예시로 설명합니다. https://github.com/workdd/lambda-container-example model 폴더에는 추론을 위한 모델이 담겨져 있습니다 imagenet_class_index.json는 정확도 측정을 위한 imagenet의 정답 라벨 데이터가 json 형식으로 저장되어 있습니다 la..
aws cli은 기본적으로 대부분 version 1로 설치되어 있다. 하지만 연구를하면서 아래와 같이 aws cli version2 에서만 쓸 수 있는 명령어를 사용해야 했고, 버전을 업데이트 하였다. aws lambda create-function AWS CLI 1 삭제 aws 공식 문서에서도 version 1과 2는 모두 ‘aws’ 명령어 이름을 쓰기 때문에 주의가 필요하다고 한다. 나의 경우 간단하게 cli 1 버전을 삭제하고, cli 2버전을 새로 설치하였다. 해당 명령어들을 활용해 cli 1 버전 삭제를 진행한다 pip3 uninstall awscli sudo yum remove awscli sudo rm ~/.aws/ aws cli 1버전을 삭제하는데 굉장히 애를 먹었었다. 현재 해당 aws ..
[Docker] Ubuntu Docker 권한 에러 발생 docker start를 시도 했을 때 다음과 같은 에러를 확인했다. Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock:[내 도커 아이디] dial unix /var/run/docker.sock: connect: permission denied 문제 해결 해당 문제는 docker.sock 파일과 연관이 있었다. 해당 파일을 접근할 수 있도록 권한을 주어 해결했다. sudo chmod 666 /var/run/docker.sock 노션에 정리해두었다가 매번 노션을 찾는게 번거로워 블로그에 업로드함 참조 https:/..
M1 맥북이 출시되면서 더이상 인텔이 하드웨어 칩에서 1인자가 아님을 여러 느끼고 있다. 여러 하드웨어 칩 셋 제공업자들은 더이상 인텔에 의존하지 않고 독자적인 Arm 기반 칩을 만드는데 주력하는 것이 최근 트렌드인 듯 하다. AWS도 발빠르게 이러한 트렌드를 따라가고(주도 하는 것 같기도) 있으며 추론 용 하드웨어인 AWS Inferentia Neuron 칩도 발표가 되었었다. 오늘은 일반 인텔기반 EC2 처럼 범용적으로 사용할 수 있지만 성능면에서 최적화한 AWS의 Graviton2 칩을 소개하고자 한다. 이 글은 아래 세미나 강의를 적극 참고하여 작성했습니다. Graviton2 기반의 EC2 인스턴스 집중 탐구 - 윤석찬 https://www.youtube.com/watch?v=GHQMFVLRl4U..
GCP에서 제공하는 Cloud TPU는 먼저 생성을 한후 GCP VM과 네트워크 적으로 연결시켜 사용한다. GCP 콘솔에서 직접 버튼을 눌러 생성하는 방법도 있겠지만 상당히 번거롭다. 따라서 이번 포스팅에서는 gcloud를 이용하여 TPU를 생성하고, 삭제해 볼 것 이다. Gcloud 설정 우선 현재 환경에 gcloud가 설치되어 있어야 한다. 환경 설정을 하지 않았다면 아래의 링크에 포스팅 해두었으니 참고바란다. https://manchann.tistory.com/24 Cloud TPU 생성 gcloud compute tpus create "TPU 이름" \ --zone=us-central1-b \ --accelerator-type='v2-8' \ --version='2.5.0&#..
Google TPU를 사용하기 위해서는 현재 내가 생성한 TPU가 정상적으로 생성되었는지 확인이 필요하다. 사용하고 있는 TPU의 개수가 많을 수록 관리에 어려움이 있을 것이다. Gcloud 설정 우선 현재 환경에 gcloud가 설치되어 있어야 한다. 환경 설정을 하지 않았다면 아래의 링크에 포스팅 해두었으니 참고바란다. https://manchann.tistory.com/24 Tpu list gcloud compute tpus list --zone us-central1-b 해당 명령어로 TPU list를 확인한다. zone 옵션을 통해 생성한 region을 특정하여 확인할 수 있다. 참조 https://github.com/tensorflow/tpu/issues/227