반응형
안녕하세요!
Solar-Mini 사용 가이드 시리즈의 세 번째 파트입니다. 이번에는 AWS CloudShell을 이용하여 배포한 Solar-Mini 모델을 API로 호출하는 방법을 알아보겠습니다
AWS CloudShell 소개
AWS CloudShell은 브라우저에서 직접 사용할 수 있는 클라우드 기반 셸 환경입니다. 별도의 설치 없이 AWS 리소스를 관리할 수 있어, 빠르게 스크립트를 실행하거나 API를 테스트하는 데 매우 유용합니다.
요약: API로 Solar-Mini 모델 사용하기
- 모델에 전송할 입력 데이터를 준비합니다.
- AWS CLI를 사용하여 모델의 엔드포인트를 호출합니다.
- 모델의 응답을 확인합니다.
본문: API로 Solar-Mini 모델 사용하기
1. CloudShell로 이동
- AWS Console 검색 창에서 cloudshell을 검색 후 클릭합니다.
- 화면 오른쪽 상단은 서울입니다.
- CloudShell은 빠르게 AWS 리소스를 관리하거나 스크립트를 실행해야 할 때 매우 유용합니다.
- 이제 Solar Mini Chat 모델을 호출합니다.
- 호출 과정은 크게 세 가지로 나뉩니다.
- 입력 데이터 준비
- 모델 호출
- 응답 확인
- 호출 과정은 크게 세 가지로 나뉩니다.
- [입력 데이터 준비] 호출에 필요한 정보를 입력해야겠죠?
- 아래 내용 전체를 복사해서 붙여넣기해 주세요. 아래는 예시 프롬프트입니다.
input_data=$(cat <<EOF
{
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "두 개의 정렬된 리스트를 병합하는 파이썬 코드를 작성해. 각 라인마다 자세한 설명을 함께 제공해"
}
],
"temperature": 0.7
}
EOF
)
- 혹시 모를 악성 스크립트 때문에 확인창이 열리는 것을 볼 수 있습니다. 붙여넣기 버튼을 클릭하고 엔터를 입력하세요.
- [모델 호출하기] 이어서 아래 전체를 복사해서 붙여넣기 해주세요.
- aws cli를 통해 앞서 만든 인스턴스의 엔드포인트를 호출합니다. AWS CloudShell에 aws cli가 이미 설치되어 있어 바로 사용할 수 있습니다. 엔드포인트 이름(Endpoint-Solar-Mini-Chat-1)과 리전(ap-northeast-2, 서울)이 제대로 입력되어 있습니다. 마지막으로 결과는 result.out이라는 파일에 저장됩니다.
aws sagemaker-runtime invoke-endpoint \
--endpoint-name Endpoint-Solar-Mini-Chat-1 \
--cli-binary-format raw-in-base64-out \
--body "$input_data" \
--content-type application/json \
--region ap-northeast-2 \
result.out
- 실제로 LLM을 호출하기 때문에 모델이 답변할 때까지 약간의 시간이 소요됩니다. 아래 메시지가 출력되면 모델의 답변이 도착했다는 의미입니다.
- [응답 확인하기] 깔끔한 출력을 위해서 아래 명령어를 복사하여 입력합니다.
- 모델의 응답뿐만 아니라 여러 메타데이터(토큰 수, 타임스탬프 등)도 함께 출력되는 걸 확인할 수 있습니다.
cat result.out | jq '.'
- 응답 내용 자체만 확인하려면 아래 명령어를 복사하여 입력합니다.
cat result.out | jq -r '.choices[0].message.content'
추가 테스트
다양한 프롬프트로 모델을 테스트해보세요. 입력 데이터의 'content' 부분을 수정하여 다른 질문을 해볼 수 있습니다.
1. 입력 데이터 준비: 아래 두 번째 content를 수정하세요.
input_data=$(cat <<EOF
{
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "여기에 프롬프트를 입력합니다."
}
],
"temperature": 0.7
}
EOF
)
2. 모델 호출
aws sagemaker-runtime invoke-endpoint \
--endpoint-name Endpoint-Solar-Mini-Chat-1 \
--cli-binary-format raw-in-base64-out \
--body "$input_data" \
--content-type application/json \
--region ap-northeast-2 \
result.out
3. 결과 확인
cat result.out | jq -r '.choices[0].message.content'
다음 단계
이렇게 해서 AWS Marketplace를 통해 Solar-Mini를 구독하고, 배포하고, 사용하는 전체 과정을 살펴보았습니다. 이 강력한 AI 모델을 여러분의 프로젝트에 활용해 보세요!
다음 포스트에서는 Streamlit을 활용하여 간단한 챗봇을 구현해 보겠습니다.
AWS Market Place로 쉽게 Solar-Mini 사용하기 - 4부: Streamlit Chatbot 구현
혹시 여기서 실습을 중단하고 싶으시면 불필요한 과금 방지를 위해 배포한 모델을 꼭 삭제해야 합니다. 아래 포스트를 참고해 주세요.
'AWS > AWS Market Place로 쉽게 Solar-Mini 사용하기' 카테고리의 다른 글
AWS Market Place로 쉽게 Solar-Mini 사용하기 - 4부: Streamlit Chatbot 구현 (0) | 2024.09.24 |
---|---|
AWS Market Place로 쉽게 Solar-Mini 사용하기 - 1부: 서비스 쿼터 확인 (0) | 2024.09.23 |
AWS Market Place로 쉽게 Solar-Mini 사용하기 - 2부: 구독 및 배포 (2) | 2024.09.23 |
AWS Market Place로 쉽게 Solar-Mini 사용하기 - 정리: 엔드포인트 삭제 (0) | 2024.09.23 |