Hızlı Başlangıç: Özel adlandırılmış varlık tanıma

Özel varlık tanıma için özel modeller eğitebileceğiniz özel bir NER projesi oluşturmaya başlamak için bu makaleyi kullanın. Model, belirli bir görevi yerine getirmek için eğitilmiş yapay zeka yazılımıdır. Bu sistem için modeller adlandırılmış varlıkları ayıklar ve etiketli verilerden öğrenilerek eğitilir.

Bu makalede, özel Adlandırılmış Varlık Tanıma (NER) temel kavramlarını göstermek için Language Studio'yu kullanacağız. Örnek olarak, aşağıdakiler gibi kredi sözleşmelerinden ilgili varlıkları ayıklamak için özel bir NER modeli oluşturacağız:

  • Sözleşme tarihi
  • Ödünç alan kullanıcının adı, adresi, şehir ve eyalet
  • Kredi verenin adı, adresi, şehir ve eyalet
  • Kredi ve faiz tutarları

Önkoşullar

Yeni bir Azure AI Dil kaynağı ve Azure depolama hesabı oluşturma

Özel NER'yi kullanabilmeniz için önce bir Azure Yapay Zeka Dili kaynağı oluşturmanız gerekir. Bu kaynak size proje oluşturmak ve modeli eğitmeye başlamak için ihtiyacınız olan kimlik bilgilerini verir. Ayrıca modelinizi oluşturmak için kullanılacak veri kümenizi karşıya yükleyebileceğiniz bir Azure depolama hesabına da ihtiyacınız olacaktır.

Önemli

Hızlı bir şekilde başlamak için bu makalede sağlanan adımları kullanarak yeni bir Azure AI Dili kaynağı oluşturmanızı öneririz. Bu makaledeki adımların kullanılması, Dil kaynağı ve depolama hesabını aynı anda oluşturmanıza olanak sağlar. Bu, daha sonra yapmaktan daha kolaydır.

Kullanmak istediğiniz önceden var olan bir kaynağınız varsa bunu depolama hesabına bağlamanız gerekir. Bilgi için önceden var olan bir kaynağı kullanma yönergelerine bakın.

Azure portalından yeni kaynak oluşturma

  1. Yeni bir Azure AI Dili kaynağı oluşturmak için Azure portalında oturum açın.

  2. Açılan pencerede, özel özelliklerden Özel metin sınıflandırması ve özel adlandırılmış varlık tanıma'yı seçin. Ekranın alt kısmındaki kaynağınızı oluşturmak için Devam'ı seçin.

    A screenshot showing custom text classification & custom named entity recognition in the Azure portal.

  3. Aşağıdaki ayrıntıları içeren bir Dil kaynağı oluşturun.

    Adı Açıklama
    Abonelik Azure aboneliğiniz.
    Kaynak grubu Kaynağınızı içerecek bir kaynak grubu. Mevcut bir tane kullanabilir veya yeni bir tane oluşturabilirsiniz.
    Bölge Dil kaynağınızın bölgesi. Örneğin, "Batı ABD 2".
    Adı Kaynağınız için bir ad.
    Fiyatlandırma katmanı Dil kaynağınızın fiyatlandırma katmanı. Hizmeti denemek için Ücretsiz (F0) katmanını kullanabilirsiniz.

    Dekont

    "Oturum açma hesabınız seçili depolama hesabının kaynak grubunun sahibi değil" iletisini alırsanız, Dil kaynağı oluşturabilmeniz için önce hesabınızın kaynak grubunda sahip rolü atanmış olması gerekir. Yardım için Azure aboneliğinizin sahibine başvurun.

  4. Özel metin sınıflandırması & özel adlandırılmış varlık tanıma bölümünde mevcut bir depolama hesabını seçin veya Yeni depolama hesabı'nı seçin. Bu değerler, üretim ortamlarında kullanmak isteyeceğiniz depolama hesabı değerlerini değil, kullanmaya başlamanıza yardımcı olmak için kullanılır. Projenizi oluştururken gecikme süresini önlemek için Dil kaynağınızla aynı bölgedeki depolama hesaplarına bağlanın.

    hesap değerini Depolama Önerilen değer
    Depolama hesabı adı Herhangi bir ad
    Storage account type Standart LRS
  5. Sorumlu Yapay Zeka Bildirimi'nin işaretli olduğundan emin olun. Sayfanın alt kısmındaki Gözden geçir + oluştur'u ve ardından Oluştur'u seçin.

Örnek verileri blob kapsayıcısına yükleme

Bir Azure depolama hesabı oluşturup Bunu Dil kaynağınıza bağladıktan sonra, örnek veri kümesindeki belgeleri kapsayıcınızın kök dizinine yüklemeniz gerekir. Bu belgeler daha sonra modelinizi eğitmek için kullanılacaktır.

  1. GitHub'dan örnek veri kümesini indirin.

  2. .zip dosyasını açın ve belgeleri içeren klasörü ayıklayın.

  3. Azure portalında, oluşturduğunuz depolama hesabına gidin ve bunu seçin.

  4. Depolama hesabınızda, Veri depolama altında yer alan sol menüden Kapsayıcılar'ı seçin. Görüntülenen ekranda + Kapsayıcı'yı seçin. Kapsayıcıya example-data adını verin ve varsayılan Genel erişim düzeyini bırakın.

    A screenshot showing the main page for a storage account.

  5. Kapsayıcınız oluşturulduktan sonra seçin. Daha önce indirdiğiniz ve dosyalarını seçmek için Karşıya Yükle düğmesini seçin.txt..json

    A screenshot showing the button for uploading files to the storage account.

