Použití rozhraní API vlastních kategorií (Standard) (Preview)

Rozhraní API vlastních kategorií (standard) umožňuje vytvořit vlastní kategorie obsahu pro váš případ použití a vytrénovat zabezpečení obsahu Azure AI tak, aby je detekoval v novém obsahu.

Důležité

Tato funkce je dostupná jenom v určitých oblastech Azure. Viz Dostupnost oblastí.

Upozornění

Ukázková data v této příručce můžou obsahovat urážlivý obsah. Doporučuje se, aby uživatel rozhodoval.

Požadavky

  • Předplatné Azure – Vytvoření předplatného zdarma
  • Jakmile budete mít předplatné Azure, vytvořte na webu Azure Portal prostředek zabezpečení obsahu, abyste získali svůj klíč a koncový bod. Zadejte jedinečný název vašeho prostředku, vyberte předplatné a vyberte skupinu prostředků, podporovanou oblast a podporovanou cenovou úroveň. Pak vyberte Vytvořit.
    • Nasazení prostředku trvá několik minut. Po dokončení vyberte přejít k prostředku. V levém podokně v části Správa prostředků vyberte Klíč předplatného a koncový bod. Zkopírujte koncový bod a jednu z hodnot klíčů do dočasného umístění pro pozdější použití.
  • Vytvořte také kontejner úložiště objektů blob v Azure, kde zachováte trénovací soubor poznámek.
  • Nainstalujte jednu z následujících instalací:

Příprava trénovacích dat

Pokud chcete vytrénovat vlastní kategorii, potřebujete ukázková textová data představující kategorii, kterou chcete zjistit. Při přípravě ukázkových dat postupujte takto:

  1. Shromážděte nebo zapište ukázková data:

    • Kvalita ukázkových dat je důležitá pro trénování efektivního modelu. Snažte se shromáždit alespoň 50 pozitivních vzorků, které přesně představují obsah, který chcete identifikovat. Tyto ukázky by měly být jasné, různé a přímo související s definicí kategorie.
    • Negativní vzorky nejsou povinné, ale můžou zlepšit schopnost modelu odlišit relevantní obsah od irelevantního obsahu. Pokud chcete zvýšit výkon, zaměřte se na 50 vzorků, které nesouvisejí s definicí pozitivního případu. Ty by se měly lišit, ale stále v kontextu obsahu, se kterým se váš model setká. Pečlivě vyberte záporné vzorky, abyste zajistili, že se neúmyslně nepřekrývají s pozitivní kategorií.
    • Snažte se o rovnováhu mezi počtem kladných a záporných vzorků. Nerovnoměrná datová sada může model předsunout, což způsobí, že upřednostní jeden typ klasifikace oproti jinému, což může vést k vyšší míře falešně pozitivních nebo negativních výsledků.
  2. K formátování dat v souboru .jsonl použijte textový editor. Níže je uveden příklad odpovídajícího formátu. Příklady kategorií by měly být nastaveny isPositive na truehodnotu . Negativní příklady jsou volitelné, ale můžou zlepšit výkon:

    {"text": "This is the 1st sample.", "isPositive": true}
    {"text": "This is the 2nd sample.", "isPositive": true}
    {"text": "This is the 3rd sample (negative).", "isPositive": false}
    
  3. Nahrajte soubor .jsonl do kontejneru objektů blob účtu Azure Storage. Zkopírujte adresu URL objektu blob do dočasného umístění pro pozdější použití.

Udělení přístupu k úložišti

V dalším kroku potřebujete udělit vašemu prostředku zabezpečení obsahu přístup ke čtení z prostředku služby Azure Storage. Povolte spravovanou identitu přiřazenou systémem pro instanci Azure AI Content Safety a přiřaďte k identitě roli Přispěvatel dat objektů blob služby Storage nebo Vlastník :

Důležité

Pokračujte pouze přispěvatelem dat v objektech blob služby Storage nebo vlastníkem dat objektů blob služby Storage.

  1. Povolte spravovanou identitu pro instanci Zabezpečení obsahu Azure AI.

    Snímek obrazovky webu Azure Portal s povolením spravované identity

  2. Přiřaďte spravované identitě roli Přispěvatel dat objektů blob služby Storage nebo Vlastník . Všechny níže zvýrazněné role by měly fungovat.

    Snímek obrazovky Přidat přiřazení role na webu Azure Portal

    Snímek obrazovky s přiřazenými rolemi na webu Azure Portal

    Snímek obrazovky s rolí spravované identity

