검색
검색
공개 노트 검색
회원가입로그인

[UCA수퍼컴아카데미] 라마3-그록 llama3 Groq 70B모델 API코딩 --(3)

소스코드가 울산코딩닷컴 게시물 블로그하단에서 다운로드가능합니다.

groq-llama-4

LPU 추론칩으로 유명한 그록 groq이 라마3 llama3 70B를 서비스한다. 테슬라 일런 머스크의 AI 모델인 그록 grok과는 단어가 다르다. 상표권은 일단 groq이 갖고있다. 머스크측이 이름을 바꿔야한다.

https://console.groq.com/login

콘솔로 로그인해본다. 그록은 일단 평가용 API를 무료로 제공해준다.

이것만 해도 어디야?

groq의 플레이그라운드와 API 코딩기법을 살펴본다.

groq-llama-0

API 키를 발급받고, 플레이그라운드에서 라마3 70B 코딩 전 채팅 테스트를 해볼 수 있다. 모델은 구글의 오픈소스 gemma 7B 및 믹스트랄 8x 7B도 지원해준다. 다음 기회에 한번 믹스트랄의 API 코딩 기법도 같이 소개하겠다.

[UCA수퍼컴아카데미] 라마3-그록 llama3 Groq 70B모델 API코딩 --(3)
 image 3

groq-llama-3

플레이그라운드에서 하이퍼 파라미터 테스트를 한뒤, 맨 하단의 [View Code] 버튼을 누르면 파이썬 코드를 보여준다.

[UCA수퍼컴아카데미] 라마3-그록 llama3 Groq 70B모델 API코딩 --(3)
 image 5

groq-llama-2

groq-llama-1

클릭으로 코드를 복제한 뒤, 비주얼스튜디오 코드에서 테스트한다.

model="llama3-70b-8192" 확인한다.

import os
from groq import Groq

client = Groq(
    api_key=os.environ.get("GROQ_API_KEY"),
)

chat_completion = client.chat.completions.create(
    messages=[
        {
            "role": "system",
            "content": "always answer with korean only ",
            "role": "user",
            "content": "아이브 안유진의 키는 몇 cm? ",
        }
    ],
    model="llama3-70b-8192",
    temperature=1,
    max_tokens=1024,
    top_p=1,
    stream=False,
    stop=None,
)

print(chat_completion.choices[0].message.content)

원래 스트림 모드부터 만들어주는데, 우린 스트림 모드를 테스트할게 아니라서 chat.completions ( ) 구문내 파라미터인

stream=False,

로 수정, 아래쪽 print() 출력문도 일번적인 출력 구문으로 교체한다.

print(chat_completion.choices[0].message.content)

파이썬에서 코드를 테스트하려면

pip install groq

로 패키지를 먼저 설치한다.

아래는 스트림모드 사용했을때 코드이다.

chunk구문이 보일것이다.

import os
from groq import Groq

client = Groq(
    api_key=os.environ.get("GROQ_API_KEY"),
)

chat_completion = client.chat.completions.create(
    messages=[
        {
            "role": "system",
            "content": "always answer with korean only ",
            "role": "user",
            "content": "아이브 안유진의 키는 몇 cm? ",
        }
    ],
    model="llama3-70b-8192",
    temperature=1,
    max_tokens=1024,
    top_p=1,
    stream=True,
    stop=None,
)


for chunk in chat_completion:
    print(chunk.choices[0].delta.content or "", end="")

실행은 잘 되지만, 시스템 프롬프트로 한글로 고정시키려해도 한글 출력이 잘 되질 않는다.

groq-llama-6

xionic llama3 70B 모델에 이어 API 코딩으로 테스트 해볼 수 있는 걸 그록에서 찾았지만, 한국어가 잘 안되서 사실 아쉽긴하다.

안유진 키의 정답은 173cm인데, 학습시킨 데이터 자체가 틀렸다.

RAG기법을 적용해야 제대로 답을 찾을 수 있다. 영어로는 response 데이터가 잘 수신되는걸 볼 수 있다.

According to various sources, Ahn Yujin (안유진), the leader of the K-pop group IVE, is reportedly around 159-160 cm (5 feet 2 inches) tall.

파이썬 소스코드 다운로드

파일 첨부groq_llam3_70b-1.py

https://download.blog.naver.com/open/ba2fa61504313084a94c2b1927c0bdc86135c890/s8zXW8xnW6v81hGpCYVM4Ew6LbqyRSt3BweJ59DjLrkCJlUz0qVCsJmdh-WtfuJKEIxSDSBW0_I-uJFuM6N8xw/groq_llam3_70b-1.py

UCA울산코딩아카데미

ulsancoding.com

교육문의: 052-708-0001

공유하기
카카오로 공유하기
페이스북 공유하기
트위터로 공유하기
url 복사하기
조회수 : 1395
heart
T
페이지 기반 대답
AI Chat