Sağlanan örnek veri kümesi 20 kredi sözleşmesi içerir. Her sözleşme iki taraf içerir: bir borç veren ve ödünç veren. Sağlanan örnek dosyayı kullanarak ilgili bilgileri ayıklayabilirsiniz: her iki taraf, anlaşma tarihi, kredi tutarı ve faiz oranı.

Özel adlandırılmış varlık tanıma projesi oluşturma

Kaynak ve depolama hesabınız yapılandırıldıktan sonra yeni bir özel NER projesi oluşturun. Proje, verilerinize göre özel ML modellerinizi oluşturmaya yönelik bir çalışma alanıdır. Projenize yalnızca siz ve kullanılan Dil kaynağına erişimi olan diğer kişiler erişebilir.

  1. Language Studio'da oturum açın. Aboneliğinizi ve Dil kaynağınızı seçmenizi sağlayacak bir pencere görüntülenir. Yukarıdaki adımda oluşturduğunuz Dil kaynağını seçin.

  2. Language Studio'nun Bilgileri ayıkla bölümünde Özel adlandırılmış varlık tanıma'yı seçin.

    A screenshot showing the location of custom NER in the Language Studio landing page.

  3. Projeler sayfanızın üst menüsünden Yeni proje oluştur'u seçin. Proje oluşturmak, modellerinizi etiketlemenize, eğitmenize, değerlendirmenize, geliştirmenize ve dağıtmanıza olanak tanır.

    A screenshot of the project creation page.

  4. Yeni proje oluştur'a tıkladıktan sonra, depolama hesabınızı bağlamanıza olanak sağlayan bir pencere görüntülenir. Zaten bir depolama hesabı bağladıysanız, hesaplanmış depolamanın bağlı olduğunu görürsünüz. Aksi takdirde, görüntülenen açılan listeden depolama hesabınızı seçin ve Bağlan depolama hesabını seçin; bu işlem depolama hesabınız için gerekli rolleri ayarlar. Depolama hesabında sahip olarak atanmadıysanız bu adım büyük olasılıkla bir hata döndürür.

    Dekont

    • Bu adımı, kullandığınız her yeni kaynak için yalnızca bir kez yapmanız gerekir.
    • Bu işlem geri alınamaz. Bir depolama hesabını Dil kaynağınıza bağlarsanız daha sonra bağlantısını kesemezsiniz.
    • Dil kaynağınızı yalnızca bir depolama hesabına bağlayabilirsiniz.

    A screenshot showing the storage connection screen.

  5. Projenizdeki dosyaların adı, açıklaması ve dili de dahil olmak üzere proje bilgilerini girin. Örnek veri kümesini kullanıyorsanız İngilizce'yi seçin. Projenizin adını daha sonra değiştiremezsiniz. İleri'yi seçin

    Bahşiş

    Veri kümenizin tamamen aynı dilde olması gerekmez. Her birinde desteklenen farklı dillere sahip birden çok belgeniz olabilir. Veri kümeniz farklı dillerde belgeler içeriyorsa veya çalışma zamanı sırasında farklı dillerden metin bekliyorsanız, projeniz için temel bilgileri girerken çok dilli veri kümesini etkinleştir seçeneğini belirleyin. Bu seçenek daha sonra Proje ayarları sayfasından etkinleştirilebilir.

  6. Veri kümenizi yüklediğiniz kapsayıcıyı seçin. Verileri zaten etiketlediyseniz desteklenen biçime uydığından emin olun ve Evet, dosyalarım zaten etiketlendi ve JSON etiketleri dosyasını biçimlendirdim'i seçin ve açılan menüden etiketler dosyasını seçin. İleri'yi seçin.

  7. Girdiğiniz verileri gözden geçirin ve Proje Oluştur'u seçin.

Modelinizi eğitme

Genellikle bir proje oluşturduktan sonra devam eder ve projenize bağlı kapsayıcıda bulunan belgeleri etiketlemeye başlarsınız. Bu hızlı başlangıçta, örnek etiketli bir veri kümesini içeri aktarmış ve örnek JSON etiketleri dosyasıyla projenizi başlatmışsınızdır.

Modelinizi Language Studio'dan eğitmeye başlamak için:

  1. Sol taraftaki menüden Eğitim işleri'ni seçin.

  2. Üstteki menüden Eğitim işi başlat'ı seçin.

  3. Yeni model eğit'i seçin ve metin kutusuna model adını yazın. Ayrıca , bu seçeneği belirleyip açılan menüden üzerine yazmak istediğiniz modeli seçerek mevcut modelin üzerine yazabilirsiniz. Eğitilen modelin üzerine yazmak geri alınamaz, ancak yeni modeli dağıtana kadar dağıtılan modellerinizi etkilemez.

    Create a new training job

  4. Veri bölme yöntemini seçin. Test kümesini eğitim verilerinden otomatik olarak bölme'yi seçebilirsiniz; burada sistem etiketlenmiş verilerinizi belirtilen yüzdelere göre eğitim ve test kümeleri arasında böler. Ya da eğitim ve test verilerinin el ile bölünmesini kullanabilirsiniz. Bu seçenek yalnızca veri etiketleme sırasında test kümenize belge eklediyseniz etkinleştirilir. Veri bölme hakkında bilgi için bkz . Modeli eğitme.

  5. Eğit düğmesini seçin.

  6. Listeden Eğitim İşi Kimliği'ni seçerseniz, bu işin Eğitim ilerleme durumunu, İş durumunu ve diğer ayrıntıları denetleyebileceğiniz bir yan bölme görüntülenir.

    Dekont

    • Yalnızca başarıyla tamamlanan eğitim işleri model oluşturur.
    • Eğitim, etiketlenmiş verilerinizin boyutuna bağlı olarak birkaç dakika ile birkaç saat arasında sürebilir.
    • Aynı anda yalnızca bir eğitim işi çalıştırabilirsiniz. Çalışan iş tamamlanana kadar aynı proje içinde başka bir eğitim işi başlatamazsınız.

