Aracılığıyla paylaş


Azure AI Arama zenginleştirme işlem hattında AML becerisi

Önemli

Bu beceri, ek kullanım koşulları altında genel önizleme aşamasındadır. Önizleme REST API'leri bu beceriyi destekler.

AML becerisi, özel bir Azure Machine Learning (AML) modeliyle yapay zeka zenginleştirmesini genişletmenize olanak tanır. AML modeli eğitilip dağıtıldıktan sonra, AML becerisi onu yapay zeka zenginleştirmesi ile tümleştirir.

Diğer yerleşik becerilerde olduğu gibi AML becerisinde de girişler ve çıkışlar vardır. Girişler, dağıtılan AML çevrimiçi uç noktanıza bir JSON nesnesi olarak gönderilir ve bu nesne yanıt olarak bir JSON yükünün yanı sıra bir başarı durum kodu oluşturur. Verileriniz, modelinizin dağıtıldığı Coğrafi bölgede işlenir. Yanıtın AML beceriniz tarafından belirtilen çıkışlara sahip olması beklenir. Diğer tüm yanıtlar hata olarak kabul edilir ve zenginleştirme yapılmaz.

AML becerisi bir önizleme özelliğidir, ancak uç noktaya bağlı olarak, bunu kararlı bir API sürümünü hedefleyen bir beceri kümesinde çağırabilirsiniz. Örneğin, 2023-11-01 kararlı API kullanılarak oluşturulan beceri kümesi, önizleme özelliği olsa bile AML becerisi içerebilir.

2024-05-01-preview REST API'sinde ve (2024-05-01-preview'ı da hedefleyen) Azure portalında başlayan Azure AI Search, Azure AI Studio'da model kataloğuna yönelik sorgu süresi bağlantıları için Azure AI Studio model kataloğu vektörleştiricisini kullanıma sundu. Bu vektörleştiriciyi sorgular için kullanmak istiyorsanız AML becerisi, Azure AI Studio model kataloğunda bir model kullanarak ekleme oluşturmak için kullanılan dizin oluşturmanın karşılığıdır.

Dizin oluşturma sırasında AML becerisi model kataloğuna bağlanarak dizin için vektörler oluşturabilir. Sorgu zamanında sorgular, vektör sorgusu için metin dizelerini vektörleştirmek üzere aynı modele bağlanmak üzere vektörleştirici kullanabilir. Bu iş akışında , hem dizin oluşturma hem de sorgular için aynı ekleme modelini kullanmanız için AML becerisi ve model kataloğu vektörleştiricisi birlikte kullanılmalıdır. Bu iş akışıyla ilgili ayrıntılar için bkz . Azure AI Studio'dan modelleri kullanarak tümleşik vektörleştirmeyi uygulama.

Not

Dizin oluşturucu, AML çevrimiçi uç noktasından döndürülen belirli standart HTTP durum kodları için iki kez yeniden dener. Bu HTTP durum kodları şunlardır:

  • 503 Service Unavailable
  • 429 Too Many Requests

Önkoşullar

@odata.type

Microsoft.Skills.Custom.AmlSkill

Beceri parametreleri

Parametreler büyük/küçük harfe duyarlıdır. Hangi parametreleri kullanmayı seçtiğiniz, VARSA AML çevrimiçi uç noktanızın hangi kimlik doğrulamasını gerektirdiğine bağlıdır

Parametre adı Açıklama
uri (Anahtar kimlik doğrulaması için gereklidir) JSON yükünün gönderildiği AML çevrimiçi uç noktasınınpuanlama URI'si. Yalnızca https URI düzenine izin verilir.
key (Anahtar kimlik doğrulaması için gereklidir) AML çevrimiçi uç noktasının anahtarı.
resourceId (Belirteç kimlik doğrulaması için gereklidir). AML çevrimiçi uç noktasının Azure Resource Manager kaynak kimliği. Abonelikler/{guid}/resourceGroups/{resource-group-name}/Microsoft.MachineLearningServices/workspaces/{workspace-name}/onlineendpoints/{endpoint_name} biçiminde olmalıdır.
region (Belirteç kimlik doğrulaması için isteğe bağlı). AML çevrimiçi uç noktasının dağıtılacağı bölge.
timeout (İsteğe bağlı) Belirtildiğinde, API çağrısı yapan http istemcisinin zaman aşımını gösterir. XSD "dayTimeDuration" değeri (ISO 8601 süre değerinin kısıtlanmış bir alt kümesi) olarak biçimlendirilmelidir. Örneğin, PT60S 60 saniye için. Ayarlanmamışsa, varsayılan değer olarak 30 saniye seçilir. Zaman aşımı en fazla 230 saniye ve en az 1 saniye olarak ayarlanabilir.
degreeOfParallelism (İsteğe bağlı) Belirtildiğinde, dizin oluşturucunun sağladığınız uç noktaya paralel olarak yaptığı çağrı sayısını gösterir. Uç noktanız istek yükünün çok yüksek olduğu bir durumda başarısız oluyorsa bu değeri azaltabilirsiniz. Uç noktanız daha fazla istek kabul edebiliyorsa ve dizin oluşturucunun performansında artış olmasını istiyorsanız yükseltebilirsiniz. Ayarlanmazsa, varsayılan 5 değeri kullanılır. DegreeOfParallelism en fazla 10 ve en az 1 olarak ayarlanabilir.