Vytvoření a trénování vlastní kategorie

Důležité

Povolit dostatek času pro trénování modelu

Kompletní provádění vlastního trénování kategorií může trvat přibližně pět hodin až deset hodin. Podle toho naplánujte kanál moderování a přidělte čas pro:

  • Shromažďování a příprava ukázkových dat
  • Proces trénování
  • Vyhodnocení a úpravy modelu

V následujícíchpříkazch <your_api_key><your_endpoint> Pak zadejte každý příkaz v okně terminálu a spusťte ho.

Vytvoření nové verze kategorie

curl -X PUT "<your_endpoint>/contentsafety/text/categories/<your_category_name>?api-version=2024-02-15-preview" \
     -H "Ocp-Apim-Subscription-Key: <your_api_key>" \
     -H "Content-Type: application/json" \
     -d "{
        \"categoryName\": \"<your_category_name>\",
        \"definition\": \"<your_category_definition>\",
        \"sampleBlobUrl\": \"https://example.blob.core.windows.net/example-container/sample.jsonl\"
     }"

Spusťte proces sestavení kategorie:

Po přijetí odpovědi uložte ID operace (označované jako id) do dočasného. Toto ID potřebujete k načtení stavu sestavení pomocí rozhraní API pro získání stavu .

curl -X POST "<your_endpoint>/contentsafety/text/categories/<your_category_name>:build?api-version=2024-02-15-preview&version={version}" \
     -H "Ocp-Apim-Subscription-Key: <your_api_key>" \
     -H "Content-Type: application/json"

Získejte stav sestavení kategorie:

Pokud chcete načíst stav, použijte id získané z předchozí odpovědi rozhraní API a umístěte ho do cesty níže uvedeného rozhraní API.

curl -X GET "<your_endpoint>/contentsafety/text/categories/operations/<id>?api-version=2024-02-15-preview" \
     -H "Ocp-Apim-Subscription-Key: <your_api_key>" \
     -H "Content-Type: application/json"

Analýza textu s přizpůsobenou kategorií

Spuštěním následujícího příkazu analyzujte text s přizpůsobenou kategorií. Nahraďte <your_category_name> vlastní hodnotou:

curl -X POST "<your_endpoint>/contentsafety/text:analyzeCustomCategory?api-version=2024-02-15-preview" \
     -H "Ocp-Apim-Subscription-Key: <your_api_key>" \
     -H "Content-Type: application/json" \
     -d "{
        \"text\": \"Example text to analyze\",
        \"categoryName\": \"<your_category_name>\", 
        \"version\": 1
        }"

Další operace s vlastními kategoriemi

Nezapomeňte nahradit níže uvedené zástupné symboly skutečnými hodnotami klíče rozhraní API, koncového bodu a konkrétního obsahu (název kategorie, definice atd.). Tyto příklady vám pomůžou spravovat přizpůsobené kategorie ve vašem účtu.

Získání přizpůsobené kategorie nebo konkrétní verze

Zástupné symboly nahraďte vlastními hodnotami a v okně terminálu spusťte následující příkaz:

curl -X GET "<endpoint>/contentsafety/text/categories/<your_category_name>?api-version=2024-02-15-preview&version=1" \
     -H "Ocp-Apim-Subscription-Key: <your_api_key>" \
     -H "Content-Type: application/json"

Seznam kategorií jejich nejnovějších verzí

Zástupné symboly nahraďte vlastními hodnotami a v okně terminálu spusťte následující příkaz:

curl -X GET "<endpoint>/contentsafety/text/categories?api-version=2024-02-15-preview" \
     -H "Ocp-Apim-Subscription-Key: <your_api_key>" \
     -H "Content-Type: application/json"

Odstranění přizpůsobené kategorie nebo konkrétní verze

Zástupné symboly nahraďte vlastními hodnotami a v okně terminálu spusťte následující příkaz:

curl -X DELETE "<endpoint>/contentsafety/text/categories/<your_category_name>?api-version=2024-02-15-preview&version=1" \
     -H "Ocp-Apim-Subscription-Key: <your_api_key>" \
     -H "Content-Type: application/json"