Modelinizi dağıtma

Genellikle bir modeli eğitdikten sonra değerlendirme ayrıntılarını gözden geçirir ve gerekirse iyileştirmeler yaparsınız. Bu hızlı başlangıçta modelinizi dağıtacak ve Language Studio'da denemeniz için kullanılabilir hale getirecek veya tahmin API'sini çağırabilirsiniz.

Modelinizi Language Studio'dan dağıtmak için:

  1. Sol taraftaki menüden Model dağıtma'ya tıklayın.

  2. Yeni bir dağıtım işi başlatmak için Dağıtım ekle'yi seçin.

    A screenshot showing the deployment button

  3. Yeni bir dağıtım oluşturmak ve aşağıdaki açılan listeden eğitilmiş bir model atamak için Yeni dağıtım oluştur'u seçin. Ayrıca bu seçeneği belirleyerek ve aşağıdaki açılan listeden bu dağıtıma atamak istediğiniz eğitilmiş modeli seçerek mevcut dağıtımın üzerine yazabilirsiniz.

    Dekont

    Mevcut dağıtımın üzerine yazmak için tahmin API çağrınızda değişiklik yapılması gerekmez, ancak elde ettiğiniz sonuçlar yeni atanan modeli temel alır.

    A screenshot showing the deployment screen

  4. Dağıtım işini başlatmak için Dağıt'ı seçin.

  5. Dağıtım başarılı olduktan sonra, yanında bir sona erme tarihi görüntülenir. Dağıtım süre sonu, dağıtılan modelinizin tahmin için kullanılamadığı zamandır ve bu durum genellikle eğitim yapılandırmasının süresi dolduktan on iki ay sonra gerçekleşir.

Modelinizi test etme

Modeliniz dağıtıldıktan sonra, Tahmin API'sini kullanarak metninizdeki varlıkları ayıklamak için modeli kullanmaya başlayabilirsiniz. Bu hızlı başlangıçta, özel varlık tanıma görevini göndermek ve sonuçları görselleştirmek için Language Studio'yu kullanacaksınız. Daha önce indirdiğiniz örnek veri kümesinde, bu adımda kullanabileceğiniz bazı test belgelerini bulabilirsiniz.

Dağıtılan modellerinizi Language Studio'dan test etmek için:

  1. Sol taraftaki menüden Dağıtımları test etme'yi seçin.

  2. Test etmek istediğiniz dağıtımı seçin. Yalnızca dağıtımlara atanan modelleri test edebilirsiniz.

  3. Çok dilli projeler için dil açılan listesinden test ettiğiniz metnin dilini seçin.

  4. Açılan listeden sorgulamak/test etmek istediğiniz dağıtımı seçin.

  5. İsteğe göndermek istediğiniz metni girebilir veya kullanmak üzere bir .txt dosya yükleyebilirsiniz.

  6. Üstteki menüden Testi çalıştır'ı seçin.

  7. Sonuç sekmesinde, metninizden ve bunların türlerinden ayıklanan varlıkları görebilirsiniz. JSON yanıtını JSON sekmesinin altında da görüntüleyebilirsiniz.

A screenshot showing the model test results.

Kaynakları temizleme

Projenize artık ihtiyacınız olmadığında, Language Studio'yu kullanarak projenizi silebilirsiniz. Üst kısımdan Özel adlandırılmış varlık tanıma (NER) öğesini seçin, silmek istediğiniz projeyi seçin ve ardından üstteki menüden Sil'i seçin.

Önkoşullar

Yeni bir Azure AI Dil kaynağı ve Azure depolama hesabı oluşturma

Özel NER'yi kullanabilmeniz için önce bir Azure Yapay Zeka Dili kaynağı oluşturmanız gerekir. Bu kaynak size proje oluşturmak ve modeli eğitmeye başlamak için ihtiyacınız olan kimlik bilgilerini verir. Ayrıca modelinizi oluştururken kullanılacak veri kümenizi karşıya yükleyebileceğiniz bir Azure depolama hesabına da ihtiyacınız olacaktır.

Önemli

Hızlı bir şekilde başlamak için, bu makalede sağlanan adımları kullanarak yeni bir Azure AI Dili kaynağı oluşturmanızı öneririz. Bu kaynak, Dil kaynağını oluşturmanıza ve/veya depolama hesabını aynı anda oluşturmanıza ve/veya bağlamanıza olanak sağlar. Bu, daha sonra yapmaktan daha kolaydır.

Kullanmak istediğiniz önceden var olan bir kaynağınız varsa bunu depolama hesabına bağlamanız gerekir. Bilgi için bkz . proje oluşturma.

