인공지능 개발자 수다(유튜브 바로가기) 자세히보기
반응형

전체 글 65

[자료구조] 배열 (파이썬이에서는 리스트)

시작하기 전에... 코딩테스트를 준비하면서 리스트가 뭔지 아는 수준이면, 곤란하다. 자주 사용하는 기법을 반드시 외워두고 사용하는 것이 좋겠다. 특히 함수 사용 이후 반환된 값이 어떠한 형식인지 (list 형식인지, None 값인지, int/float/str 값인지) 반드시 알아두는 것이 좋겠다. 특히 in-place 형식의 수정인지 알아 두는 것은 중요하다. 1. 리스트 생성 # 리스트 생성 numbers = [1, 2, 3, 4, 5] 2. 리스트에 값 추가 (append, insert, exend, +) append 리스트에 값 추가 In-place 수정 (함수사용시 리스트에 바로 추가됨) value = 6 numbers.append(value) print(numbers) # [1, 2, 3, 4,..

파이참(Pycharm)에 Poetry 세팅

1. Poetry 환경 세팅 Poetry는 pyenv와 함께 사용하면 좋다. 먼저 pyenv를 설치하고, 필요한 파이썬 라이브러리를 설치해 주자. 그리고 나서 Poetry를 설치하자. poetry 설치 명령어는 아래와 같다. pip install poetry 2. Poetry Pycharm 연동 먼저 Pycharm에서 새로운 인터프리터를 추가해 준다. Poetry Environment를 선택해 준다. 그리고 Base interpreter에서 필요한 python 버전을 선택한다. 2. Poetry로 라이브러리 설치 그리고 커맨드 창에 add 명령어를 이용해 필요한 라이브러리를 설치해 준다. 예를 들어 FastAPI에 필요한 기본적인 라이브러리는 아래와 같다. poetry add fastapi poetry ..

백엔드 서버(FastAPI)를 쿠버네티스로 실행하기

0. 이전 글/영상 FastAPI로 Hello World 를 출력해 보자. (영상링크) 쿠버네티스 기본적인 사용방법 쿠버네티스(Kubernetes) 기본적인 사용 방법 1. 터미널을 열어줍니다. 쿠버네티스 명령어는 터미널 안에 작성해 주세요. 2. 쿠버네티스 기본 구조 2.1. 클러스터 (Cluster) 쿠버네티스 클러스터는 여러 컴퓨터(물리적 또는 가상)의 그룹으로, 쿠 databoom.tistory.com 파이참(Pycharm)에 Poetry 세팅 파이참(Pycharm)에 Poetry 세팅 1. Poetry 환경 세팅 Poetry는 pyenv와 함께 사용하면 좋다. 먼저 pyenv를 설치하고, 필요한 파이썬 라이브러리를 설치해 주자. 그리고 나서 Poetry를 설치하자. poetry 설치 명령어는 아..

MLOps 2024.04.09

쿠버네티스(kubenetes)에 데이터베이스 추가하기

이번 시간에는 쿠버네티스 클러스터에 데이터베이스를 추가해 보겠습니다. 데이터베이스를 쿠버네티스에서 운영할 때는 StatefulSet과 PersistentVolume을 사용하여 데이터의 영속성과 안정성을 보장하는 것이 중요합니다. 그리고 데이터베이스는 PostgreSQL을 이용하겠습니다. 1. PersistentVolume (PV) 및 PersistentVolumeClaim (PVC) 생성 먼저, 데이터를 영구적으로 저장할 PersistentVolume과 이 볼륨을 사용할 PersistentVolumeClaim을 정의합니다. PersistentVolume은 클러스터 리소스로서, 실제 스토리지 시스템에 대한 세부 정보를 포함합니다. PersistentVolumeClaim은 사용자가 이 볼륨을 사용하겠다는 요..

MLOps 2024.03.28

쿠버네티스(Kubernetes) 기본적인 사용 방법

1. 터미널을 열어줍니다. 쿠버네티스 명령어는 터미널 안에 작성해 주세요. 2. 쿠버네티스 기본 구조 2.1. 클러스터 (Cluster) 쿠버네티스 클러스터는 여러 컴퓨터(물리적 또는 가상)의 그룹으로, 쿠버네티스를 사용하여 관리됩니다. 클러스터는 컨테이너화된 애플리케이션을 배포, 관리, 확장하기 위한 환경을 제공합니다. 클러스터 내에서 컨테이너는 포드라는 단위로 구성되어 실행됩니다. 클러스터는 고가용성, 고성능, 확장성 등을 제공하여 애플리케이션의 요구사항을 충족시키기 위해 설계됩니다. 클러스터는 크게 마스터 노드와 워커 노드로 구분됩니다: 마스터 노드: 클러스터의 관리, 스케줄링, 구성 변경 등의 책임을 집니다. API 서버, 스케줄러, 컨트롤러 매니저 등의 구성 요소가 포함됩니다. 워커 노드: 실제..

MLOps 2024.03.28

쿠버네티스(Kubernetes) 설치와 실행 방법

