큰 언어 모델 (LLM) 개요

  1. LLM이 어떻게 작동하는가?
  2. LLM의 훈련 방법은 무엇인가?
  3. LLM의 주요 유형
  4. Base LLM에서 Instruction Tuned LLM으로 어떻게 이동하는가?
  5. 대형 언어 모델 튜닝(Large Language Model Tuning): 이 모델들은 인간의 피드백을 통해 향상시키기 위한 기법으로 RLHF(Reinforcement Learning from Human Feedback)를 사용합니다. 기본 LLM 학습에는 수 개월이 소요될 수 있지만, 훨씬 적은 데이터셋과 연산 자원을 활용하여 기본 LLM을 지시사항에 따라 튜닝하는 과정은 수 일 내에 가능합니다.
  6. OpenAI API 사용: OpenAI 패키지를 설치하고, OpenAI 키를 로드하여 다양한 작업을 수행할 수 있습니다.
  7. 대형 언어 모델 작동 방식의 기술적 세부 사항: 대형 언어 모델은 한 번에 한 단어를 예측하는 것으로 설명되었지만, 실제로는 다음 토큰을 예측합니다. 예를 들어, "lollipop"이라는 단어를 입력하면, 모델은 이를 세 개의 토큰("l", "oll", "ipop")으로 분해하고, 이 토큰을 기반으로 예측을 수행합니다.
  8. 토큰화 이해와 활용: 토큰화는 일련의 문자를 의미있는 단위로 그룹화하는 과정입니다. 영어에서 한 토큰은 대략 평균 네 문자 또는 3/4 단어에 해당합니다. 토큰의 수를 확인하는 것은 대형 언어 모델의 입력 토큰 제한을 초과하지 않는지 확인할 때 유용할 수 있습니다.
  9. API 키의 안전한 사용: 개발자들은 종종 API 키를 코드에 텍스트 형태로 직접 작성합니다. 이 방법은 보안에 취약하므로, "dotenv" 라이브러리를 사용하여 ".env"라는 로컬 파일에 API 키를 저장하고 이를 읽어와서 사용하는 것이 더 안전한 방법입니다.
  10. 프롬프팅의 혁신성: 프롬프팅을 활용한 머신러닝은 AI 애플리케이션 개발을 혁신하고 있습니다. 전통적인 지도학습 워크플로우에 비해 프롬프팅 기반의 머신러닝은 텍스트 애플리케이션을 빠르게 구축할 수 있게 해줍니다. 한편, 이 방법은 표 형식의 데이터에 대한 머신러닝 애플리케이션에는 적용되지 않습니다.
  11. 다음 영상에 대한 소개: 다음 영상에서는 이러한 컴포넌트들을 활용하여 고객 서비스 어시스턴트의 입력을 평가하는 방법을 보여줍니다. 이는 온라인 소매상의 고객 서비스 어시스턴트를 구축하기 위한 큰 예제의 일부입니다.

ChatGPT API 호출

OpenAI의 ChatGPT는 대화형 모델로, 입력으로 메시지의 목록을 받아 출력으로 모델 생성 메시지를 반환합니다. 이 방식은 다단계 대화를 손쉽게 가능하게 하지만, 단일 단계의 작업에서도 유용하게 활용될 수 있습니다.

API 호출 예시

Python에서 OpenAI API를 호출하는 방법은 다음과 같습니다:

import openai

openai.ChatCompletion.create(
  model="gpt-3.5-turbo",
  messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Who won the world series in 2020?"},
        {"role": "assistant", "content": "The Los Angeles Dodgers won the World Series in 2020."},
        {"role": "user", "content": "Where was it played?"}
    ]
)

메시지 구성

API 호출의 주요 입력은 'messages' 파라미터입니다. 'messages'는 메시지 객체의 배열이며, 각 객체는 'role'("system", "user", "assistant")과 'content'를 가지고 있어야 합니다. 대화는 하나의 메시지로 시작할 수도 있고, 여러 번의 왕래가 있을 수도 있습니다.