Azure portalından yeni kaynak oluşturma

  1. Yeni bir Azure AI Dili kaynağı oluşturmak için Azure portalında oturum açın.

  2. Açılan pencerede, özel özelliklerden Özel metin sınıflandırması ve özel adlandırılmış varlık tanıma'yı seçin. Ekranın alt kısmındaki kaynağınızı oluşturmak için Devam'ı seçin.

    A screenshot showing custom text classification & custom named entity recognition in the Azure portal.

  3. Aşağıdaki ayrıntıları içeren bir Dil kaynağı oluşturun.

    Adı Açıklama
    Abonelik Azure aboneliğiniz.
    Kaynak grubu Kaynağınızı içerecek bir kaynak grubu. Mevcut bir tane kullanabilir veya yeni bir tane oluşturabilirsiniz.
    Bölge Dil kaynağınızın bölgesi. Örneğin, "Batı ABD 2".
    Adı Kaynağınız için bir ad.
    Fiyatlandırma katmanı Dil kaynağınızın fiyatlandırma katmanı. Hizmeti denemek için Ücretsiz (F0) katmanını kullanabilirsiniz.

    Dekont

    "Oturum açma hesabınız seçili depolama hesabının kaynak grubunun sahibi değil" iletisini alırsanız, Dil kaynağı oluşturabilmeniz için önce hesabınızın kaynak grubunda sahip rolü atanmış olması gerekir. Yardım için Azure aboneliğinizin sahibine başvurun.

  4. Özel metin sınıflandırması & özel adlandırılmış varlık tanıma bölümünde mevcut bir depolama hesabını seçin veya Yeni depolama hesabı'nı seçin. Bu değerler, üretim ortamlarında kullanmak isteyeceğiniz depolama hesabı değerlerini değil, kullanmaya başlamanıza yardımcı olmak için kullanılır. Projenizi oluştururken gecikme süresini önlemek için Dil kaynağınızla aynı bölgedeki depolama hesaplarına bağlanın.

    hesap değerini Depolama Önerilen değer
    Depolama hesabı adı Herhangi bir ad
    Storage account type Standart LRS
  5. Sorumlu Yapay Zeka Bildirimi'nin işaretli olduğundan emin olun. Sayfanın alt kısmındaki Gözden geçir + oluştur'u ve ardından Oluştur'u seçin.

Örnek verileri blob kapsayıcısına yükleme

Bir Azure depolama hesabı oluşturup Bunu Dil kaynağınıza bağladıktan sonra, örnek veri kümesindeki belgeleri kapsayıcınızın kök dizinine yüklemeniz gerekir. Bu belgeler daha sonra modelinizi eğitmek için kullanılacaktır.

  1. GitHub'dan örnek veri kümesini indirin.

  2. .zip dosyasını açın ve belgeleri içeren klasörü ayıklayın.

  3. Azure portalında, oluşturduğunuz depolama hesabına gidin ve bunu seçin.

  4. Depolama hesabınızda, Veri depolama altında yer alan sol menüden Kapsayıcılar'ı seçin. Görüntülenen ekranda + Kapsayıcı'yı seçin. Kapsayıcıya example-data adını verin ve varsayılan Genel erişim düzeyini bırakın.

    A screenshot showing the main page for a storage account.

  5. Kapsayıcınız oluşturulduktan sonra seçin. Daha önce indirdiğiniz ve dosyalarını seçmek için Karşıya Yükle düğmesini seçin.txt..json

    A screenshot showing the button for uploading files to the storage account.

Sağlanan örnek veri kümesi 20 kredi sözleşmesi içerir. Her sözleşme iki taraf içerir: bir borç veren ve ödünç veren. Sağlanan örnek dosyayı kullanarak ilgili bilgileri ayıklayabilirsiniz: her iki taraf, anlaşma tarihi, kredi tutarı ve faiz oranı.

Kaynak anahtarlarınızı ve uç noktanızı alma

  1. Azure portalında kaynağınıza genel bakış sayfasına gidin

  2. Sol taraftaki menüden Anahtarlar ve Uç Nokta'yı seçin. API istekleri için uç noktayı ve anahtarı kullanacaksınız

    A screenshot showing the key and endpoint page in the Azure portal

Özel NER projesi oluşturma

Kaynak ve depolama hesabınız yapılandırıldıktan sonra yeni bir özel NER projesi oluşturun. Proje, verilerinize göre özel ML modellerinizi oluşturmaya yönelik bir çalışma alanıdır. Projenize yalnızca siz ve kullanılan Dil kaynağına erişimi olan diğer kişiler erişebilir.

Önceki adımda örnek verilerden indirdiğiniz etiket dosyasını kullanın ve aşağıdaki isteğin gövdesine ekleyin.

proje işini içeri aktarmayı tetikleme

Etiket dosyanızı içeri aktarmak için aşağıdaki URL'yi, üst bilgileri ve JSON gövdesini kullanarak bir POST isteği gönderin. Etiketler dosyanızın kabul edilen biçime uygun olduğundan emin olun.

Aynı ada sahip bir proje zaten varsa, o projenin verileri değiştirilir.

{Endpoint}/language/authoring/analyze-text/projects/{projectName}/:import?api-version={API-VERSION}
Yer tutucu Değer Örnek
{ENDPOINT} API isteğinizin kimliğini doğrulamak için uç nokta. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Projenizin adı. Bu değer büyük/küçük harfe duyarlıdır. myProject
{API-VERSION} Çağırdığınız API'nin sürümü. Burada başvuruda bulunılan değer, yayınlanan en son sürüme yöneliktir. Diğer kullanılabilir API sürümleri hakkında daha fazla bilgi edinmek için bkz . Model yaşam döngüsü . 2022-05-01

Üst Bilgiler

İsteğinizin kimliğini doğrulamak için aşağıdaki üst bilgiyi kullanın.

Anahtar Değer
Ocp-Apim-Subscription-Key Kaynağınızın anahtarı. API isteklerinizin kimliğini doğrulamak için kullanılır.

Gövde

İsteğinizde aşağıdaki JSON'yi kullanın. Aşağıdaki yer tutucu değerlerini kendi değerlerinizle değiştirin.