0. 개인 로컬 PC에 쿠버네티스를 설치하는 이유 개인 노트북/로컬 PC에 쿠버네티스를 설치하는 경우, 일반적으로 개발, 테스트, 학습 및 실험 목적으로 사용합니다. 로컬 환경에서 쿠버네티스를 사용하면 실제 운영 환경에 배포하기 전에 애플리케이션을 개발하고 테스트할 수 있으며, 쿠버네티스의 다양한 기능과 워크플로우를 직접 경험하고 익힐 수 있습니다. 실무에서는 실제 운영서버에 쿠베너티스를 설치하거나, AWS의 EKS, Google Cloud의 GKE, Azure의 AKS와 같은 관리형 쿠버네티스 서비스를 사용. 1. Macbook M1 기준 1) Homebrew 설치: Homebrew가 아직 설치되어 있지 않다면, 터미널에서 다음 명령어를 실행하여 설치 /bin/bash -c "$(curl -fsSL h..

MLOps 2024.03.19

쿠버네티스(Kubernetes)란! 왜 사용하는 것일까?

1. 쿠베너티스란 쿠버네티스(Kubernetes)는 컨테이너화된 애플리케이션의 배포, 확장 및 관리를 자동화하기 위한 오픈 소스 플랫폼. 컨테이너화된 애플리케이션을 여러 서버 환경에서 운영할 수 있게 해주며, 고가용성, 확장성, 무중단 서비스를 실현할 수 있도록 지원 쿠버네티스는 컨테이너를 클러스터 내의 다양한 물리적 또는 가상 머신에 자동으로 배치하고, 애플리케이션의 상태를 모니터링하여 정의된 상태를 유지하도록 관리 오케스트레이션(Orchestration) 도구로 다수의 컨테이너나 마이크로서비스, 가상 머신 등을 효율적으로 배치하고, 관리하며, 조정하는 과정을 포함 2. 특징 자동화된 배포 확장성 로드 밸런싱 운영을 더욱 신속하고 안정적 3. 자주 사용하는 컨테이너의 용도 마이크로서비스 아키텍처 배치 ..

MLOps 2024.03.19

MLflow 처음 시작하기

1. 설치 anaconda 설치 conda install conda-forge::mlflow pip 설치 pip install mlflow 2. MLflow로 할 수 있는 일 요약 실험 추적(MLflow Tracking): MLflow Tracking을 사용하면 머신러닝 실험의 매개변수, 코드 버전, 메트릭 및 결과 파일(예: 모델)을 기록하고 비교 프로젝트(MLflow Projects): MLflow Projects는 머신러닝 코드를 패키징하고 재사용할 수 있는 방법을 제공 모델 관리(MLflow Models): MLflow Models는 머신러닝 모델을 다양한 ML 라이브러리에서 사용할 수 있는 표준 포맷으로 패키징 모델 서빙(MLflow Model Serving): MLflow를 사용하면 학습된 모..

MLOps 2024.03.12

[Computer vision] 오토인코더 (Autoencoder)

1. 오토인코더란 오토인코더(Autoencoder)는 입력 데이터를 압축한 후 다시 복원하는 능력을 학습하는 인공 신경망입니다. 기본적으로 오토인코더는 두 부분으로 구성됩니다. 인코더와 디코더. 1.1. 인코더 이 부분은 입력 데이터를 받아서, 그 데이터의 압축된 표현을 생성합니다. 이 압축된 표현을 '잠재 공간(latent space)' 또는 '잠재 표현(latent representation)'이라고 합니다. 잠재 공간은 원본 데이터의 중요한 특징을 포착하되, 데이터의 차원을 줄여서 표현하는 것이 목표입니다. 1.2. 디코더 디코더는 잠재 공간에서의 표현을 받아 원본 데이터와 같은 형태의 출력을 생성합니다. 목표는 디코더가 생성한 출력이 가능한 원본 입력 데이터와 유사하도록 만드는 것입니다. 오토인코..

컴퓨터 비전 2024.03.10

[파이썬] 매직메소드(Magic Methods)

1. 개요 파이썬의 매직 메소드(Magic Methods)는 특별한 의미를 가지는 메소드로, 언더스코어(__)로 시작하고 끝나는 특별한 이름을 가지고 있습니다. 매직 메소드는 사용자 정의 객체들이 내장 타입처럼 자연스럽게 행동하도록 만들어 줍니다. 즉, 개발자가 만든 객체가 자동으로 가지게 되는 함수들을 뜻합니다. 2. 상세 내용 2.1. 객체 초기화 및 소멸 __init__(self, ...): 객체 생성 시 초기화를 위해 호출됩니다. 필요한 초기 설정을 수행합니다. __del__(self): 객체가 소멸될 때 호출됩니다. 필요한 정리 작업을 수행합니다. 2.2. 문자열 표현 __str__(self): 객체의 비공식적이고, 사용자가 이해하기 쉬운 문자열 표현을 위해 사용됩니다. print() 함수 호출..

반응형