Langchain-LLM, ChatGPT API 실습

Jae·2024년 9월 1일

초거대 언어 모델 - LLM

  • Transformer Archetecture를 제일 많이 사용
    - Encoder/ Decoder의 형태로 되어 있다.
    • 기계와 대화를 하기 위해 연구 후에 나온 방식.
    • 인코더 : 기계가 이해할 수 있는 부분.
    • 디코더 : 이해한 부분을 출력하는 부분.

LLM 종류

  • Closed Source
    • ex. OpenAI의 GPT-3, GPT-3.5, Google의 PALM, LaMDA, Bard
    • 뛰어난 성능, API 방식의 편리한 사용성
    • 구현해서 사용할 경우 보안이 떨어질 수 있음.
    • API 호출 비용
  • Open Source
    • ex. Llama 계열의 LLM : LLaMA, vicuna, Alpaca, LLaMA2
    • 성능 좋음, 로컬에서 사용할 수도 있기에 보안성 높음, 낮은 비용
    • 개발 난이도 높음, 사용을 위한 GPU 서버 사용.

LLM 실습

  • API를 이용하기
  • Chat API의 구조 알아보기.
  • colab을 사용해서 확인해본다.

-> 테스트를 진행하였는데 API 결제 이슈로 인해 보류중

매개변수 조절해보기

  • temperature : ChatGPT가 하는 답에 대한 일관성(0일수록 일관적, 2일수록 창의적)
    - 신뢰성이 중요하다면 0, 매번 다른 답변을 해야한다면, 2에 가깝게 설정
  • streaming, callbackHandeler : 어절단위로 끊어서 보여줌으로써 답변에 시간이 오래걸리는 부분을 보완.
  • SystemMessage : 역할을 부여하고 대화의 맥락을 설정하는 메시지
  • HumanMessage : 사용자가 사용하는 것에 대해 답변할 수 있도록 하기.
    ex. SystemMessage에 플래너의 역할을 지정, HumanMessage 원하는 계획에 대해 질문하고 답변

캐싱처리

from langchain.cache import InMemoryCache

set_llm_cache(InMemoryCache())
  • 응답을 캐싱하여 같은 질문을 더 빨리 응답받을 수 있다.

참고

0개의 댓글