분류 전체보기 13

[서평] 자연어 처리를 위한 허깅페이스 트랜스포머 하드 트레이닝 - 코드와 결과물로 이해하는 언어 모델과 트랜스포머

책소개이 책은 허깅페이스를 처음 접하는 사람부터 트랜스포머 모델을 깊이 있게 공부하고 싶은 사람까지 모두에게 추천합니다. 또한, QLoRA, RLHF, DPO 등의 구현 코드를 직접 실습하며 직관적으로 이해하고 싶은 독자에게도 유용한 책입니다.목차1 자연어 처리와 허깅페이스_1.1 허깅페이스 소개__1.1.1 Datasets__1.1.2 Models__1.1.3 Spaces__1.1.4 Docs_1.2 자연어 처리와 허깅페이스의 관계2 환경 구축_2.1 구글 코랩 환경 구축__2.1.1 계정 생성__2.1.2 새 노트북 만들기__2.1.3 코드 실행__2.1.4 파일 저장__2.1.5 깃 코드 열기_2.2 구글 드라이브 마운트3 허깅페이스 주요 라이브러리_3.1 Datasets 라이브러리__3.1.1 D..

독서 2025.01.31

Hugging Face x LangChain을 활용하여 이전 대화를 기억하는 챗봇 만들기

목적LLaMA3를 이용해 챗봇 api를 만들고 싶었습니다.  Hugging Face x LangChainHugging Face x LangChain tool을 이용하여 LLaMA3 inference 합니다.pip install langchain-huggingface 다음과 같이 HuggingFacePipeline를 불러올 수 있습니다.from langchain_huggingface import HuggingFacePipelinellm = HuggingFacePipeline.from_model_id( model_id="microsoft/Phi-3-mini-4k-instruct", task="text-generation", pipeline_kwargs={ "max_new_toke..

개발로그 2024.05.30

[논문리뷰] AltDiffusion: A Multilingual Text-to-Image Diffusion Model

논문 링크: https://arxiv.org/pdf/2308.09991.pdf논문 코드 링크: https://github.com/superhero-7/AltDiffusion  글을 쓰는 시점은 24.04.21으로 Multilingual Diffusion Model에 대한 연구에 관심을 가지고 서칭하고 있다. AltDiffusion: A Multilingual Text-to-Image Diffusion Model이라는 논문을 통해 전반적은 Multilingual Diffusion Model에 대한 사전 연구와 방법, 그리고 왜 Multilingual Diffusion Model을 연구하고 개발하는지를 중점적으로 읽었다. 원래 다국어 디퓨전 모델에 대한 나의 생각은 “굳이? 그냥 ..

논문리뷰 2024.04.23

[Python] 쉘(Shell)을 통해 Logging 내용 저장하기

쉘을 통해 Logging 내용 저장하기 이 문서에서는 쉘을 통해 Logging 내용을 저장하는 방법에 대해 설명합니다. 쉘에서 명령어를 실행할 때, 실행 결과를 출력하는 것이 일반적입니다. 그러나 때로는 이 결과를 파일로 저장하여 나중에 조회할 필요가 있습니다. 이때 사용하는 것이 리다이렉션(redirection)입니다. 리다이렉션(redirection)은 쉘 스크립트에서 명령 결과를 파일로 저장하는 방법입니다. 쉘에서 명령어를 실행할 때 실행 결과를 출력하는 것이 일반적이지만, 때로는 이 결과를 파일로 저장하여 나중에 조회할 필요가 있습니다. STDOUT 출력을 파일로 저장하려면, > 리다이렉션 기호를 사용합니다. 예를 들어, ls 명령어를 실행하면 현재 디렉토리의 파일 리스트가 출력됩니다. 이때 이 ..

개발로그 2024.04.15

[Python] Logging

Python Logging에 대한 설명과 방법 Python은 logging이라는 내장 라이브러리를 제공하여, 프로그램의 실행 중에 발생하는 이벤트를 기록하고 추적할 수 있습니다. 이를 통해 프로그램의 디버깅 및 유지보수를 용이하게 할 수 있습니다. Logging 레벨(Levels) Python logging은 다음과 같은 다섯 가지 레벨을 제공합니다. DEBUG: 디버깅 정보 INFO: 정보성 메시지 WARNING: 경고 메시지 ERROR: 에러 메시지 CRITICAL: 치명적인 에러 메시지 Logging 방법(Methods) Python logging의 기본적인 사용 방법은 다음과 같습니다. import logging logging.basicConfig(level=logging.DEBUG) logger..

개발로그 2024.04.15

[Python] Argparser

Argparser Python Argparser는 명령줄 인자 파싱을 위한 파이썬 모듈입니다. 이 모듈을 사용하면 명령줄에서 인자를 받아와서 해당 인자를 처리할 수 있습니다. 사용 방법 argparse 모듈 import하기 import argparse ArgumentParser 객체 생성하기 parser = argparse.ArgumentParser() 인자 추가하기 parser.add_argument("arg_name", help="arg_help") arg_name: 인자의 이름 help: 인자에 대한 설명 인자 파싱하기 args = parser.parse_args() args.arg_name: 입력된 인자 값 예제 자동 파일 삭제 cron 만들기 import argparse parser = argp..

개발로그 2024.04.15

Docker란 무엇인가? (컨테이너, 이미지, 볼륨)

1. 컨테이너 가상화 가상화는 하드웨어 자원을 논리적으로 분리하여 여러 개의 가상 환경을 만드는 기술입니다. 이를 통해 하나의 물리적 서버에서 여러 개의 가상 서버를 구축하여 자원을 공유하고, 유연하게 서버를 구성할 수 있습니다. 가상화를 통해서 가상머신(VM)을 만들어 낼 수 있습니다. VM은 호스트 운영체제에서 구동되며 그 바탕이 되는 하드웨어에 가상으로 액세스하는 Guest 운영체제를 가지는 일종의 격리된 머신 입니다. 쉽게 생각하면 하나의 컴퓨터입니다. (물리적인 컴퓨터 자원을 가상화시켜 별도의 컴퓨터를 만든 뒤 거기에 필요한 운영체제를 올렸다고 생각합시다.) 컨테이너 컨테이너는 가상머신과 마찬가지로 애플리케이션을 관련 라이브러리 및 모든 종속항목과 패키지(그냥 APP에 필요한 모든 파일, 설치파..

개발로그 2024.04.15

Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:3306 -> 0.0.0.0:0: listen tcp 0.0.0.0:3306: bind: address already in use

Docker 실행 안됨(:3306 port 사용중) 에러문 Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:3306 -> 0.0.0.0:0: listen tcp 0.0.0.0:3306: bind: address already in use docker db 컨테이너 실행 시 3306 port에 mysql 사용으로 겹쳐서 실행이 안되는 상황 발생 기존 port kill 방법으로는 해결 안됨 lsof -i :포트번호 kill -9 PID port 죽이기 해도 계속 생겨나는 문제 발생. 🛠 해결 방법 sudo kill `sudo lsof -t -i:3306`

troubleshooting 2024.04.15

자동 파일 삭제 cron 만들기

배경 맡은 프로젝트 ec2에 sql문 자동 backup 파일이 저장된다. 그 파일들을 일정 날짜가 지나면 자동 삭제하는 프로그램을 만들고자 한다. 쉘을 활용한 파일 삭제 cron 우선 첫번째 접근으로 쉘을 활용한 명령어로 삭제하는 방법을 제시했다. 1. test.sh 작성 find ./ -name '*.sql' -mtime +100 -delete 2. 실행 권한 주기 > chmod 755 test.sh 3.스케줄 등록하기 >crontab -e 30 00 * * * /tmp/test.sh # 매일 00:30분에 위 쉘을 실행함 문제점 위 방법의 문제점은 위 사진처럼 딕셔너리에는 datetime의 제목이 아닌 다른 형식의 sql문도 존재한다. backup.sql문이 그 예시이다. 하지만 이 파일은 지우면 안..

개발로그 2024.04.15

[Linux] Redirection

리눅스 Redirection 리눅스 운영 체제는 다양한 redirection 기호를 제공하여 명령어의 출력 및 입력을 관리합니다. 이 기호들은 다음과 같습니다. > : 명령어의 출력을 파일로 redirection 합니다. 예를 들어, 는 ls 명령어의 결과를 file.txt 파일로 저장합니다. >> : 명령어의 출력을 파일의 끝에 추가합니다. 예를 들어, echo "Hello" >> file.txt는 file.txt 파일의 끝에 "Hello"를 추가합니다.

카테고리 없음 2024.04.15