Red Hat AI Inference on IBM Cloud 시작하기
애플리케이션에 인공지능(AI)을 적용해 볼 준비가 되셨나요? 이 튜토리얼에서는 파운데이션 모델을 활용한 추론 방법과 AI 기반 응답을 생성하는 방법을 배워보겠습니다. 불과 15분 만에 대규모 언어 모델과 대화를 나누고, 대화형 AI를 여러분의 업무 흐름에 통합할 수 있게 될 것입니다.
Red Hat® AI Inference on IBM Cloud® Red Hat OpenShift AI를 기반으로 하는, 기업용으로 바로 활용 가능한 비공개 및 보안이 강화된 생성형 AI 솔루션입니다. 이 튜토리얼은 AI를 시작하는 가장 빠른 방법인, 파운데이션 모델과 상호작용하기 위한 추론 기능을 활용하는 방법을 중점적으로 다룹니다.
수행할 작업
이 튜토리얼에서는 다음과 같은 작업을 수행하게 됩니다:
- IBM Cloud 계정과 프로젝트를 설정하세요.
- 추론 API에 인증합니다.
- 파운데이션 모델을 사용하여 첫 번째 채팅 완성문을 생성해 보세요.
- 자신의 데이터를 사용하여 모델을 맞춤 설정하는 다음 단계에 대해 알아보세요.
시작하기 전에
다음 사항이 준비되어 있는지 확인하십시오:
-
종량제 또는 구독형 IBM Cloud 계정. 체험 계정은 지원되지 않습니다. 자세한 내용을 확인하거나 계정을 업그레이드하려면 ‘계정 유형’을 참조하세요.
-
Red Hat AI Inference 서비스에서 ‘Writer’ 역할 이상. 자세한 내용은 ‘IAM 액세스 관리’를 참조하십시오.
프로젝트 ID와 API 엔드포인트를 확인하세요
모든 API 요청 시 프로젝트 ID가 필요합니다.
-
Red Hat AI Inference 프로젝트 로 이동하세요.
-
프로젝트를 열어주세요.
-
프로젝트 ID를 복사하여 다음 단계를 위해 잘 보관해 두세요.
API 엔드포인트
모든 API 요청은 다음과 같은 기본 형식 URL 을 따릅니다:
https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference
<project_id> 을 여러분의 프로젝트 ID로 바꾸세요.
API에 인증하기
파운데이션 모델과 상호작용하기 전에 API 요청에 대한 인증을 완료해야 합니다. 베어러 토큰이나 IBM Cloud API 키 중 하나를 사용할 수 있습니다. 이 튜토리얼에서는 프로그래밍 방식으로 액세스하기 위해 서비스 ID와 API 키를 함께 사용하는 방법을 설명합니다. 베어러 토큰 사용에 대한 자세한 내용은 ‘베어러 토큰을 사용한 인증’을 참조하십시오.
서비스 ID 및 API 키 생성
서비스 ID는 애플리케이션 및 자동화된 워크플로의 액세스를 관리합니다. 프로젝트 내에서 직접 서비스 ID를 생성하면, 채팅 자동 완성 기능을 생성할 수 있도록 ‘Writer’ 서비스 액세스 역할이 자동으로 할당됩니다.
- Red Hat AI Inference 프로젝트 페이지로 이동하여 해당 프로젝트를 선택하세요.
- 'API 사용' 섹션에서 'API 키 생성'을 클릭합니다.
- '다음'을 클릭한 다음, 현재 프로젝트에 대한 액세스만 제한하려면 '이 프로젝트만'을 선택합니다.
- 작성을 클릭하십시오.
- API 키를 복사하여 안전하게 보관하십시오. 대화 상자를 닫으면 API 키 값을 다시 표시할 수 없습니다.
이제 해당 API 키를 사용하여 요청을 인증할 수 있습니다. 다음 단계에서는 API 호출 시 ‘ Authorization: Bearer ’ 헤더에 이 키를 사용하게 됩니다.
사용 가능한 모델 살펴보기
파운데이션 모델마다 장점이 다르기 때문에, 프로젝트에서 사용할 수 있는 모델들을 꼼꼼히 검토하는 것이 중요합니다.
사용 가능한 모든 모델을 나열하려면 다음 API 호출을 수행하십시오. <project_id> 을 프로젝트 ID로, <api_key> 을 서비스 ID API 키로 각각 대체하십시오:
curl -L 'https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference/models' \
-H 'Accept: application/json' \
-H "Authorization: Bearer <api_key>"
from openai import OpenAI
client = OpenAI(
api_key="<api_key>",
base_url="https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference",
)
models = client.models.list()
print(models)
이 응답에는 사용할 수 있는 모든 모델과 각 모델의 기능에 대한 정보가 함께 표시됩니다. 다양한 모델을 직접 사용해 보면서 자신의 사용 사례에 가장 적합한 모델을 찾아볼 수 있습니다.
첫 번째 채팅 완성 문구를 생성해 보세요
자, 이제 모델에게 메시지를 보내면 AI가 생성한 답변을 받아볼 수 있습니다.
<project_id> 을 프로젝트 ID로, <api_key> 을 서비스 ID API 키로 대체하여 다음 API 호출을 수행하십시오:
curl https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <api_key>" \
-d '{
"model": "granite-4-0-h-small",
"messages": [
{
"role": "developer",
"content": "You are a helpful assistant"
},
{
"role": "user",
"content": "Hello! Tell me about yourself"
}
]
}'
from openai import OpenAI
client = OpenAI(
api_key="<api_key>",
base_url="https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference",
)
completion = client.chat.completions.create(
model="granite-4-0-h-small",
messages=[
{"role": "developer", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello! Tell me about yourself"}
]
)
print(completion.choices[0].message)
모델이 자신을 소개하는 응답을 받게 될 것입니다.
요청 내용 파악하기
방금 하신 작업을 하나씩 살펴보겠습니다:
- model
- 사용 가능한 파운데이션 모델 중 하나인 ‘
granite-4-0-h-small’를 지정하셨습니다. 모델마다 기능과 성능 특성이 다릅니다. - 메시지
- 두 개의 메시지를 보내주셨습니다. 그 중 하나는 시스템 프롬프트를 설정하고 모델이 어떻게 행동해야 하는지 지시하는 개발자 메시지였습니다. 사용자 메시지에는 모델이 답변해야 할 귀하의 실제 질문이 포함되어 있었습니다.
- API 엔드포인트
- 이 요청은 해당 프로젝트의 추론 엔드포인트로 전송되었으며, 이 엔드포인트는 적절한 모델로 요청을 라우팅하는 역할을 합니다.
시스템 프롬프트를 조정하거나, 메시지를 추가하거나, 용도에 따라 서로 다른 모델을 사용하여 모델의 동작을 맞춤 설정할 수 있습니다.
다음 단계
이제 추론 기능을 성공적으로 사용하기 시작했으니, 다음 단계로 다음과 같은 작업을 수행할 수 있습니다:
추론을 계속합니다
-
추론에 대해 자세히 알아보고, 응답 스트리밍, 모델 매개변수 조정, 대화 내역 관리와 같은 고급 기능을 확인해 보세요.
-
전체 API 참조 내용을 확인하려면 ‘ OpenAI ’ 채팅 자동 완성 API 문서를 살펴보세요.
-
Python SDK 또는 기타 프로그래밍 언어를 사용하여 애플리케이션에 추론 기능을 통합하세요.