{
    "projectFileVersion": "{API-VERSION}",
    "stringIndexType": "Utf16CodeUnit",
    "metadata": {
        "projectName": "{PROJECT-NAME}",
        "projectKind": "CustomEntityRecognition",
        "description": "Trying out custom NER",
        "language": "{LANGUAGE-CODE}",
        "multilingual": true,
        "storageInputContainerName": "{CONTAINER-NAME}",
        "settings": {}
    },
    "assets": {
    "projectKind": "CustomEntityRecognition",
        "entities": [
            {
                "category": "Entity1"
            },
            {
                "category": "Entity2"
            }
        ],
        "documents": [
            {
                "location": "{DOCUMENT-NAME}",
                "language": "{LANGUAGE-CODE}",
                "dataset": "{DATASET}",
                "entities": [
                    {
                        "regionOffset": 0,
                        "regionLength": 500,
                        "labels": [
                            {
                                "category": "Entity1",
                                "offset": 25,
                                "length": 10
                            },
                            {
                                "category": "Entity2",
                                "offset": 120,
                                "length": 8
                            }
                        ]
                    }
                ]
            },
            {
                "location": "{DOCUMENT-NAME}",
                "language": "{LANGUAGE-CODE}",
                "dataset": "{DATASET}",
                "entities": [
                    {
                        "regionOffset": 0,
                        "regionLength": 100,
                        "labels": [
                            {
                                "category": "Entity2",
                                "offset": 20,
                                "length": 5
                            }
                        ]
                    }
                ]
            }
        ]
    }
}
Tuş Yer tutucu Değer Örnek
api-version {API-VERSION} Çağırdığınız API'nin sürümü. Burada kullanılan sürüm, URL'de aynı API sürümü olmalıdır. Diğer kullanılabilir API sürümleri hakkında daha fazla bilgi edinin 2022-03-01-preview
projectName {PROJECT-NAME} Projenizin adı. Bu değer büyük/küçük harfe duyarlıdır. myProject
projectKind CustomEntityRecognition Proje türünüz. CustomEntityRecognition
language {LANGUAGE-CODE} Projenizde kullanılan belgelerin dil kodunu belirten bir dize. Projeniz çok dilli bir projeyse, belgelerin çoğunun dil kodunu seçin. en-us
multilingual true Veri kümenizde birden çok dilde belge olmasını sağlayan boole değeridir ve modeliniz dağıtıldığında modeli desteklenen herhangi bir dilde sorgulayabilirsiniz (eğitim belgelerinize dahil olması gerekmez). Çok dilli destek hakkında bilgi için bkz. dil desteği. true
storageInputContainerName {CONTAINER-NAME} Belgelerinizi yüklediğiniz Azure depolama kapsayıcınızın adı. myContainer
entities Projede sahip olduğunuz tüm varlık türlerini içeren dizi. Bunlar, belgelerinizden içine ayıklanacak varlık türleridir.
documents Projenizdeki tüm belgeleri ve her belge içinde etiketlenmiş varlıkların listesini içeren dizi. []
location {DOCUMENT-NAME} Depolama kapsayıcısında belgelerin konumu. Tüm belgeler kapsayıcının kökünde olduğundan, belge adı bu olmalıdır. doc1.txt
dataset {DATASET} Eğitimden önce bölündüğünde bu dosyanın gideceği test kümesi. Verilerinizin nasıl bölündüğü hakkında daha fazla bilgi için bkz . Modeli eğitma. Bu alanın olası değerleri ve TestşeklindedirTrain. Train

API isteğinizi gönderdikten sonra, işin doğru şekilde gönderildiğini belirten bir 202 yanıt alırsınız. Yanıt üst bilgilerinde değeri ayıklayın operation-location . Şu şekilde biçimlendirilir:

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/import/jobs/{JOB-ID}?api-version={API-VERSION}

{JOB-ID} bu işlem zaman uyumsuz olduğundan isteğinizi tanımlamak için kullanılır. İçeri aktarma işi durumunu almak için bu URL'yi kullanacaksınız.

Bu istek için olası hata senaryoları:

  • Seçilen kaynağın depolama hesabı için uygun izinleri yok.
  • Belirtilen storageInputContainerName yok.
  • Geçersiz dil kodu kullanılır veya dil kodu türü dize değilse.
  • multilingual değeri boole değil bir dizedir.

İçeri aktarma işi durumunu alma

Projenizi içeri aktarmanızın durumunu almak için aşağıdaki GET isteğini kullanın. Aşağıdaki yer tutucu değerlerini kendi değerlerinizle değiştirin.

İstek URL'si

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/import/jobs/{JOB-ID}?api-version={API-VERSION}
Yer tutucu Değer Örnek
{ENDPOINT} API isteğinizin kimliğini doğrulamak için uç nokta. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Projenizin adı. Bu değer büyük/küçük harfe duyarlıdır. myProject
{JOB-ID} Modelinizin eğitim durumunu bulma kimliği. Bu değer, önceki adımda aldığınız üst bilgi değerindedir location . xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} Çağırdığınız API'nin sürümü. Burada başvuruda bulunılan değer, yayınlanan en son sürüme yöneliktir. Diğer kullanılabilir API sürümleri hakkında daha fazla bilgi edinmek için bkz . Model yaşam döngüsü . 2022-05-01

Üst Bilgiler

İsteğinizin kimliğini doğrulamak için aşağıdaki üst bilgiyi kullanın.

Anahtar Değer
Ocp-Apim-Subscription-Key Kaynağınızın anahtarı. API isteklerinizin kimliğini doğrulamak için kullanılır.

Modelinizi eğitme

Genellikle bir proje oluşturduktan sonra devam eder ve projenize bağlı kapsayıcıda bulunan belgeleri etiketlemeye başlarsınız. Bu hızlı başlangıçta, örnek etiketli bir veri kümesini içeri aktarmış ve örnek JSON etiketleri dosyasıyla projenizi başlatmışsınızdır.

Eğitim işini başlatma

Projeniz içeri aktarıldıktan sonra modelinizi eğitmeye başlayabilirsiniz.

