watsonx.ai 경량 엔진으로 작업하기
API를 사용하여 경량 설치 모드에서 기본 모델로 작업할 수 있습니다. watsonx.ai 경량 엔진에는 전용 사용자 인터페이스가 없습니다. 그러나, IBM Software Hub 플랫폼 웹 클라이언트에서 플랫폼 리소스 사용량을 모니터링하는 것과 같은 관리 작업을 수행할 수 있습니다.
API 자격 증명 생성
기초 모델을 추론하거나 임베딩 모델을 사용하여 텍스트를 벡터화하는 것과 같은 생성 AI 작업을 수행하려면 watsonx API를 사용합니다. 사용 가능한 메서드를 사용할 수 있는 권한이 있음을 보여주기 위해 watsonx.ai 경량 엔진 서비스에 요청할 때 지정할 수 있는 API 자격 증명을 가져옵니다.
자격 증명을 생성하려면 다음 단계를 완료합니다:
API 키를 받으려면 다음 방법 중 하나를 사용하여 키를 생성할 수 있습니다:
- 웹 클라이언트 사용자 인터페이스에서. 자세한 내용은 인증을 위한 API 키 생성을 참조하세요.
- 프로그래밍 방식으로 다음 단계를 완료합니다:
앞서 검색한 서비스 세부 정보를 사용하여 무기명 토큰을 생성합니다. 자세한 내용은 권한 부여 토큰 가져오기를 참조하세요.
curl --request POST \ --url "https://cpd-<namespace-name>.apps.<OCP-domain>/icp4d-api/v1/authorize" \ --header "Content-Type: application/json" \ --data '{ "username":"${CPDUSER}", "password": "${CPDUSER_PASSWORD}" }'반환된 JSON에서 무기명 토큰을 복사합니다.
다음 요청에서 무기명 토큰으로 사용할 TOKEN을 복사한 토큰으로 대체합니다. 자세한 내용은 API 키 가져오기를 참조하세요.
curl -s -X GET \ --url "https://cpd-<namespace-name>.apps.<OCP-domain>/usermgmt/v1/user/apiKey" \ --header "Authorization: Bearer <TOKEN>"참고: `usermgmt/v1/user/apiKey` 엔드포인트를 사용하면 새 API 키가 생성되며, 기존 키가 있는 경우 기존 키가 만료됩니다.생성된 API 키를 복사합니다.
watsonx.ai REST API의 경우, API 키를 사용하여 필요에 따라 새 무기명 토큰을 요청하세요. 프로그래밍 방식으로 API 키를 생성한 경우, 이전에 사용한 것과 동일한 '
https://cpd-<namespace-name>.apps.<OCP-domain>/icp4d-api/v1/authorize엔드포인트를 사용하지만 이번에는 비밀번호 대신 API 키를 제출하여 무기명 토큰을 생성하는 것을 확인할 수 있습니다. 자세한 내용은 권한 부여 토큰 가져오기를 참조하세요.curl --request POST \ --url "https://cpd-<namespace-name>.apps.<OCP-domain>/icp4d-api/v1/authorize" \ --header "Content-Type: application/json" \ --data '{ "username":"${CPDUSER}", "api_key": "<APIKEY>" }'JSON 응답의 '
access_token' 섹션에서 무기명 토큰을 복사합니다.요청을 제출할 때 이전 단계에서 반환받은 무기명 토큰을 포함하세요.
curl --request POST \ --url "https://cpd-<namespace-name>.apps.<OCP-domain>/ml/v1/text/chat?version=2026-03-05" \ --header "Accept: application/json" \ --header "Authorization: Bearer ${TOKEN}" \ --header "Content-Type: application/json" \ ...
기초 모델 추론하기
프로그래밍 방식으로 기초 모델을 추론하기 위해 watsonx.ai API를 사용하여 REST API 요청을 제출하세요. 텍스트 생성에 사용하려는 큐레이션 또는 사용자 지정 기초 모델을 추가해야 API를 사용하여 추론할 수 있습니다.
사용 가능한 파운데이션 모델 목록 보기
추가한 모든 사용자 지정 파운데이션 모델은 서비스에 추가한 큐레이션된 파운데이션 모델과 동일한 엔드포인트에서 액세스할 수 있습니다. 자세한 내용은 Foundation 모델 사양을 참조하세요.
curl -k -X GET \
--url "https://cpd-<namespace-name>.apps.<OCP-domain>/ml/v1/foundation_model_specs?version=2026-03-05&limit=50"
기초 모델 추론
curl -k -X POST \
--url "https://cpd-<namespace-name>.apps.<OCP-domain>/ml/v1/text/chat?version=2026-03-05"
--header "Authorization: Bearer ${TOKEN}"
--header "Content-Type: application/json"
--data '{
"model_id": "ibm/granite-3-2-8b-instruct",
"input": "Tell me about mortgage insurance."}'
사용자 지정 기초 모델 추론
curl -k -X POST \
--url "https://cpd-<namespace-name>.apps.<OCP-domain>/ml/v1/text/chat?version=2026-03-05"
--header "Authorization: Bearer ${TOKEN}"
--header "Content-Type: application/json"
--data '{
"model_id": "tiiuae/falcon-7b",
"input": "Tell me about mortgage insurance."}'
텍스트 생성 방법에 대한 자세한 내용은 텍스트 생성을 참조하세요.
지원되는 REST API 메서드
텍스트 생성 외에도 ' watsonx.ai 경량 엔진에서 다음 ' watsonx.ai REST API 메서드를 사용할 수 있습니다:
- 텍스트 임베딩 API를 사용하여 텍스트를 벡터화하려면 먼저 임베딩 모델을 추가해야 합니다.
Python 라이브러리 사용
IBM watsonx.ai Python 라이브러리를 사용하여 watsonx.ai 경량 엔진에서 배포하는 기초 모델과 함께 작업할 수 있습니다.
자세한 내용은 watsonx.ai 경량 엔진에서 Python 라이브러리 사용하기를 참조하세요.
샘플 노트북:
프롬프트 템플릿 평가하기
watsonx.ai 의 경량 엔진에 호스팅된 파운데이션 모델을 다양한 입력값으로 훈련시키고, 모델의 출력 결과를 CSV 파일에 저장할 수 있습니다. 그런 다음 ` CSV ` 파일을 ` watsonx.governance `이 설치된 클러스터로 가져온 후, 분리된 프롬프트 템플릿으로 모델 출력을 평가할 수 있습니다.
프롬프트 템플릿을 평가하기 위해 취할 수 있는 높은 수준의 단계는 다음과 같습니다:
시작점으로 사용할 `
prompt_data.csvCSV ` 파일을 생성합니다. 코드에서 순환할 'city_name프롬프트 변수에 대한 값을 정의합니다.도시_이름 생성된 텍스트 입력_토큰_수 생성된_토큰_수 0 뉴욕시 1 런던 2 도쿄 3 스톡홀름 REST 요청으로 지정할 수 있는 무기명 토큰을 생성합니다. 프로그래밍 방식 액세스는 자격 증명을 참조하세요.
watsonx.ai API의 텍스트 생성 메서드에 게시물 요청을 제출하는 방법을 정의합니다. 4단계의 예제에서는 이 메서드를 '
<your-text-generation-method>이라고 합니다. 프로그래밍 방식으로 기초 모델 추론을 참조하세요.CSV 파일의 구조화된 데이터를 처리하려면 이
pandas라이브러리를 사용하세요. 모델 출력을 'generated_text열에 추가하고 토큰 개수를 'input_token_count' 및 'generated_token_count' 열에 추가합니다. 다음 코드 예제는 ` CSV ` 파일에 제출된 각 입력에 대해 파운데이션 모델이 생성한 출력에 대한 정보를 추가합니다.import pandas as pd test_df = pd.read_csv("prompt_data.csv") token = <specify-your-bearer-token> generated_text = [] input_token_count = [] generated_token_count = [] for city in test_df["city_name"]: payload = { "model_id": "mistralai/mixtral-8x7b-instruct-v01", "input": f"Describe the must-see attractions for visiting {city} as a tourist." } scored_response = <your-text-generation-method>(cluster_url, payload, token) generated_text.append(scored_response["results"][0]["generated_text"]) input_token_count.append(scored_response["results"][0]["input_token_count"]) generated_token_count.append(scored_response["results"][0]["generated_token_count"]) test_df["generated_text"] = generated_text test_df["input_token_count"] = input_token_count test_df["generated_token_count"] = generated_token_count test_df.to_csv("custom_detached_test_prompt_data.csv", index=False) test_df.head()
생성된 ` CSV ` 파일을 ` watsonx.governance ` 서비스의 전체 설치 환경에 가져온 다음, ‘프로젝트에서 분리된 프롬프트 템플릿 평가’ 절차의 지침에 따라 모델을 평가할 수 있습니다.