다음을 통해 공유


Azure AI 비전 멀티모달 포함 기술

Important

이 기술은 추가 사용 약관에 따라 공개 미리 보기로 제공됩니다. 2024-05-01-Preview REST API는 이 기능을 지원합니다.

Azure AI 비전 다중 모달 포함 기술은 Azure AI 비전의 다중 모달 포함 API를 사용하여 이미지 또는 텍스트 입력에 대한 포함을 생성합니다.

이 기술은 Azure AI 비전 다중 모달 포함 API를 지원하는 지역에 있는 검색 서비스에서만 지원됩니다. 다중 모드 포함에 대한 지역 가용성을 검토 합니다. 데이터는 모델이 배포된 지역에서 처리됩니다.

참고 항목

이 기술은 Azure AI 서비스에 바인딩되며, 하루에 인덱서당 20개의 문서를 초과하는 트랜잭션에 대해 청구 가능한 리소스를 필요로 합니다. 기본 제공 기술을 실행하는 요금은 기존 Azure AI 서비스 종량제 가격으로 청구됩니다.

또한 이미지 추출은 Azure AI 검색을 통해 청구할 수 있습니다.

@odata.type

Microsoft.Skills.Vision.VectorizeSkill

데이터 제한

기술에 대한 입력 제한은 각각 이미지 및 텍스트에 대한 Azure AI 비전 설명서에서 찾을 수 있습니다. 텍스트 입력에 데이터 청크가 필요한 경우 텍스트 분할 기술을 사용하는 것이 좋습니다.

기술 매개 변수

매개 변수는 대/소문자를 구분합니다.

입력 설명
modelVersion (필수) 포함을 생성하기 위해 Azure AI Vision 멀티모달 embeddings API에 전달할 모델 버전입니다. 지정된 인덱스 필드에 저장된 모든 포함은 동일한 modelVersion을(를) 사용하여 생성되어야 합니다. 이 모델에 대한 버전 지원에 대한 자세한 내용은 멀티모달 포함을 참조 하세요.

기술 입력

입력 설명
text 벡터화할 입력 텍스트입니다. 데이터 청크를 사용하는 경우 원본은 /document/pages/*일 수 있습니다.
image 복합 형식입니다. imageActionnone 이외의 값으로 설정된 경우 현재 Azure Blob 인덱서에서 생성된 “/document/normalized_images” 필드에만 작동합니다.
url 벡터화할 이미지를 다운로드할 URL입니다.
queryString 벡터화할 이미지를 다운로드할 URL의 쿼리 문자열입니다. URL 및 SAS 토큰을 별도의 경로에 저장하는 경우에 유용합니다.

기술의 단일 인스턴스에 대해 text, image 또는 url/queryString 중 하나만 구성할 수 있습니다. 동일한 기술 세트 내에서 이미지와 텍스트를 둘 다 벡터화하려는 경우 이 기술의 두 인스턴스를 기술 세트 정의에 포함합니다. 하나는 사용하려는 각 입력 유형에 대해 하나씩입니다.

기술 출력

출력 설명
vector 입력 텍스트 또는 이미지에 대한 부동 소수 자릿수 배열을 포함하는 출력입니다.

샘플 정의

텍스트 입력의 경우 다음 필드가 있는 레코드를 고려합니다.

{
    "content": "Microsoft released Windows 10."
}

그러면 기술 정의가 다음과 같이 표시될 수 있습니다.

{ 
    "@odata.type": "#Microsoft.Skills.Vision.VectorizeSkill", 
    "context": "/document", 
    "modelVersion": "2023-04-15", 
    "inputs": [ 
        { 
            "name": "text", 
            "source": "/document/content" 
        } 
    ], 
    "outputs": [ 
        { 
            "name": "vector"
        } 
    ] 
} 

이미지 입력의 경우 기술 정의는 다음과 같을 수 있습니다.

{
    "@odata.type": "#Microsoft.Skills.Vision.VectorizeSkill",
    "context": "/document/normalized_images/*",
    "modelVersion": "2023-04-15", 
    "inputs": [
        {
            "name": "image",
            "source": "/document/normalized_images/*"
        }
    ],
    "outputs": [
        {
            "name": "vector"
        }
    ]
}

Blob Storage 데이터 원본에서 직접 이미지를 벡터화하려는 경우 기술 정의는 다음과 같습니다.

{
    "@odata.type": "#Microsoft.Skills.Vision.VectorizeSkill",
    "context": "/document",
    "modelVersion": "2023-04-15", 
    "inputs": [
        {
            "name": "url",
            "source": "/document/metadata_storage_path"
        },
        {
            "name": "queryString",
            "source": "/document/metadata_storage_sas_token"
        }
    ],
    "outputs": [
        {
            "name": "vector"
        }
    ]
}

샘플 출력

지정된 입력 텍스트의 경우 벡터화된 포함 출력이 생성됩니다.

{
  "vector": [
        0.018990106880664825,
        -0.0073809814639389515,
        .... 
        0.021276434883475304,
      ]
}

출력은 메모리에 상주합니다. 이 출력을 검색 인덱스의 필드로 보내려면 벡터화된 포함 출력(배열)을 벡터 필드에 매핑하는 outputFieldMapping을 정의해야 합니다. 기술 출력이 문서의 벡터 노드에 있고 content_vector가 검색 인덱스의 필드라고 가정하면 인덱서의 outputFieldMapping은 다음과 같습니다.

  "outputFieldMappings": [
    {
      "sourceFieldName": "/document/vector/*",
      "targetFieldName": "content_vector"
    }
  ]

인덱스에 이미지 포함을 매핑하려면 인덱스 프로젝션 기능을 사용해야 합니다. indexProjections에 대한 페이로드는 다음과 같이 표시될 수 있습니다.

"indexProjections": {
    "selectors": [
        {
            "targetIndexName": "myTargetIndex",
            "parentKeyFieldName": "ParentKey",
            "sourceContext": "/document/normalized_images/*",
            "mappings": [
                {
                    "name": "content_vector",
                    "source": "/document/normalized_images/*/vector"
                }
            ]
        }
    ]
}

참고 항목