python 15

[AWS s3] Python Boto3의 list_objects_v2를 활용한 s3 데이터 불러오기

오늘은 AWS S3에서 python으로 데이터를 로딩하는 방법을 작성해보고자 한다. 그러기 위해서는 필수적으로 필요한 boto3라는 라이브러리를 설치해주어야 한다.boto3 라이브러리는 AWS SDK for python으로, AWS 서비스들과 상호작용할 수 있게 해주는 라이브러리다.  설치되어 있지 않다면! 일단 boto3 라이브러리가 필요함으로 pip install을 통해서 해당 라이브러리를 다운로드하여준다.(전부 설치되어 있다는 가정하에 넘어가겠습니다) 1. Client 설정본격적으로 데이터 로딩을 위해서 기본적인 세팅을 먼저 진행해야 한다. 그 기본적인 세팅이란 AWS s3에 접근하기 위해서는 boto3 클라이언트를 설정을 의미한다. 다시 말해서 AWS 서비스를 python 코드로 제어할 수 있게 ..

Python & Code Issue 2025.02.16

[python] Pyspark local 환경 설정 및 AWS S3 데이터 읽기, Window 환경, Error 해결

오늘은 window 로컬 환경에서 Pyspark를 설정하는 방법을 정리하고자 한다.  사실 S3를 DB 개념으론 써봤지만, AWS Glue script, Step function 등을 활용한 구체적인 ETL 작업까진 경험이 없던지라 데이터 수집 후 스키마 설정 등을 위해 pyspark를 써보게 된 것도 처음이었다. 먼저, test를 위해 로컬 환경에서 pyspark를 사용해보려고 했는데, 진짜 설정이 너무나도 까다로웠다. 수많은 에러를 만나고, 어찌어찌 해결한 과정을 작성해보고자 한다.    결론적으로 말하자면 나의 경우에는, pyspark 하나를 쓰기 위해서 수많은 것들을 다운 받아야 하는데 그 파일들의 버전이 호환되지 않았던 것과 경로 지정의 문제였었다.  우선, 전반적인 파일 설치 과정과 에러들을 ..

Python & Code Issue 2025.01.25

[python] poetry 설치 가이드 및 에러 해결

1. Poetry란?python에서 프로젝트의 의존성 및 가상 환경 관리를 자동으로 처리할 수 있는 도구이다. 주요 특징으로 python의 표준라이브러리만 사용하며 pyproject.toml 파일로 의존성 관리를 하며, poetry.lock 파일을 이용해 실제로 설치된 버전을 기록하고 고정할 수 있다. 즉, .toml 파일로 의존성의 범위를 설정하고, .lock 파일로 실제로 설치된 버전을 기록할 수 있다. 이를 사용하면 각 프로젝트 마다 가상 환경을 자동으로 생성하고 관리할 수 있고, 프로젝트별로 독립적으로 필요한 패키지들을 설치하고 관리하며 패키지 배포 기능도 있어 편리하다. pip를 사용하면 전역적으로 설치가 되기도 하고 여러 패키지 간의 의존성 버전충돌 문제를 직접 관리해야 한다..(이 패키지를..

Python & Code Issue 2024.11.21

[LLM] Fine-tuning 방법, PEFT(LoRA, QLoRA)

1. 용어 정리전이학습(Transfer-learrning)의 일종인 Fine-tuning은 이미 사전 학습된 모델을 새로운 데이터나 태스크에 맞춰 미세하게 조정하는 과정이다.기존의 대규모 데이터로 사전 학습된 언어 모델 (e.g. BERT, GPT 등)을 바탕으로, 특정 도메인이나 애플리케이션에 사용할 수 있도록 추가 학습을 진행하는 것을 말한다. 즉, 내가 하고자 하는 테스크(혹은 데이터의 도메인)에 맞게 사전 학습된 모델을 사용하기 위해서 모델을 추가 학습하는 것! 사전학습된 모델을 사용하는 이유는 다음과 같다.성능 향상 :특정한 데이터나 태스크에 맞게 모델을 조정함으로 더 높은 성능을 달성할 수 있다.빠른 학습 및 작은 데이터 필요 : 사전 학습된 모델을 기반으로 하기 때문에, 처음부터 학습할 때..

LLM & LMM 2024.09.20

[python] vscode anaconda 가상환경 설정

1. anaconda 가상 환경 생성anaconda 가상환경을 만들고, vscode랑 환경을 연결하는 과정을 기록한다. 먼저 anaconda prompt를 관리자 권한으로 실행한다.conda에서 가상환경을 만들 땐 아래의 코드로 작성하면 된다.>conda create -n python=버전 나의 경우에는 mecab 때문에 만든 거라서 환경명을 mecab으로 해줬다. 파이썬 버전은 3.9로!>conda create -n mecab python=3.9 이 명령어를 실행하고 나면 여러분들의 C드라이브 경로에 anaconda3/env 파일이 생성되어 있다.나의 경우 다음과 같았다. "C:/Users/MY/anaconda3/envs/mecab/" 내가 만든 가상환경 리스트를 보는 방법은 > conda env l..

Python & Code Issue 2024.09.03