사용자 지정 foundation model 에셋을 만든 후에는 모델에 대한 배포를 만들어 추론에 사용할 수 있도록 할 수 있습니다.
전제 조건
API 키를 생성하여 작업 자격 증명을 설정해야 합니다. 자세한 내용은 작업 자격 증명 관리하기를 참조하세요.
모델을 배포하기 전에 사용 가능한 하드웨어 사양를 검토하고 모델에 맞는 미리 정의된 하드웨어 사양을 선택하세요.
또한 사용 가능한 소프트웨어 사양이 모델 아키텍처와 일치하는지 검토하세요. 자세한 내용은 지원되는 모델 아키텍처를 참조하세요.
watsonx.ai 사용자 인터페이스에서 배포 생성하기
다음 단계에 따라 사용자 지정 foundation model 대한 배포를 만들 수 있습니다:
배포 공간 또는 프로젝트에서 자산 탭으로 이동합니다.
에셋 목록에서 모델을 찾고 메뉴 아이콘 ' '을 클릭한 다음 배포를 선택합니다.
배포 이름을 입력하고 선택적으로 서비스 이름, 설명 및 태그를 입력합니다.
참고:- 서비스 이름 필드를 사용하여 배포 ID 대신 배포 이름을 지정합니다.
- 서빙 이름은 네임스페이스 내에서 고유해야 합니다.
- 서빙 이름에는 다음 문자만 포함되어야 합니다:a-z,0-9,_]로만 구성되어야 하며 최대 36자이어야 합니다.
- 사용자 지정 foundation model 주기적으로 사용하는 워크플로에서는 배포할 때마다 모델에 동일한 서비스 이름을 할당하는 것이 좋습니다. 이렇게 하면 모델을 삭제했다가 다시 배포한 후에도 코드에서 동일한 엔드포인트를 계속 사용할 수 있습니다.
모델에 맞는 구성 및 소프트웨어 사양을 선택합니다.
선택 사항: 일부 기본 모델 파라미터를 재정의하려면 모델 배포 파라미터를 클릭한 다음 새 파라미터 값을 입력합니다:
- 데이터 유형: float16 또는 bfloat16을 선택하여 모델의 데이터 유형을 지정합니다.
- 최대 배치 크기: 모델의 최대 배치 크기를 입력합니다.
- 최대 동시 요청 수: 모델에 대해 수행할 수 있는 최대 동시 요청 수를 입력합니다.
- 최대 새 토큰 수: 추론 요청을 위해 모델에 생성할 수 있는 최대 토큰 수를 입력합니다.
- 최대 시퀀스 길이: 모델의 최대 시퀀스 길이를 입력합니다.
작성을 클릭하십시오.
' watsonx-cfm-caikit-1.1
소프트웨어 사양을 사용하여 모델을 배포하는 경우 ' max_concurrent_requests
' 매개변수 값은 사용되지 않습니다.
배치 테스트
다음 단계에 따라 사용자 지정 foundation model 배포를 테스트하세요:
배포 공간 또는 프로젝트에서 디플로이먼트 탭을 열고 배포 이름을 클릭합니다.
테스트 탭을 클릭하여 프롬프트 텍스트를 입력하고 배포된 에셋의 응답을 확인합니다.
배포한 에셋 유형에 따라 다음 형식 중 하나로 테스트 데이터를 입력합니다:
- Text: 텍스트 입력 데이터를 입력하여 텍스트 블록을 출력으로 생성합니다.
- Stream: 텍스트 입력 데이터를 입력하여 텍스트 스트림을 출력으로 생성합니다.
- JSON: JSON 입력 데이터를 입력하여 JSON 형식의 출력을 생성합니다.
생성를 클릭하면 프롬프트에 따라 결과를 확인할 수 있습니다.
사용자 지정 foundation model 배포를 위한 엔드포인트 가져오기
다음 단계에 따라 사용자 지정 foundation model 배포를 위한 엔드포인트 URL을 검색하세요. 애플리케이션에서 배포에 액세스하려면 이 URL이 필요합니다:
- 배포 공간 또는 프로젝트에서 디플로이먼트 탭을 열고 배포 이름을 클릭합니다.
- API 참조 탭에서 애플리케이션에 엔드포인트 세부 정보를 포함시키는 데 사용할 수 있는 비공개 및 공개 엔드포인트 링크와 코드 스니펫을 찾습니다.
온라인 배포를 생성할 때 서빙 이름를 추가한 경우 두 개의 엔드포인트 URL이 표시됩니다. 첫 번째 URL에는 배포 ID가, 두 번째 URL에는 서비스 이름이 포함됩니다. 배치와 함께 이 URL 중 하나를 사용할 수 있습니다.
프로그래밍 방식으로 배포 만들기
watsonx.ai API를 사용하려면 무기명 토큰이 필요합니다. 자세한 내용은 프로그래머틱 액세스를 위한 자격증명를 참조하세요.
- '
online.parameters.foundation_model
' 필드에서 사용자 정의 foundation model 매개변수의 기본값을 재정의할 수 있습니다. - '
watsonx-cfm-caikit-1.1
소프트웨어 사양을 사용하여 모델을 배포하는 경우 'max_concurrent_requests
' 매개 변수는 사용되지 않습니다. - 서비스 이름 필드를 사용하여 배포 ID 대신 배포 이름을 지정합니다.
- 서빙 이름은 네임스페이스 내에서 고유해야 합니다.
- 서빙 이름에는 다음 문자만 포함되어야 합니다:a-z,0-9,_]로만 구성되어야 하며 최대 36자이어야 합니다.
- 사용자 지정 foundation model 주기적으로 사용하는 워크플로에서는 배포할 때마다 모델에 동일한 서비스 이름을 할당하는 것이 좋습니다. 이렇게 하면 모델을 삭제했다가 다시 배포한 후에도 코드에서 동일한 엔드포인트를 계속 사용할 수 있습니다.
사용자 지정 foundation model 프로그래밍 방식으로 배포합니다:
모델 배포를 시작합니다. 스페이스에 배포하는 예제는 이 코드를 참조하세요:
curl -X POST "https://<your cloud hostname>/ml/v4/deployments?version=2024-01-29" \ -H "Authorization: Bearer $TOKEN" \ -H "content-type: application/json" \ --data '{ "asset":{ "id":<your custom foundation model asset id> }, "online":{ "parameters":{ "serving_name":"test_custom_fm", "foundation_model": { "max_sequence_length": 4096 } } }, "hardware_request": { "size": "<configuration size>", "num_nodes": 1 }, "description": "Testing deployment using custom foundation model", "name":"custom_fm_deployment", "space_id":<your space id> }'
size
매개변수는gpu_s
,gpu_m
또는gpu_l
가 될 수 있습니다.
프로젝트 배포의 경우space_id
대신project_id
을 사용합니다.배포 ID는 API 응답의
metadata.id
필드에 반환됩니다.배포 ID를 사용하여 배포 상태를 폴링합니다. 프로젝트에 배포된 모델의 상태를 폴링하는 방법의 예는 이 코드를 참조하세요.
curl -X GET "https://<your cloud hostname>/ml/v4/deployments/<your deployment ID>?version=2024-01-29&project_id=<your project ID>" \ -H "Authorization: Bearer $TOKEN"
deployed_asset_type
은custom_foundation_model
로 반환됩니다. 상태가initializing
에서ready
로 변경될 때까지 기다립니다.
다음 단계
상위 주제: 사용자 지정 파운데이션 모델 배포