분류 전체보기 147

[Hugging Face] apply_chat_template 함수에 대해 알아보자

안녕하세요, 오늘은 LLM에서 dictionary를 Chat 형식으로 변환하는 apply_chat_template 함수에 대해 알아보려고 합니다. 이 함수는 최근에 Chat Bot, Chat Model이 많아지면서, Chat 형식으로 변환하는 Tokenizer의 필요로 의해 만들어졌습니다. 그래서 이 함수에 대해 자세히 설명해드리려고 합니다. 선언 방법 사용하는 방법은 쉽습니다. Chat(Dialog)에 대해 apply_chat_template()를 사용하면 바로 출력이 나옵니다. from transformers import AutoModelForCausalLM, AutoTokenizer checkpoint = "HuggingFaceH4/zephyr-7b-alpha" tokenizer = AutoToke..

[Docker] Dockerfile 명령어 모음집

Dockerfile에서 사용하는 명령어에 대해 정리한 글입니다. Overview 자주 사용하는 명령어 10가지입니다. 명령어 설명 FROM 이미지를 시작할 베이스 이미지 설정합니다. RUN 이미지를 빌드하는 동안 명령을 실행합니다. 패키지 설치나 설정 파일 수정 등의 작업에 사용됩니다. ENV 이미지의 환경변수를 설정하기 위해 사용됩니다. CMD 컨테이너가 시작될 때 실행할 기본 명령을 설정합니다. CMD는 Dockerfile에 한 번만 존재할 수 있습니다. EXPOSE 실제로 포트 공개하는 것이 아닌, 어떤 포트를 공개될 예정인지에 대한 정보를 제공합니다. COPY 로컬의 폴더 혹은 파일들을 컨테이너 이미지로 복사합니다. WORKDIR 작업 디렉토리를 변경합니다. ENTRYPOINT 추후 작성 예정 F..

Program/Docker 2024.04.19

[Gemini API] Gemini API를 이용해서 이미지 AutoLabling 하기

안녕하세요, 오늘은 Gemini API를 이용해서 이미지를 AutoLabling 하는 방법에 대해 소개해드리려고 합니다. 이미지와 예시를 제공하면, 그에 따른 이미지에 대한 설명을 제공하는데 이를 바탕으로 StableDiffusion Model을 Fine-tunning 할 수 있습니다. 순서는 다음과 같습니다. Gemini API Key 발급받기 이미지 입력 예시 작성하기 코드 작성하기 결과 확인하기 Gemini API Key 발급받기 여기를 누르고 프로젝트 설정을 하면, 다음과 같이 화면이 나오게 됩니다. Create API KEY 버튼을 누르고, Create API Key in exsting project 버튼을 누르면 API 키가 발급됩니다. 다음과 같이 API Key가 생성됩니다. Copy 버튼을..

AI API/Gemini 2024.04.18

[Python] Docstring에 대해 알아보자

안녕하세요, 오늘은 Python에서 사용하는 Docstring에 대해 설명해드릴려고 합니다. Docstring이란? Docstring은 Python에서 함수, 클래스, 모듈이나 메소드 등 첫 번째 줄에 위치하며, 코드의 목적이나 동작을 설명하는데 사용됩니다. 파이썬의 help함수를 이용해서 Docstring에 접근할 수 있으며, 코드의 이해를 돕고 다른 개발자들이 코드를 더 쉽게 사용할 수 있도록 합니다. 예시 >>> help(len) len(obj, /) Return the number of items in a container. Docstring 기본 구조 함수나 메소드의 Docstring: 함수의 작동 방식, 매개변수, 반환 값, 발생할 수 있는 예외 등을 설명합니다. 클래스의 Docstring: ..

Coding/Python 2024.04.16

[VSCode] ssh 비밀번호 무한 반복 입력 오류 해결

오류 다음과 같이 VSCode에서 ssh를 접속할 때, 비밀번호를 알맞게 입력해도 다음과 같은 화면이 계속 발생합니다. 이 때, 해결하는 방법에 대해 소개해드리려고 합니다. 해결방법 해결방법은 여러개가 있으니 1번부터 따라하면서 안되면 그 다음 순서대로 해보시면 해결되실겁니다.👍👍 Solution 1. .vscode-server 폴더 삭제 Server 내부의 .vscode-server 폴더를 삭제하는 것입니다. terminal 또는 cmd 창을 키고 다음과 같이 입력합니다. ssh User@HostName(IP) vscode-server 폴더를 삭제하는 커맨드를 입력합니다. rm -rf ~/.vscode-server 이후에 5분뒤 VSCode로 접속을 하시면 될 겁니다. Solution 2. .wget-..