Bir eğitim işi göndermek için aşağıdaki URL'yi, üst bilgileri ve JSON gövdesini kullanarak bir POST isteği gönderin. Aşağıdaki yer tutucu değerlerini kendi değerlerinizle değiştirin.

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/:train?api-version={API-VERSION}
Yer tutucu Değer Örnek
{ENDPOINT} API isteğinizin kimliğini doğrulamak için uç nokta. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Projenizin adı. Bu değer büyük/küçük harfe duyarlıdır. myProject
{API-VERSION} Çağırdığınız API'nin sürümü. Burada başvuruda bulunılan değer, yayınlanan en son sürüme yöneliktir. Diğer kullanılabilir API sürümleri hakkında daha fazla bilgi edinmek için bkz . Model yaşam döngüsü . 2022-05-01

Üst Bilgiler

İsteğinizin kimliğini doğrulamak için aşağıdaki üst bilgiyi kullanın.

Anahtar Değer
Ocp-Apim-Subscription-Key Kaynağınızın anahtarı. API isteklerinizin kimliğini doğrulamak için kullanılır.

Request body

İstek gövdesinde aşağıdaki JSON'yi kullanın. Eğitim tamamlandıktan sonra modele {MODEL-NAME} verilir. Yalnızca başarılı eğitim işleri model üretir.

{
	"modelLabel": "{MODEL-NAME}",
	"trainingConfigVersion": "{CONFIG-VERSION}",
	"evaluationOptions": {
		"kind": "percentage",
		"trainingSplitPercentage": 80,
		"testingSplitPercentage": 20
	}
}
Tuş Yer tutucu Değer Örnek
modelLabel {MODEL-NAME} Başarıyla eğitildikten sonra modelinize atanacak model adı. myModel
trainingConfigVersion {CONFIG-VERSION} Bu, modeli eğitmek için kullanılacak model sürümüdür . 2022-05-01
evaluationOptions Verilerinizi eğitim ve test kümelerine bölme seçeneği. {}
tür percentage Bölünmüş yöntemler. Olası değerler: percentage veya manual. Daha fazla bilgi için bkz . Modeli eğitma. percentage
trainingSplitPercentage 80 Eğitim kümesine eklenecek etiketli verilerinizin yüzdesi. Önerilen değer: 80. 80
testingSplitPercentage 20 Test kümesine eklenecek etiketli verilerinizin yüzdesi. Önerilen değer: 20. 20

Dekont

trainingSplitPercentage ve testingSplitPercentage yalnızca olarak ayarlandıysa Kindpercentage gereklidir ve her iki yüzdenin toplamı 100'e eşit olmalıdır.

API isteğinizi gönderdikten sonra, işin doğru şekilde gönderildiğini belirten bir 202 yanıt alırsınız. Yanıt üst bilgilerinde değeri ayıklayın location . Şu şekilde biçimlendirilir:

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}

{JOB-ID} bu işlem zaman uyumsuz olduğundan isteğinizi tanımlamak için kullanılır. Eğitim durumunu almak için bu URL'yi kullanabilirsiniz.

Eğitim işi durumunu alma

Bu örnek veri kümesi için eğitim 10 ile 30 dakika arasında sürebilir. Başarıyla tamamlanana kadar eğitim işinin durumunu yoklamayı sürdürmek için aşağıdaki isteği kullanabilirsiniz.

Modelinizin eğitim ilerleme durumunu almak için aşağıdaki GET isteğini kullanın. Aşağıdaki yer tutucu değerlerini kendi değerlerinizle değiştirin.

İstek URL'si

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}
Yer tutucu Değer Örnek
{ENDPOINT} API isteğinizin kimliğini doğrulamak için uç nokta. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Projenizin adı. Bu değer büyük/küçük harfe duyarlıdır. myProject
{JOB-ID} Modelinizin eğitim durumunu bulma kimliği. Bu değer, önceki adımda aldığınız üst bilgi değerindedir location . xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} Çağırdığınız API'nin sürümü. Burada başvuruda bulunılan değer, yayınlanan en son sürüme yöneliktir. Diğer kullanılabilir API sürümleri hakkında daha fazla bilgi edinmek için bkz . Model yaşam döngüsü . 2022-05-01

Üst Bilgiler

İsteğinizin kimliğini doğrulamak için aşağıdaki üst bilgiyi kullanın.

Anahtar Değer
Ocp-Apim-Subscription-Key Kaynağınızın anahtarı. API isteklerinizin kimliğini doğrulamak için kullanılır.

Yanıt Gövdesi

İsteği gönderdikten sonra aşağıdaki yanıtı alırsınız.

{
  "result": {
    "modelLabel": "{MODEL-NAME}",
    "trainingConfigVersion": "{CONFIG-VERSION}",
    "estimatedEndDateTime": "2022-04-18T15:47:58.8190649Z",
    "trainingStatus": {
      "percentComplete": 3,
      "startDateTime": "2022-04-18T15:45:06.8190649Z",
      "status": "running"
    },
    "evaluationStatus": {
      "percentComplete": 0,
      "status": "notStarted"
    }
  },
  "jobId": "{JOB-ID}",
  "createdDateTime": "2022-04-18T15:44:44Z",
  "lastUpdatedDateTime": "2022-04-18T15:45:48Z",
  "expirationDateTime": "2022-04-25T15:44:44Z",
  "status": "running"
}

Modelinizi dağıtma

Bir modeli eğitdikten sonra genellikle modelin değerlendirme ayrıntılarını gözden geçirir ve gerekirse iyileştirmeler yaparsınız. Bu hızlı başlangıçta modelinizi dağıtacak ve Language Studio'da denemeniz için kullanılabilir hale getirecek veya tahmin API'sini çağırabilirsiniz.

Dağıtım işini başlatma

Bir dağıtım işi göndermek için aşağıdaki URL' yi, üst bilgileri ve JSON gövdesini kullanarak bir PUT isteği gönderin. Aşağıdaki yer tutucu değerlerini kendi değerlerinizle değiştirin.