Hangi beceri parametrelerinin kullanılacağı

Hangi AML beceri parametrelerinin gerekli olduğu, VARSA, AML çevrimiçi uç noktanızın hangi kimlik doğrulamayı kullandığına bağlıdır. AML çevrimiçi uç noktaları iki kimlik doğrulama seçeneği sağlar:

  • Anahtar Tabanlı Kimlik Doğrulaması. AML becerilerinden gelen puanlama isteklerinin kimliğini doğrulamak için statik anahtar sağlanır
    • URI ve anahtar parametrelerini kullanma
  • Belirteç Tabanlı Kimlik Doğrulaması. AML çevrimiçi uç noktası, belirteç tabanlı kimlik doğrulaması kullanılarak dağıtılır. Azure AI Arama hizmeti yönetilen kimliği etkinleştirilmelidir. Ardından AML becerisi, statik anahtar gerektirmeden AML çevrimiçi uç noktasında kimlik doğrulaması yapmak için hizmetin yönetilen kimliğini kullanır. Kimliğe sahip veya katkıda bulunan rolü atanmalıdır.
    • resourceId parametresini kullanın.
    • Arama hizmeti AML çalışma alanından farklı bir bölgedeyse, AML çevrimiçi uç noktasının dağıtıldığı bölgeyi ayarlamak için region parametresini kullanın

Beceri girişleri

Bu beceri için "önceden tanımlanmış" giriş yoktur. Bu becerinin yürütülmesi sırasında giriş olarak zaten kullanılabilir olan bir veya daha fazla alan seçebilirsiniz ve AML çevrimiçi uç noktasına gönderilen JSON yükü farklı alanlara sahip olur.

Beceri çıkışları

Bu beceri için "önceden tanımlanmış" çıkış yoktur. AML çevrimiçi uç noktanızın döndürdüğü yanıta bağlı olarak, JSON yanıtından alınabilmeleri için çıkış alanları ekleyin.

Örnek tanım

  {
    "@odata.type": "#Microsoft.Skills.Custom.AmlSkill",
    "description": "A sample model that detects the language of sentence",
    "uri": "https://contoso.count-things.com/score",
    "context": "/document",
    "inputs": [
      {
        "name": "text",
        "source": "/document/content"
      }
    ],
    "outputs": [
      {
        "name": "detected_language_code"
      }
    ]
  }

Örnek giriş JSON yapısı

Bu JSON yapısı, AML çevrimiçi uç noktanıza gönderilen yükü temsil eder. Yapının en üst düzey alanları, beceri tanımının bölümünde belirtilen inputs "adlara" karşılık gelir. Bu alanların değerleri bu alanların değerleridir source (belgedeki bir alandan veya başka bir beceriden olabilir)

{
  "text": "Este es un contrato en Inglés"
}

Örnek çıkış JSON yapısı

Çıkış, AML çevrimiçi uç noktanızdan döndürülen yanıta karşılık gelir. AML çevrimiçi uç noktası yalnızca bir JSON yükü döndürmelidir (yanıt üst bilgisine Content-Type bakarak doğrulanır) ve alanların içindeki "adlarla" output eşleşen zenginleştirmeler olduğu ve değeri zenginleştirme olarak kabul edilen bir nesne olmalıdır.

{
    "detected_language_code": "es"
}

Satır içi şekillendirme örnek tanımı

  {
    "@odata.type": "#Microsoft.Skills.Custom.AmlSkill",
    "description": "A sample model that detects the language of sentence",
    "uri": "https://contoso.count-things.com/score",
    "context": "/document",
    "inputs": [
      {
        "name": "shapedText",
        "sourceContext": "/document",
        "inputs": [
            {
              "name": "content",
              "source": "/document/content"
            }
        ]
      }
    ],
    "outputs": [
      {
        "name": "detected_language_code"
      }
    ]
  }

Satır içi şekillendirme girişi JSON yapısı

{
  "shapedText": { "content": "Este es un contrato en Inglés" }
}

Satır içi şekillendirme örneği çıkış JSON yapısı

{
    "detected_language_code": "es"
}

Hata durumları

AML'nizin kullanılamaması veya başarısız durum kodları göndermenize ek olarak, aşağıdakiler hatalı durumlar olarak kabul edilir:

  • AML çevrimiçi uç noktası bir başarı durum kodu döndürüyorsa ancak yanıt olmadığını application/jsongösteriyorsa, yanıt geçersiz kabul edilir ve hiçbir zenginleştirme yapılmaz.
  • AML çevrimiçi uç noktası geçersiz json döndürüyorsa

AML çevrimiçi uç noktasının kullanılamadığı veya HTTP hatası döndürdüğü durumlarda, dizin oluşturucu yürütme geçmişine HTTP hatasıyla ilgili kullanılabilir ayrıntıları içeren kolay bir hata eklenir.

Ayrıca bkz.