Skip to content

Large language model

(이해할 수 있는 규칙 생성을 기반으로 하는 기계 학습 방법은 Logic learning machine 항목 참조)

대형 언어 모델(Large language model, LLM) 또는 거대 언어 모델은 수많은 파라미터(보통 수십억 웨이트 이상)를 보유한 인공 신경망으로 구성되는 언어 모델이다. 자기 지도 학습이나 반자기지도학습을 사용하여 레이블링되지 않은 상당한 양의 텍스트로 훈련된다. LLM은 2018년 즈음에 모습을 드러냈으며 다양한 작업을 위해 수행된다. 이전의 특정 작업의 특수한 지도 학습 모델의 훈련 패러다임에서 벗어나 자연어 처리 연구로 초점이 옮겨졌다.

대규모 언어 모델(LLM) 은 AI 챗봇 기술을 가능하게 하는 요소이며 많은 화제를 불러일으키고 있는 주제 중 하나다. 대규모 언어 모델(LLM)의 작동 방식은 크게 3가지로 나뉘고 있다. 토큰화, 트랜스포머 모델, 프롬프트 등. 토큰화는 자연어 처리의 일부로 일반 인간 언어를 저수준 기계 시스템(LLMS)가 이해할 수 있는 시퀀스로 변환하는 작업을 말하며 여기에는 섹션에 숫자 값을 할당하고 빠른 분석을 위해 인코딩하는 작업이 수반된다. 이는 음성학의 AI 버전과 같으며 토큰화의 목적은 인공지능이 문장의 구조를 예측하기 위한 학습 가이드 또는 공식과 같은 컨텍스트 백터를 생성하는 것이 목적. 언어를 더 많이 연구하고 문장이 어떻게 구성되는지 이해할수록 특정 유형의 문장에서 다음 언어에 대한 예측이 더 정확 해진다. 이로 인해 온라인에서 사람들이 사용하는 다양한 커뮤니케이션 스타일을 재현하는 모델을 개발할 수 있다.

트랜스포머 모델은 순차적 데이터를 검사하여 어떤 단어가 서로 뒤따를 가능성이 높은지 관련 패턴을 식별하는 신경망의 일종으로 각각 다른 분석을 수행하여 어떤 단어가 호환되는지 결정하는 계층으로 구성된다. 이러한 모델은 언어를 학습하지 않고 알고리즘에 의존하여 사람이 쓴 단어를 이해하고 예를들어, 힙스터 커피 블로그를 제공함으로써 커피에 대한 표준 글을 작성하도록 학습 시킨다. 이 트랜스포머 모델이 대규모 언어 모델 LLM 언어 생성의 기초.

프롬프트는 개발자가 정보를 분석하고 토큰화하기 위해 대규모 언어 모델 LLM에 제공하는 정보로 프롬프트는 기본적으로 다양한 사용 사례에서 LLM에 도움이 되는 학습 데이터 입니다. 더 정확한 프롬프트를 받을수록 LLM은 다음 단어를 더 잘 예측하고 정확한 문장을 구성할 수 있습니다. 따라서 딥러닝 AI의 적절한 학습을 위해서는 적절한 프롬프트를 선택하는 것이 중요하다.

Categories

한국어 오픈소스 LLM

모든 LLM 개발자가 알아야 하는 숫자

LLM을 사용할 때 중요한 숫자에 대한 정리.

  • "간결하게"를 프롬프트에 넣으면 비용을 40~90% 절약 가능.
  • GPT-4에 비해 GPT-3.5 Turbo는 가격이 50배 저렴함.
  • 벡터 검색을 위해 OpenAI 임베딩을 사용하면 GPT-3.5 Turbo보다 20배 저렴함.
  • LLaMa급 LLM을 교육하는 데에는 백만 달러(약 13억 원)가 들어감.
  • GPU별 메모리 크기 - V100: 16GB, A10G: 24GB, A100: 40/80GB H100: 80GB
  • 보통 모델 크기의 2배의 메모리가 필요함 - 7B = 14GB
  • 임베딩 모델은 보통 1GB 이하의 메모리를 사용함
  • LLM 요청을 일괄 처리하면 10배 이상 빨라질 수 있음.
  • 13B 모델은 토큰당 약 1MB가 필요하여, 요청을 일괄 처리하면 메모리 요구가 크게 증가함.

Language Model Stack

Sequoia가 투자한 모든 거의 모든 회사가 제품에 ChatGPT와 같은 LLM을 도입중. 자신들 네트워크내의 회사들을 조사한 내용을 통해 2개의 AI 스택을 정리

LLM API Stack

  • LLM APIs : OpenAI, Anthropic, Cohere
  • Vector DB: AWS, pgvector, Pinecone, Qdrant, Weaviate, Chroma
  • Frameworks: LangChain, LlamaIndex, Anarchy
  • Text-To-Speech: Resemble.AI, ElevenLabs, Wellsaid
  • Monitoring: DISTYL, Guardrails, Helicone, HoveHive, Autoblocks

Custom Model Training / Tuning Stack

  • Compute: AWS, Azure, Google Cloud, Foundary, Lamba, MosaicML, Modal, Fireworks.ai
  • Model Hub: Hugging Face, Replicate
  • Frameworks: PyTorch, TensorFlow
  • Experimentation: Weights & Biases
  • Monitoring/Observability: Robust Intelligence, Gantry, Arthur, arise, Whylabs
  • Hosting: Replicate, HuggingFace

키포인트

  • 대부분의 회사가 LLM을 제품에 구축중
  • 언어 모델 API, 검색 및 오케스트레이션에 중점. 오픈소스 사용이 증가
  • 회사들은 언어 모델을 자신의 컨텍스트에 맞고 커스터마이징 하고 싶어함
  • 현재는 LLM API 스택과 모델 트레이닝 스택이 분리된 것처럼 보이지만 점점 합쳐질 것
  • 스택은 점점 더 개발자 친화적이 되어감
  • 언어 모델이 완전히 채택되려면 언어 모델의 신뢰성(품질, 데이터 프라이버시, 보안)을 높여야 함
  • 언어 모델 어플리케이션은 점 점 더 멀티 모달이 되어갈 것
  • 아직 극 초반임

파인 튜닝 방법

nanoGPT 기반의 오픈소스 구현체인 Lit-Parrot 으로 LoRAAdapter 를 이용해서 파인 튜닝하기

  • StableLM, Pythia, RedPajama 같은 LLM을 지원
  • PyTorch의 FlashAttention 이용
  • 예제에서는 Databricks의 Dolly 2.0 인스트럭션 데이터셋으로 RedPajama-INCITE 모델을 튜닝

See also

Favorite site

Tutorials

Guide

References


  1. What_Weve_Learned_From_A_Year_of_Building_with_LLMs_-_GeekNews.pdf