{Endpoint}/language/authoring/analyze-text/projects/{projectName}/deployments/{deploymentName}?api-version={API-VERSION}
Yer tutucu Değer Örnek
{ENDPOINT} API isteğinizin kimliğini doğrulamak için uç nokta. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Projenizin adı. Bu değer büyük/küçük harfe duyarlıdır. myProject
{DEPLOYMENT-NAME} Dağıtımınızın adı. Bu değer büyük/küçük harfe duyarlıdır. staging
{API-VERSION} Çağırdığınız API'nin sürümü. Burada başvuruda bulunılan değer, yayınlanan en son sürüme yöneliktir. Diğer kullanılabilir API sürümleri hakkında daha fazla bilgi edinmek için bkz . Model yaşam döngüsü . 2022-05-01

Üst Bilgiler

İsteğinizin kimliğini doğrulamak için aşağıdaki üst bilgiyi kullanın.

Anahtar Değer
Ocp-Apim-Subscription-Key Kaynağınızın anahtarı. API isteklerinizin kimliğini doğrulamak için kullanılır.

Request body

İsteğinizin gövdesinde aşağıdaki JSON'yi kullanın. Dağıtıma atamak için modelin adını kullanın.

{
  "trainedModelLabel": "{MODEL-NAME}"
}
Tuş Yer tutucu Değer Örnek
trainedModelLabel {MODEL-NAME} Dağıtımınıza atanacak model adı. Yalnızca başarıyla eğitilmiş modeller atayabilirsiniz. Bu değer büyük/küçük harfe duyarlıdır. myModel

API isteğinizi gönderdikten sonra, işin doğru şekilde gönderildiğini belirten bir 202 yanıt alırsınız. Yanıt üst bilgilerinde değeri ayıklayın operation-location . Şu şekilde biçimlendirilir:

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}

{JOB-ID} bu işlem zaman uyumsuz olduğundan isteğinizi tanımlamak için kullanılır. Dağıtım durumunu almak için bu URL'yi kullanabilirsiniz.

Dağıtım işi durumunu alma

Dağıtım işinin durumunu sorgulamak için aşağıdaki GET isteğini kullanın. Önceki adımda aldığınız URL'yi kullanabilir veya aşağıdaki yer tutucu değerleri kendi değerlerinizle değiştirebilirsiniz.

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
Yer tutucu Değer Örnek
{ENDPOINT} API isteğinizin kimliğini doğrulamak için uç nokta. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Projenizin adı. Bu değer büyük/küçük harfe duyarlıdır. myProject
{DEPLOYMENT-NAME} Dağıtımınızın adı. Bu değer büyük/küçük harfe duyarlıdır. staging
{JOB-ID} Modelinizin eğitim durumunu bulma kimliği. Bu, önceki adımda aldığınız üst bilgi değerindedir location . xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} Çağırdığınız API'nin sürümü. Burada başvuruda bulunılan değer, yayınlanan en son sürüme yöneliktir. Diğer kullanılabilir API sürümleri hakkında daha fazla bilgi edinmek için bkz . Model yaşam döngüsü . 2022-05-01

Üst Bilgiler

İsteğinizin kimliğini doğrulamak için aşağıdaki üst bilgiyi kullanın.

Anahtar Değer
Ocp-Apim-Subscription-Key Kaynağınızın anahtarı. API isteklerinizin kimliğini doğrulamak için kullanılır.

Yanıt Gövdesi

İsteği gönderdikten sonra aşağıdaki yanıtı alırsınız. Durum parametresi "başarılı" olarak değişene kadar bu uç noktayı yoklamayı sürdürebilirsiniz. İsteğin başarısını belirten bir 200 kod almalısınız.

{
    "jobId":"{JOB-ID}",
    "createdDateTime":"{CREATED-TIME}",
    "lastUpdatedDateTime":"{UPDATED-TIME}",
    "expirationDateTime":"{EXPIRATION-TIME}",
    "status":"running"
}

Özel varlıkları ayıklama

Modeliniz dağıtıldıktan sonra tahmin API'sini kullanarak metninizdeki varlıkları ayıklamak için modeli kullanmaya başlayabilirsiniz. Daha önce indirdiğiniz örnek veri kümesinde bu adımda kullanabileceğiniz bazı test belgelerini bulabilirsiniz.

Özel bir NER görevi gönderme

Metin sınıflandırma görevi başlatmak için bu POST isteğini kullanın.

{ENDPOINT}/language/analyze-text/jobs?api-version={API-VERSION}
Yer tutucu Değer Örnek
{ENDPOINT} API isteğinizin kimliğini doğrulamak için uç nokta. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API-VERSION} Çağırdığınız API'nin sürümü. Burada başvuruda bulunılan değer, yayınlanan en son sürüme yöneliktir. Diğer kullanılabilir API sürümleri hakkında daha fazla bilgi edinmek için bkz . Model yaşam döngüsü . 2022-05-01

Üst Bilgiler

Anahtar Değer
Ocp-Apim-Subscription-Key Bu API'ye erişim sağlayan anahtarınız.

Gövde

