Note
Azure AI 검색 Azure 포털, REST API 및 Azure SDK 통해 사용할 수 있습니다. 또한 엔터프라이즈 콘텐츠를 Microsoft Foundry 포털의 에이전트에 대해 재사용 가능한 사용 권한 인식 기술 자료로 변환하는 관리되는 기술 계층인 Foundry IQ를 뒷받침합니다.
중요
기능, 기능 또는 표시된 속성(미리 보기)은 서비스 수준 계약에 포함되지 않으며 프로덕션 워크로드에는 권장되지 않으며 일반적으로 사용 가능해지기 전에 변경되거나 제한될 수 있습니다. Azure AI 검색 미리 보기 용어는 독립 실행형 기능이든 일반 공급 기능의 일부이든 관계없이 모든 미리 보기 기능에 적용됩니다.
AML 기술을 사용하여 Microsoft Foundry 모델 카탈로그(미리 보기) 또는 사용자 지정 Azure Machine Learning(AML) 모델에서 배포된 기본 포함 모델로 AI 보강을 확장합니다. 데이터는 모델이 배포된 지오(Geo )에서 처리됩니다.
기술 세트에 AML 기술을 지정한 다음, 배포된 모델을 AI 보강 파이프라인에 통합합니다. AML 기술은 기본 제공 기술에서 지원되지 않는 처리 또는 유추를 수행하는 데 유용합니다. 사용자 고유의 모델을 사용하여 포함을 생성하고 보강된 콘텐츠에 사용자 지정 기계 학습 논리를 적용하는 예제가 있습니다.
AML 온라인 엔드포인트의 경우 안정적인 API 버전 또는 동등한 Azure SDK 사용하여 AML 기술을 호출합니다. 모델 카탈로그에 연결하려면 미리 보기 API 버전을 사용합니다.
AML 기술 사용
다른 기술과 마찬가지로 AML 기술에는 입력 및 출력이 있습니다. 입력은 Foundry 모델 카탈로그 또는 AML 온라인 엔드포인트에서 서버리스 배포로 JSON 개체로 전송됩니다. 출력에는 성공 상태 코드, JSON 페이로드 및 AML 기술 정의에 지정된 매개 변수가 포함되어야 합니다. 다른 응답은 오류로 간주되며 보강이 수행되지 않습니다.
인덱서는 다음 HTTP 상태 코드에 대해 두 번 다시 시도합니다.
503 Service Unavailable429 Too Many Requests
Microsoft Foundry의 모델에 대한 AML 기술(미리 보기)
Azure AI 검색 모델 카탈로그에 대한 쿼리 시간 연결을 위해 데이터 가져오기 마법사에서도 사용할 수 있는 Microsoft Foundry 모델 카탈로그 벡터라이저(미리 보기)를 제공합니다. 쿼리에 이 벡터라이저를 사용하려는 경우 AML 스킬은 모델 카탈로그의 모델을 사용하여 임베딩을 생성하는 인덱싱 역할을 합니다.
인덱싱하는 동안 AML 기술은 모델 카탈로그에 연결하여 인덱스에 대한 벡터를 생성할 수 있습니다. 쿼리 시 쿼리는 벡터라이저를 사용하여 동일한 모델에 연결하여 텍스트 문자열을 벡터화할 수 있습니다. 인덱싱 및 쿼리에 동일한 포함 모델이 사용되도록 AML 기술과 Microsoft Foundry 모델 카탈로그 벡터라이저를 함께 사용해야 합니다. 자세한 내용은 Foundry 모델 카탈로그의 포함 모델 사용을 참조하세요.
데이터 가져오기 마법사를 사용하여 Foundry에 배포된 포함 모델에 대한 AML 기술을 포함하는 기술 세트를 생성하는 것이 좋습니다. 마법사는 입력, 출력 및 매핑에 대한 AML 기술 정의를 생성하여 코드를 작성하기 전에 모델을 쉽게 테스트할 수 있는 방법을 제공합니다.
필수 구성 요소
만든 사용자 지정 모델에 대한 Microsoft Foundry 허브 기반 프로젝트 또는 AML 작업 영역.
허브 기반 프로젝트의 경우 Microsoft Foundry 모델 카탈로그에서 지원되는 모델 서버리스 배포입니다. Azure CLI 사용하여 서버리스 배포를 프로비전할 수 있습니다.
@odata.type
Microsoft.Skills.Custom.AmlSkill
기술 매개 변수
매개변수는 대소문자를 구분합니다. 사용하는 매개 변수는 모델 공급자에 필요한 인증(있는 경우)에 따라 달라집니다.
| 매개 변수 이름 | 설명 |
|---|---|
uri |
(키 인증에 필요) Microsoft Foundry 모델 카탈로그의 서버리스 배포 대상 URI 또는 AML 온라인 끝점의 스코어링 URI입니다. HTTPS URI 스키마만 허용됩니다. 모델 카탈로그에서 지원되는 모델(서버리스 배포만 해당)은 다음과 같습니다.
|
key |
( 키 인증에 필요) 모델 공급자의 API 키입니다. |
resourceId |
( 토큰 인증에 필요) 모델 공급자의 Azure Resource Manager 리소스 ID입니다. AML 온라인 엔드포인트의 경우 subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.MachineLearningServices/workspaces/{workspace-name}/onlineendpoints/{endpoint_name} 형식을 사용합니다. |
region |
( 토큰 인증의 경우 선택 사항) 모델 공급자가 배포되는 지역입니다. 지역이 검색 서비스의 지역과 다른 경우 필요합니다. |
timeout |
(선택 사항) API를 호출하는 HTTP 클라이언트에 대한 시간 제한입니다.
ISO 8601 기간 값의 제한된 하위 집합인 XSD "dayTimeDuration" 값으로 서식을 지정해야 합니다. 예를 들어 60초 동안 PT60S가 필요합니다. 설정하지 않으면 기본값인 30초가 선택됩니다. 시간 제한을 최소 1초 및 최대 230초로 설정할 수 있습니다. |
degreeOfParallelism |
(선택 사항) 인덱서가 제공하는 엔드포인트와 병렬로 호출하는 수입니다. 요청 부하가 너무 높은 상태에서 엔드포인트가 실패하는 경우 이 값을 줄일 수 있습니다. 엔드포인트가 더 많은 요청을 수락할 수 있고 인덱서의 성능이 향상되기를 원한다면 이를 높일 수 있습니다. 설정하지 않으면 기본값 5가 사용됩니다. 최소 1과 최대 10으로 설정할 degreeOfParallelism 수 있습니다. |
인증
AML 기술은 다음 두 가지 인증 옵션을 제공합니다.
키 기반 인증: AML 기술에서 점수 매기기 요청을 인증하는 정적 키를 제공합니다. 이 연결에
uri대한 매개 변수와key매개 변수를 설정합니다.토큰 기반 인증: Foundry 허브 기반 프로젝트 또는 AML 온라인 엔드포인트는 토큰 기반 인증을 사용하여 배포됩니다. Azure AI 검색 서비스에는 관리 ID 및 모델 공급자에 대한 역할 할당이 있어야 합니다. 그런 다음 AML 기술은 검색 서비스 ID를 사용하여 정적 키 없이 모델 공급자에 대해 인증합니다. 검색 서비스 ID에는 소유자 또는 기여자 역할이 있어야 합니다. 매개 변수를
resourceId설정하고 검색 서비스가 모델 공급자와 다른 지역에 있는 경우 매개 변수를region설정합니다.
기술 입력
기술 입력은 문서 분해 중에 생성된 보강된 문서의 노드입니다. 예를 들어 루트 문서, 정규화된 이미지 또는 Blob의 콘텐츠일 수 있습니다. 이 기술에 대한 미리 정의된 입력은 없습니다. 입력의 경우 AML 기술 실행 시 채워진 하나 이상의 노드를 지정해야 합니다.
기술 성과
기술 출력은 스킬이 생성한 강화된 문서의 새로운 노드입니다. 이 기술에 대한 미리 정의된 출력은 없습니다. 출력의 경우 AML 기술의 JSON 응답에서 채울 수 있는 노드를 제공해야 합니다.
샘플 정의
{
"@odata.type": "#Microsoft.Skills.Custom.AmlSkill",
"description": "A custom model that detects the language in a document.",
"uri": "https://language-model.models.contoso.com/score",
"context": "/document",
"inputs": [
{
"name": "text",
"source": "/document/content"
}
],
"outputs": [
{
"name": "detected_language_code"
}
]
}
샘플 입력 JSON 구조
이 JSON 구조는 Foundry 허브 기반 프로젝트 또는 AML 온라인 엔드포인트로 전송되는 페이로드를 나타냅니다. 구조체의 최상위 필드는 기술 정의 섹션에 지정된 "이름"에 inputs 해당합니다. 이러한 필드의 값은 문서의 필드 또는 다른 기술에서 가져올 수 있는 해당 필드의 "원본"에서 가져옵니다.
{
"text": "Este es un contrato en Inglés"
}
샘플 출력 JSON 구조
출력은 Foundry 허브 기반 프로젝트 또는 AML 온라인 엔드포인트의 응답에 해당합니다. 모델 공급자는 JSON 페이로드만 반환해야 하며(Content-Type 응답 헤더를 검토하여 확인됨) 필드는 output의 "이름"과 일치하는 보강 요소로, 해당 값은 보강으로 간주되는 객체여야 합니다.
{
"detected_language_code": "es"
}
인라인 셰이핑 샘플 정의
{
"@odata.type": "#Microsoft.Skills.Custom.AmlSkill",
"description": "A sample model that detects the language of sentence",
"uri": "https://language-model.models.contoso.com/score",
"context": "/document",
"inputs": [
{
"name": "shapedText",
"sourceContext": "/document",
"inputs": [
{
"name": "content",
"source": "/document/content"
}
]
}
],
"outputs": [
{
"name": "detected_language_code"
}
]
}
인라인 셰이핑 입력 JSON 구조체
{
"shapedText": { "content": "Este es un contrato en Inglés" }
}
인라인 셰이핑 샘플 출력 JSON 구조
{
"detected_language_code": "es"
}
오류 사례
Foundry 허브 기반 프로젝트 또는 AML 온라인 엔드포인트를 사용할 수 없거나 비정상 상태 코드를 보내는 것 외에도 다음 사례는 오류로 간주됩니다.
모델 공급자가 성공 상태 코드를 반환하지만 응답은
application/json이 아님을 나타냅니다. 따라서 응답이 유효하지 않으며 보강이 수행되지 않습니다.모델 공급자가 잘못된 JSON을 반환합니다.
모델 공급자를 사용할 수 없거나 HTTP 오류를 반환하는 경우 HTTP 오류에 대한 사용 가능한 세부 정보가 포함된 친숙한 오류가 인덱서 실행 기록에 추가됩니다.