Azure Machine Learning 스튜디오를 사용하여 JAIS를 배포하는 방법
이 문서에서는 Azure Machine Learning 스튜디오를 사용하여 종량제로 JAIS 모델을 서비스로 배포하는 방법을 알아봅니다.
JAIS 모델은 Azure Machine Learning 스튜디오에서 서비스형 모델을 사용한 종량제 토큰 기반 청구를 통해 사용할 수 있습니다.
JAIS 컬렉션을 필터링하여 모델 카탈로그에서 JAIS 모델을 찾을 수 있습니다.
필수 조건
유효한 결제 방법을 사용하는 Azure 구독입니다. 무료 또는 평가판 Azure 구독은 작동하지 않습니다. Azure 구독이 없으면 유료 Azure 계정을 만들어 시작합니다.
Azure Machine Learning 작업 영역 이러한 리소스가 없으면 빠른 시작: 작업 영역 리소스 만들기 문서의 단계에서 리소스를 만듭니다. JAIS용 서버리스 API 모델 배포 서비스는 다음 지역에서 만들어진 작업 영역에서만 사용할 수 있습니다.
- 미국 동부
- 미국 동부 2
- 미국 중북부
- 미국 중남부
- 미국 서부
- 미국 서부 3
- 스웨덴 중부
서버리스 API 엔드포인트 배포를 지원하는 각 모델에 사용할 수 있는 지역 목록은 서버리스 API 엔드포인트의 모델에 대한 지역 가용성을 참조하세요.
Azure RBAC(Azure 역할 기반 액세스 제어)는 Azure AI Studio의 작업에 대한 액세스 권한을 부여하는 데 사용됩니다. 이 문서의 단계를 수행하려면 사용자 계정에 리소스 그룹에 대한 Azure AI 개발자 역할이 할당되어야 합니다. 권한에 대한 자세한 내용은 Azure AI Studio의 역할 기반 액세스 제어를 참조하세요.
JAIS 30b 채팅
JAIS 30b 채팅은 아랍어 및 영어용 자동 회귀 이중 언어 LLM입니다. 조정된 버전은 감독된 SFT(미세 조정)를 사용합니다. 모델은 아랍어 및 영어 프롬프트 응답 쌍으로 미세 조정됩니다. 미세 조정 데이터 세트에는 다양한 도메인에 걸쳐 광범위한 교육 데이터가 포함되었습니다. 이 모델은 질문 답변, 코드 생성 및 텍스트 콘텐츠에 대한 추론을 비롯한 다양한 일반적인 작업을 다룹니다. 아랍어 성능을 향상시키기 위해 Core42 팀은 사내 아랍어 데이터 세트를 개발하고 일부 오픈 소스 영어 지침을 아랍어로 번역했습니다.
컨텍스트 길이: JAIS 30b 채팅은 컨텍스트 길이 8K를 지원합니다.
입력: 모델 입력은 텍스트에만 해당합니다.
출력: 모델은 텍스트만 생성합니다.
Important
이 기능은 현재 공개 미리 보기로 제공됩니다. 이 미리 보기 버전은 서비스 수준 계약 없이 제공되며, 프로덕션 워크로드에는 권장되지 않습니다. 특정 기능이 지원되지 않거나 기능이 제한될 수 있습니다.
자세한 내용은 Microsoft Azure Preview에 대한 추가 사용 약관을 참조하세요.
종량제 방식으로 배포
모델 카탈로그의 특정 모델은 종량제 서비스로 배포할 수 있으므로 구독에서 호스트하지 않고 API로 사용하는 방법을 제공하면서 조직에 필요한 엔터프라이즈 보안 및 규정 준수를 유지할 수 있습니다. 이 배포 옵션에는 구독으로부터의 할당량이 필요하지 않습니다.
앞에서 언급한 JAIS 30b Chat 모델은 종량제로 서비스로 배포할 수 있으며 Microsoft Azure Marketplace를 통해 Core42에서 제공됩니다. Core42는 이 모델의 사용 약관 및 가격 책정을 변경하거나 업데이트할 수 있습니다.
새 배포 만들기
배포를 만들려면 다음을 수행합니다.
Azure Machine Learning 스튜디오로 이동합니다.
모델을 배포할 작업 영역을 선택합니다. 종량제 모델 배포 제품을 사용하려면 작업 영역이 EastUS2 또는 스웨덴 중부 지역에 속해야 합니다.
JAIS를 검색하고 모델 카탈로그에서 Jais-30b-chat 모델을 선택합니다.
모델 카탈로그의 모델 개요 페이지에서 배포를 선택합니다.
배포 마법사에서 Azure Marketplace 사용 약관에 대한 링크를 선택하여 사용 약관에 대해 자세히 알아봅니다.
또한 가격 책정 및 사용 약관 탭을 선택하여 선택한 모델의 가격 책정을 알아볼 수도 있습니다.
작업 영역에 모델을 처음 배포하는 경우 모델의 특정 제품에 대한 작업 영역을 구독해야 합니다. 이 단계를 수행하려면 필수 조건에 나열된 대로 계정에 리소스 그룹에 대한 Azure AI 개발자 역할 권한이 있어야 합니다. 각 작업 영역에는 지출을 제어하고 모니터링할 수 있는 특정 Azure Marketplace 제품에 대한 자체 구독이 있습니다. 구독 및 배포를 선택합니다. 현재 작업 영역 내의 각 모델에 대해 하나의 배포만 가질 수 있습니다.
특정 Azure Marketplace 제품에 대한 작업 영역을 등록한 후에는 동일한 작업 영역에서 동일한 제품의 후속 배포 를 다시 구독할 필요가 없습니다. 이 시나리오에 해당하는 경우 계속 배포 옵션을 선택할 수 있습니다.
배포에 이름을 지정합니다. 이 이름은 배포 API URL의 일부가 됩니다. 이 URL은 각 Azure 지역에서 고유해야 합니다.
배포를 선택합니다. 배포가 완료되고 서버리스 엔드포인트 페이지로 리디렉션될 때까지 기다립니다.
엔드포인트를 선택하여 세부 정보 페이지를 엽니다.
테스트 탭을 선택하여 모델과의 상호 작용을 시작합니다.
작업 영역>엔드포인트>서버리스 엔드포인트로 이동하여 항상 엔드포인트의 세부 정보, URL 및 액세스 키를 찾을 수 있습니다.
대상 URL과 비밀 키를 기록해 두세요. API 사용에 대한 자세한 내용은 참조 섹션을 참조하세요.
종량제 방식으로 배포된 모델의 청구에 대해 알아보려면 서비스로 배포된 JAIS 모델의 비용 및 할당량 고려 사항을 참조하세요.
JAIS 30b 채팅 모델을 서비스로 사용
이러한 모델은 채팅 API를 사용하여 사용할 수 있습니다.
작업 영역에서 왼쪽의 엔드포인트 탭을 선택합니다.
서버리스 엔드포인트 탭으로 이동합니다.
JAIS 30b 채팅에 대한 배포를 선택합니다.
테스트 탭에서 배포를 테스트 할 수 있습니다.
API를 사용하려면 대상 URL과 키 값을 복사합니다.
API 사용에 대한 자세한 내용은 참조 섹션을 참조하세요.
서비스로 배포된 JAIS에 대한 채팅 API 참조
v1/채팅/완료
요청
POST /v1/chat/completions HTTP/1.1
Host: <DEPLOYMENT_URI>
Authorization: Bearer <TOKEN>
Content-type: application/json
v1/채팅/완료 요청 스키마
JAIS 30b 채팅은 v1/chat/completions
응답 유추 호출에 대해 다음 매개 변수를 허용합니다.
속성 | Type | 기본값 | 설명 |
---|---|---|---|
messages |
array |
None |
모델이 응답하는 텍스트 입력입니다. |
max_tokens |
integer |
None |
모델이 응답의 일부로 생성하는 최대 토큰 수입니다. 참고: 낮은 값을 설정하면 생성이 불완전해질 수 있습니다. 지정하지 않으면 시퀀스가 끝날 때까지 토큰을 생성합니다. |
temperature |
float |
0.3 |
모델의 임의성을 제어합니다. 값이 낮을수록 모델이 더 결정적이고 값이 높을수록 모델이 더 임의로 만들어지게 됩니다. |
top_p |
float |
None |
핵 샘플링을 위해 유지할 매개 변수 가장 높은 확률 어휘 토큰의 누적 확률은 기본적으로 null입니다. |
top_k |
integer |
None |
상위 k 필터링을 위해 유지할 확률이 가장 높은 어휘 토큰의 수입니다. 기본값은 null입니다. |
시스템 또는 사용자 메시지는 다음 속성을 지원합니다.
속성 | Type | 기본값 | 설명 |
---|---|---|---|
role |
enum |
필수 | role=system 또는 role=user . |
content |
string |
Required | 모델이 응답하는 텍스트 입력입니다. |
도우미 메시지는 다음 속성을 지원합니다.
속성 | Type | 기본값 | 설명 |
---|---|---|---|
role |
enum |
필수 | role=assistant |
content |
string |
Required | 보조 메시지의 콘텐츠입니다. |
v1/채팅/완료 응답 스키마
응답 페이로드는 다음 필드가 있는 사전입니다.
키 | 형식 | 설명 |
---|---|---|
id |
string |
완료의 고유 식별자입니다. |
choices |
array |
입력 메시지를 위해 모델이 생성한 완료 선택 목록입니다. |
created |
integer |
완료가 만들어진 시점의 Unix 타임스탬프(초)입니다. |
model |
string |
완료에 사용되는 model_id입니다. |
object |
string |
chat.completion. |
usage |
object |
완료 요청의 사용 통계입니다. |
choices
개체는 다음 필드가 있는 사전입니다.
키 | 형식 | 설명 |
---|---|---|
index |
integer |
선택 인덱스입니다. |
messages 또는 delta |
string |
메시지 개체의 채팅 완료 결과입니다. 스트리밍 모드를 사용할 경우 델타 키가 사용됩니다. |
finish_reason |
string |
모델이 토큰 생성을 중지한 이유. |
usage
개체는 다음 필드가 있는 사전입니다.
키 | 형식 | 설명 |
---|---|---|
prompt_tokens |
integer |
프롬프트에 있는 토큰 수입니다. |
completion_tokens |
integer |
완료에서 생성된 토큰 수입니다. |
total_tokens |
integer |
총 토큰입니다. |
예제
아랍어
요청:
"messages": [
{
"role": "user",
"content": "ما هي الأماكن الشهيرة التي يجب زيارتها في الإمارات؟"
}
]
응답:
{
"id": "df23b9f7-e6bd-493f-9437-443c65d428a1",
"choices": [
{
"index": 0,
"finish_reason": "stop",
"message": {
"role": "assistant",
"content": "هناك العديد من الأماكن المذهلة للزيارة في الإمارات! ومن أشهرها برج خليفة في دبي وهو أطول مبنى في العالم ، ومسجد الشيخ زايد الكبير في أبوظبي والذي يعد أحد أجمل المساجد في العالم ، وصحراء ليوا في الظفرة والتي تعد أكبر صحراء رملية في العالم وتجذب الكثير من السياح لتجربة ركوب الجمال والتخييم في الصحراء. كما يمكن للزوار الاستمتاع بالشواطئ الجميلة في دبي وأبوظبي والشارقة ورأس الخيمة، وزيارة متحف اللوفر أبوظبي للتعرف على تاريخ الفن والثقافة العالمية"
}
}
],
"created": 1711734274,
"model": "jais-30b-chat",
"object": "chat.completion",
"usage": {
"prompt_tokens": 23,
"completion_tokens": 744,
"total_tokens": 767
}
}
영어
요청:
"messages": [
{
"role": "user",
"content": "List the emirates of the UAE."
}
]
응답:
{
"id": "df23b9f7-e6bd-493f-9437-443c65d428a1",
"choices": [
{
"index": 0,
"finish_reason": "stop",
"message": {
"role": "assistant",
"content": "The seven emirates of the United Arab Emirates are: Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al-Quwain, Fujairah, and Ras Al Khaimah."
}
}
],
"created": 1711734274,
"model": "jais-30b-chat",
"object": "chat.completion",
"usage": {
"prompt_tokens": 23,
"completion_tokens": 60,
"total_tokens": 83
}
}
더 많은 유추 예
샘플 형식 | 샘플 Notebook |
---|---|
CURL 및 Python 웹 요청을 사용하는 CLI | webrequests.ipynb |
OpenAI SDK(실험용) | openaisdk.ipynb |
LiteLLM | litellm.ipynb |
비용 및 할당량
서비스로 배포된 모델에 대한 비용 및 할당량 고려 사항
JAIS 30b 채팅은 Azure Marketplace를 통해 Core42에서 제공하고 사용할 Azure AI 스튜디오와 통합되는 서비스로 배포됩니다. 모델을 배포할 때 Azure Marketplace 가격 책정을 확인할 수 있습니다.
프로젝트가 Azure Marketplace에서 지정된 제품을 구독할 때마다 사용에 연결된 비용을 추적하기 위해 새 리소스가 만들어집니다. 유추와 관련된 비용을 추적하는 데 동일한 리소스가 사용됩니다. 그러나 여러 미터를 사용하여 각 시나리오를 독립적으로 추적할 수 있습니다.
비용을 추적하는 방법에 대한 자세한 내용은 Azure Marketplace를 통해 제공되는 모델에 대한 비용 모니터링을 참조하세요.
할당량은 배포당 관리됩니다. 각 배포에는 분당 200,000개의 토큰과 분당 1,000개의 API 요청의 속도 제한이 있습니다. 그러나 현재는 프로젝트별 모델당 하나의 배포로 제한됩니다. 현재 속도 제한이 시나리오에 충분하지 않은 경우 Microsoft Azure 지원에 문의하세요.
콘텐츠 필터링
종량제 서비스로 배포되는 모델은 Azure AI 콘텐츠 보안으로 보호됩니다. Azure AI 콘텐츠 보안을 사용하면 유해한 콘텐츠의 출력을 탐지하고 방지하기 위한 분류 모델의 앙상블을 통해 프롬프트와 완료가 모두 실행됩니다. 콘텐츠 필터링(미리 보기) 시스템은 입력 프롬프트와 출력 완성 모두에서 잠재적으로 유해한 콘텐츠의 특정 범주를 검색하고 조치를 취합니다. 여기에서 콘텐츠 필터링에 대해 자세히 알아봅니다.