Program/VSCode 2024.04.14

[Docker] Container 내부에서 GPU 사용하는 방법

안녕하세요, 오늘은 Docker Container 내부에서 GPU를 간단하게 사용할 수 있는 방법에 대해 소개하려고 합니다. 총 2가지를 진행하면 됩니다. 간단하게 nvidia-docker 설치와 같은 방법을 사용하지 않고 진행합니다. Dockerfile 환경변수 추가 설정 Docker Container 실행시 매개변수 추가 Dockerfile 환경변수 추가 설정 # Dockerfile FROM python:3.8 ADD . /workdir RUN apt-get update && apt-get install vim -y RUN pip install torch && pip install transformers && pip install gpustat ##### 다음 줄 추가 ##### ENV CUDA_VI..

Program/Docker 2024.04.10

[Docker] Docker와 Google Cloud를 이용해 Flask Web서버 배포하기

안녕하세요, 오늘은 Docker와 Google Colud Console을 이용해서 Flask로 만든 Web을 배포해보겠습니다. 업로드 할 것은 다음과 같이 진행할 예정입니다. Google Cloud 기본 설정 VM instance 생성 Docker설치, app.py 생성 및 설정 Dockerfile 생성, 빌드 및 Container 생성 방화벽 설정 완성 Google Cloud 기본 설정 https://cloud.google.com/ 클라우드 컴퓨팅 서비스 | Google Cloud 데이터 관리, 하이브리드 및 멀티 클라우드, AI와 머신러닝 등 Google의 클라우드 컴퓨팅 서비스로 비즈니스 당면 과제를 해결하세요. cloud.google.com VM instance를 생성하기 전 위의 링크로 들어가서..

Program/Docker 2024.04.07

[Paper Review] Efficient Computation of Rankings from Pairwise Comparisons

논문링크 https://jmlr.org/papers/volume24/22-1086/22-1086.pdf 다음 논문은 Bradly-Terry Model을 이용해서 Pairwise comparisons를 통해 여러 Class 간의 순위를 매기는 것을 이용해 우선순위를 최대 우도 추정법을 이용하여 빠르게 수렴시키는 방법에 대한 논문이며, 이에 대해 리뷰하려고 한다. 수식유도에 대해 설명을 하고 증명은 생략한다. Introduction 우리는 각 개인 $ i $에게 수치 점수 $ \pi_i $를 할당하고 $ i $가 $ j $를 이길 확률 $p_{ij}$로 가정하며, 가장 인기 있는 Logistic function을 사용한다(확률로 표현하기 좋은 함수). $p_{ij}$를 다음과 같이 사용한다. 여기서 $\pi..

Paper 2024.04.03

[Metric Review] CIDEr Metric 분석

논문링크 https://arxiv.org/pdf/1411.5726.pdf Introduction 논문이 나온 시점에서 이미지에 설명하는 문제에 대해 이미지를 인간과 같은 방식으로 설명을 생성하는 관심이 생기고 있었다. 그 와 관련하여 Automatic evalution으로 Sentence evalution은 아직 어려운 분야였다. 논문 이전의 Automatic evalution matric은 Precision 기반의 BLEU와 Recall 기반의 ROUGE가 있었다. 하지만 이러한 Metric은 Human evalution과 Automatic evalution의 Pearson correlation가 낮다고 표시된다. 이후 METEOR가 나오면서, 더 나은 Correlation을 보여주고 있지만 이미지 설..

Paper/Metric 2024.04.01

[Metric Review] BLEU Metric 분석

논문링크 https://aclanthology.org/P02-1040.pdf Introduction Machin Translation(MT)에 대해 사람의 평가는 광범위하며 비용이 많이 발생한다. 심지어 사람이 MT의 성능을 파악하는데 몇 달이 걸릴 수 있으며 매우 큰 비용의 노동력을 필요로 한다. 그래서 저자는 다음과 같은 특징을 가진 automatic machine translation evaluation 방법을 제안한다. Quick Inexpensive Language-independent that correlates highly with human evaluation Little marginal cost per run 다음과 같은 특징을 통해 BLEU Metric이 Human Evaluation을..

Paper/Metric 2024.03.31