{
  "displayName": "Extracting entities",
  "analysisInput": {
    "documents": [
      {
        "id": "1",
        "language": "{LANGUAGE-CODE}",
        "text": "Text1"
      },
      {
        "id": "2",
        "language": "{LANGUAGE-CODE}",
        "text": "Text2"
      }
    ]
  },
  "tasks": [
     {
      "kind": "CustomEntityRecognition",
      "taskName": "Entity Recognition",
      "parameters": {
        "projectName": "{PROJECT-NAME}",
        "deploymentName": "{DEPLOYMENT-NAME}"
      }
    }
  ]
}
Tuş Yer tutucu Değer Örnek
displayName {JOB-NAME} İş adınız. MyJobName
documents [{},{}] Görevlerin çalıştırılacak belgelerin listesi. [{},{}]
id {DOC-ID} Belge adı veya kimliği. doc1
language {LANGUAGE-CODE} Belgenin dil kodunu belirten bir dize. Bu anahtar belirtilmezse, hizmet proje oluşturma sırasında seçilen projenin varsayılan dilini kabul eder. Desteklenen dil kodlarının listesi için bkz . dil desteği . en-us
text {DOC-TEXT} Görevlerin çalıştırılacak belge görevi. Lorem ipsum dolor sit amet
tasks Gerçekleştirmek istediğimiz görevlerin listesi. []
taskName CustomEntityRecognition Görev adı CustomEntityRecognition
parameters Göreve geçirecek parametrelerin listesi.
project-name {PROJECT-NAME} Projenizin adı. Bu değer büyük/küçük harfe duyarlıdır. myProject
deployment-name {DEPLOYMENT-NAME} Dağıtımınızın adı. Bu değer büyük/küçük harfe duyarlıdır. prod

Response

Görevinizin başarıyla gönderildiğini belirten bir 202 yanıtı alırsınız. Yanıt üst bilgilerinde ayıklayın operation-location. operation-location şu şekilde biçimlendirilir:

{ENDPOINT}/language/analyze-text/jobs/{JOB-ID}?api-version={API-VERSION}

Görev tamamlanma durumunu sorgulamak ve görev tamamlandığında sonuçları almak için bu URL'yi kullanabilirsiniz.

Görev sonuçlarını alma

Özel varlık tanıma görevinin durumunu/sonuçlarını sorgulamak için aşağıdaki GET isteğini kullanın.

{ENDPOINT}/language/analyze-text/jobs/{JOB-ID}?api-version={API-VERSION}
Yer tutucu Değer Örnek
{ENDPOINT} API isteğinizin kimliğini doğrulamak için uç nokta. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API-VERSION} Çağırdığınız API'nin sürümü. Burada başvuruda bulunılan değer, yayınlanan en son sürüme yöneliktir. Diğer kullanılabilir API sürümleri hakkında daha fazla bilgi edinmek için bkz . Model yaşam döngüsü . 2022-05-01

Üst Bilgiler

Anahtar Değer
Ocp-Apim-Subscription-Key Bu API'ye erişim sağlayan anahtarınız.

Yanıt Gövdesi

Yanıt, aşağıdaki parametrelere sahip bir JSON belgesi olacaktır

{
  "createdDateTime": "2021-05-19T14:32:25.578Z",
  "displayName": "MyJobName",
  "expirationDateTime": "2021-05-19T14:32:25.578Z",
  "jobId": "xxxx-xxxx-xxxxx-xxxxx",
  "lastUpdateDateTime": "2021-05-19T14:32:25.578Z",
  "status": "succeeded",
  "tasks": {
    "completed": 1,
    "failed": 0,
    "inProgress": 0,
    "total": 1,
    "items": [
      {
        "kind": "EntityRecognitionLROResults",
        "taskName": "Recognize Entities",
        "lastUpdateDateTime": "2020-10-01T15:01:03Z",
        "status": "succeeded",
        "results": {
          "documents": [
            {
              "entities": [
                {
                  "category": "Event",
                  "confidenceScore": 0.61,
                  "length": 4,
                  "offset": 18,
                  "text": "trip"
                },
                {
                  "category": "Location",
                  "confidenceScore": 0.82,
                  "length": 7,
                  "offset": 26,
                  "subcategory": "GPE",
                  "text": "Seattle"
                },
                {
                  "category": "DateTime",
                  "confidenceScore": 0.8,
                  "length": 9,
                  "offset": 34,
                  "subcategory": "DateRange",
                  "text": "last week"
                }
              ],
              "id": "1",
              "warnings": []
            }
          ],
          "errors": [],
          "modelVersion": "2020-04-01"
        }
      }
    ]
  }
}

Kaynakları temizleme

Projenize artık ihtiyacınız kalmadığında, aşağıdaki DELETE isteğiyle silebilirsiniz. Yer tutucu değerlerini kendi değerlerinizle değiştirin.

{Endpoint}/language/authoring/analyze-text/projects/{projectName}?api-version={API-VERSION}
Yer tutucu Değer Örnek
{ENDPOINT} API isteğinizin kimliğini doğrulamak için uç nokta. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Projenizin adı. Bu değer büyük/küçük harfe duyarlıdır. myProject
{API-VERSION} Çağırdığınız API'nin sürümü. Burada başvuruda bulunılan değer, yayınlanan en son sürüme yöneliktir. Diğer kullanılabilir API sürümleri hakkında daha fazla bilgi edinmek için bkz . Model yaşam döngüsü . 2022-05-01

Üst Bilgiler

İsteğinizin kimliğini doğrulamak için aşağıdaki üst bilgiyi kullanın.

Anahtar Değer
Ocp-Apim-Subscription-Key Kaynağınızın anahtarı. API isteklerinizin kimliğini doğrulamak için kullanılır.

API isteğinizi gönderdikten sonra başarılı olduğunu belirten bir 202 yanıt alırsınız ve bu da projenizin silindiği anlamına gelir. Başarılı bir çağrı, işin durumunu denetlemek için kullanılan operation-location üst bilgisi ile sonuçlanır.

Sonraki adımlar

Varlık ayıklama modelini oluşturduktan sonra şunları yapabilirsiniz:

Kendi özel NER projelerinizi oluşturmaya başladığınızda, modelinizi etiketleme, eğitme ve kullanma hakkında daha ayrıntılı bilgi edinmek için nasıl yapılır makalelerini kullanın: