Meta Llama3.1 Ollama로 로컬에서 사용해보기

한라산·2024년 7월 27일
0
post-thumbnail

Llama AI 3.1

Meta에서 공개한 오픈소스 AI로 비교적 최신 AI라서 그런지 우수한 성능을 보여준다고 한다.

저커버그 아티클 - 오픈소스 AI에 대한 생각
저커버그는 오픈소스 AI의 중요성을 얘기하면서 llama를 Unix/Linux와 같은 생태계를 채택했다고 한다.

Llama 3.1 모델

특징

  • 다국어 지원 강화(8개 언어 지원)
    영어, 독일어, 프랑스어, 이탈리아어, 포르투갈어, 한국어, 스페인어, 태국어
  • 128K 토큰의 컨텍스트 길이 지원
    아주 긴 문서나 대화도 한번에 처리 가능
  • tool calling
    ai가 다양한 툴 사용가능 (질문에 실시간으로 웹에서 학습한 데이터를 답변하는 등)
  • 오픈소스
    라이센스를 자세히 확인해봐야겠지만 영리 활동도 가능한것으로 보임
  • 실시간 및 배치 추론
    실시간 입력에 응답 가능하며 동시에 대량의 데이터 일괄 처리 가능
  • Ollama를 통한 로컬환경 실행가능

8B (8 billion parameters)

  • 80억개의 파라미터
  • 대략 4GB (다운로드 크기)

70B (70 billion parameters)

  • 700억개의 파라미터
  • 대략 40GB (다운로드 크기)

405B (405 billion parameters)

  • 4050억개의 파라미터
  • 대략 230GB (다운로드 크기)

Ollama로 로컬에서 실행하기

meta llama docs - Mac용 다운 가이드
위 링크를 타고가면 설명이 너무 쉽게 되어있어 설명은 생략한다.

Ollama를 설치 후 터미널에서 실행이 가능하다. (실수로 llama3로 실행했다... llama3.1로 실행하자)

/? 명령어를 실행하면 어떤 설정을 할 수 있는지 나온다.

curl로 명령어 보내기

요청

curl http://localhost:11434/api/chat -d '{
  "model": "llama3",
  "messages": [
    {
      "role": "user",
      "content": "오늘 서울의 날씨가 어떨지 한국어로 설명해줘"
    }
  ],
  "stream": false
}'

stream을 끄면 답변을 한번에 준다.(킨다면 단어마다 많게는 글자마다 잘려서 응답이 온다.)

응답

{
  "model":"llama3",
  "created_at":"2024-07-27T07:26:47.403705Z",
  "message":{
    "role":"assistant",
    "content":"Hi! It's nice to meet you. Is there something I can help you
    with, or would you like to chat?"
  },
  "done_reason":"stop",
  "done":true,
  "total_duration":2727816250,
  "load_duration":31346083,
  "prompt_eval_count":11,
  "prompt_eval_duration":636490000,
  "eval_count":26,
  "eval_duration":2058647000
}

Ollama Docs - 여기에 더 다양한 api가 소개되어있다.

마치며

8B 모델을 사용해서 그런지 아무 설정없이 생으로 쓰기에는 다국어가 다소 부족한 감이 있다.
하지만 더 공부해보고 사용한다면 재밌는것들을 만들 수 있어보인다.

profile
산입니다.

0개의 댓글