Sdílet prostřednictvím


Rychlý start: Použití obrázků v chatech AI

Začínáme používat GPT-4 Turbo s obrázky se službou Azure OpenAI.

Poznámka:

Volba modelu

Nejnovější modely podporující vizi jsou gpt-4o a gpt-4o mini. Tyto modely jsou ve verzi Public Preview. Nejnovější dostupný model GA je gpt-4 verze turbo-2024-04-09.

Důležité

Při používání modelů dokončování chatu s vizuálními funkcemi se můžou účtovat další poplatky za využití.

Tento článek vám pomůže začít používat Azure AI Foundry k nasazení a otestování modelu dokončování chatu s porozuměním imagí.

Požadavky

Příprava médií

K dokončení tohoto rychlého startu potřebujete obrázek. Tento ukázkový obrázek nebo jakýkoli jiný obrázek, který máte k dispozici, můžete použít.

Fotka nehody auta, která se dá použít k dokončení rychlého startu

Přechod na Azure AI Foundry

  1. Přejděte do Azure AI Foundry a přihlaste se pomocí přihlašovacích údajů přidružených k vašemu prostředku Azure OpenAI. Během nebo po přihlášení vyberte příslušný adresář, předplatné Azure a prostředek Azure OpenAI.
  2. Vyberte centrum, ve které chcete pracovat.
  3. V levé navigační nabídce vyberte Modely a koncové body a vyberte + Nasadit model.
  4. Výběrem názvu modelu gpt-4o nebo gpt-4o-mini vyberte nasazení podporující image. V zobrazeném okně vyberte název a typ nasazení. Ujistěte se, že je prostředek Azure OpenAI připojený. Další informace o nasazení modelu najdete v tématu Průvodce nasazením prostředku.
  5. Vyberte Nasadit.
  6. Dále vyberte nový model a vyberte Otevřít v dětském hřišti. V chatovacím hřišti by mělo být v rozevíracím seznamu Nasazení vybrané nasazení .

Hřiště

V této chatové relaci dáváte asistentovi pokyn, aby vám pomohl porozumět obrázkům, které zadáte.

Obecná pomoc s nastavením pomocníka, relacemi chatu, nastavením a panely najdete v rychlém startu chatu.

Zahájení chatovací relace pro analýzu obrázků

V této chatové relaci dáváte asistentovi pokyn, aby porozuměl obrázkům, které zadáte.

  1. Začněte tím, že v rozevíracím seznamu Nasazení vyberete nasazení podporující image.

  2. V kontextovém textovém poli na panelu Nastavení zadejte tuto výzvu, která provede asistenta: "You're an AI assistant that helps people find information." Nebo můžete přizpůsobit výzvu k vašemu obrázku nebo scénáři.

    Poznámka:

    Doporučujeme aktualizovat systémovou zprávu tak, aby byla specifická pro úlohu, aby se zabránilo neužitečné odpovědi z modelu.

  3. Výběrem možnosti Použít změny uložte provedené změny.

  4. V podokně relace chatu vyberte tlačítko přílohy a pak nahrajte obrázek. Zvolte svůj obrázek.

  5. Do pole chatu přidejte následující výzvu: Describe this imagea pak ji odešlete výběrem ikony pro odeslání.

  6. Ikona odeslání je nahrazena tlačítkem zastavit. Pokud ho vyberete, pomocník vaši žádost přestane zpracovávat. V tomto rychlém startu nechte asistenta dokončit odpověď.

  7. Asistent odpoví popisem obrázku.

  8. Položte následnou otázku související s analýzou vašeho obrázku. Mohl bys vstoupit, "What should I highlight about this image to my insurance company?".

  9. Měla by se zobrazit relevantní odpověď podobná této:

    When reporting the incident to your insurance company, you should highlight the following key points from the image:  
    
    1. **Location of Damage**: Clearly state that the front end of the car, particularly the driver's side, is damaged. Mention the crumpled hood, broken front bumper, and the damaged left headlight.  
    
    2. **Point of Impact**: Indicate that the car has collided with a guardrail, which may suggest that no other vehicles were involved in the accident.  
    
    3. **Condition of the Car**: Note that the damage seems to be concentrated on the front end, and there is no visible damage to the windshield or rear of the car from this perspective.  
    
    4. **License Plate Visibility**: Mention that the license plate is intact and can be used for identification purposes.  
    
    5. **Environment**: Report that the accident occurred near a roadside with a guardrail, possibly in a rural or semi-rural area, which might help in establishing the accident location and context.  
    
    6. **Other Observations**: If there were any other circumstances or details not visible in the image that may have contributed to the accident, such as weather conditions, road conditions, or any other relevant information, be sure to include those as well.  
    
    Remember to be factual and descriptive, avoiding speculation about the cause of the accident, as the insurance company will conduct its own investigation.
    

Zobrazení a export kódu

V libovolném okamžiku chatové relace můžete povolit přepínač Zobrazit nezpracovaný JSON v horní části okna chatu a zobrazit konverzaci formátovanou ve formátu JSON. Tady je, jak vypadá na začátku chatové relace rychlého startu:

[
	{
		"role": "system",
		"content": [
			"You are an AI assistant that helps people find information."
		]
	},
]

Vyčištění prostředků

Pokud chcete vyčistit a odebrat prostředek Azure OpenAI, můžete odstranit prostředek nebo skupinu prostředků. Odstraněním skupiny prostředků se odstraní také všechny ostatní prostředky, které jsou k ní přidružené.

V tomto článku můžete začít používat rozhraní REST API Azure OpenAI k nasazení a použití modelu GPT-4 Turbo s vision.

Požadavky

  • Předplatné Azure. Vytvořte si ho zdarma.
  • Python 3.8 nebo novější verze
  • Následující knihovny Pythonu: requests, json.
  • Prostředek služby Azure OpenAI s nasazeným modelem GPT-4 Turbo s vision. Dostupnost modelů GPT-4 a GPT-4 Turbo Preview najdete v dostupných oblastech. Další informace o vytváření prostředků najdete v průvodci nasazením prostředků.

Poznámka:

V současné době není podporováno vypnutí filtrování obsahu pro model GPT-4 Turbo s obrazem.

Načtení klíče a koncového bodu

K úspěšnému volání rozhraní API Azure OpenAI potřebujete následující informace o prostředku Azure OpenAI:

Proměnná Jméno Hodnota
Endpoint api_base Hodnota koncového bodu se nachází v části Klíče a koncový bod vašeho prostředku na webu Azure Portal. Koncový bod najdete také na stránce Nasazení na portálu Azure AI Foundry. Ukázkový koncový bod je: https://docs-test-001.openai.azure.com/.
Klíč api_key Hodnota klíče se nachází také v části Klíče a koncový bod vašeho prostředku na webu Azure Portal. Azure vygeneruje dva klíče pro váš prostředek. Můžete použít kteroukoli hodnotu.

Na webu Azure Portal přejděte ke svému prostředku. V navigačním podokně vyberte v části Správa prostředků klíče a koncový bod. Zkopírujte hodnotu koncového bodu a hodnotu přístupového klíče. Můžete použít hodnotu KLÍČ 1 nebo KLÍČ 2 . Díky dvěma klíčům můžete bezpečně otáčet a znovu vygenerovat klíče, aniž by to způsobilo přerušení služeb.

Snímek obrazovky znázorňující stránku Klíče a koncový bod pro prostředek Azure OpenAI na webu Azure Portal

Vytvoření nové aplikace v Pythonu

Vytvořte nový soubor Pythonu s názvem quickstart.py. V preferovaném editoru nebo integrovaném vývojovém prostředí (IDE) otevřete nový soubor.

  1. Obsah quickstart.py nahraďte následujícím kódem.

    # Packages required:
    import requests 
    import json 
    
    api_base = '<your_azure_openai_endpoint>' 
    deployment_name = '<your_deployment_name>'
    API_KEY = '<your_azure_openai_key>'
    
    base_url = f"{api_base}openai/deployments/{deployment_name}" 
    headers = {   
        "Content-Type": "application/json",   
        "api-key": API_KEY 
    } 
    
    # Prepare endpoint, headers, and request body 
    endpoint = f"{base_url}/chat/completions?api-version=2023-12-01-preview" 
    data = { 
        "messages": [ 
            { "role": "system", "content": "You are a helpful assistant." }, 
            { "role": "user", "content": [  
                { 
                    "type": "text", 
                    "text": "Describe this picture:" 
                },
                { 
                    "type": "image_url",
                    "image_url": {
                        "url": "<image URL>"
                    }
                }
            ] } 
        ], 
        "max_tokens": 2000 
    }   
    
    # Make the API call   
    response = requests.post(endpoint, headers=headers, data=json.dumps(data))   
    
    print(f"Status Code: {response.status_code}")   
    print(response.text)
    
  2. Proveďte následující změny:

    1. Do příslušných polí zadejte adresu URL a klíč koncového bodu.
    2. Do příslušného pole zadejte název nasazení GPT-4 Turbo s názvem nasazení Vision.
    3. Změňte hodnotu "image" pole na adresu URL obrázku.

      Tip

      Místo adresy URL můžete použít také základní data obrázků s kódováním 64. Další informace najdete v průvodci postupy GPT-4 Turbo s obrazem.

  3. Spusťte aplikaci pomocí python příkazu:

    python quickstart.py
    

Vyčištění prostředků

Pokud chcete vyčistit a odebrat prostředek Azure OpenAI, můžete odstranit prostředek nebo skupinu prostředků. Odstraněním skupiny prostředků se odstraní také všechny ostatní prostředky, které jsou k ní přidružené.

V tomto článku můžete začít používat sadu Azure OpenAI Python SDK k nasazení a použití modelu GPT-4 Turbo s obrazem.

Balíček zdrojového kódu | knihovny (PyPi) |

Požadavky

Nastavení

Nainstalujte klientskou knihovnu OpenAI Pythonu pomocí:

pip install openai

Poznámka:

Tuto knihovnu udržuje OpenAI. Informace o nejnovějších aktualizacích knihovny najdete v historii verzí.

Načtení klíče a koncového bodu

K úspěšnému volání azure OpenAI potřebujete koncový bod a klíč.

Název proměnné Hodnota
ENDPOINT Koncový bod služby najdete v části Klíče a koncový bod při zkoumání vašeho prostředku na webu Azure Portal. Koncový bod najdete také na stránce Nasazení na portálu Azure AI Foundry. Ukázkový koncový bod je: https://docs-test-001.openai.azure.com/.
API-KEY Tuto hodnotu najdete v části Klíče a koncový bod při zkoumání prostředku na webu Azure Portal. Použít můžete předponu KEY1 nebo KEY2.

Na webu Azure Portal přejděte ke svému prostředku. Oddíl Klíče a koncový bod najdete v části Správa prostředků. Zkopírujte koncový bod a přístupový klíč, protože budete potřebovat obojí pro ověřování volání rozhraní API. Použít můžete předponu KEY1 nebo KEY2. Vždy mít dva klíče vám umožní bezpečně otáčet a znovu vygenerovat klíče, aniž by to způsobilo přerušení služeb.

Snímek obrazovky s přehledovým uživatelským rozhraním pro prostředek Azure OpenAI na webu Azure Portal s červeným kruhem umístění koncového bodu a přístupových klíčů

Proměnné prostředí

Vytvořte a přiřaďte trvalé proměnné prostředí pro klíč a koncový bod.

Důležité

Doporučujeme ověřování Microsoft Entra ID se spravovanými identitami pro prostředky Azure, abyste se vyhnuli ukládání přihlašovacích údajů s aplikacemi, které běží v cloudu.

Používejte klíče rozhraní API s opatrností. Nezahrnujte klíč rozhraní API přímo do kódu a nikdy ho nevštěvujte veřejně. Pokud používáte klíče rozhraní API, bezpečně je uložte ve službě Azure Key Vault, pravidelně je obměňujte a omezte přístup ke službě Azure Key Vault pomocí řízení přístupu na základě rolí a omezení přístupu k síti. Další informace o bezpečném používání klíčů ROZHRANÍ API ve vašich aplikacích najdete v tématu Klíče rozhraní API se službou Azure Key Vault.

Další informace o zabezpečení služeb AI najdete v tématu Ověřování požadavků na služby Azure AI.

setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE" 
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE" 

Vytvoření nové aplikace v Pythonu

Vytvořte nový soubor Pythonu s názvem quickstart.py. V preferovaném editoru nebo integrovaném vývojovém prostředí (IDE) otevřete nový soubor.

  1. Obsah quickstart.py nahraďte následujícím kódem.

    from openai import AzureOpenAI
    
    api_base = os.getenv("AZURE_OPENAI_ENDPOINT")
    api_key= os.getenv("AZURE_OPENAI_API_KEY")
    deployment_name = '<your_deployment_name>'
    api_version = '2023-12-01-preview' # this might change in the future
    
    client = AzureOpenAI(
        api_key=api_key,  
        api_version=api_version,
        base_url=f"{api_base}/openai/deployments/{deployment_name}"
    )
    
    response = client.chat.completions.create(
        model=deployment_name,
        messages=[
            { "role": "system", "content": "You are a helpful assistant." },
            { "role": "user", "content": [  
                { 
                    "type": "text", 
                    "text": "Describe this picture:" 
                },
                { 
                    "type": "image_url",
                    "image_url": {
                        "url": "<image URL>"
                    }
                }
            ] } 
        ],
        max_tokens=2000 
    )
    
    print(response)
    
  2. Proveďte následující změny:

    1. Do příslušného pole zadejte název vašeho GPT-4 Turbo s nasazením Vision.
    2. Změňte hodnotu "url" pole na adresu URL obrázku.

      Tip

      Místo adresy URL můžete použít také základní data obrázků s kódováním 64. Další informace najdete v průvodci postupy GPT-4 Turbo s obrazem.

  3. Spusťte aplikaci pomocí python příkazu:

    python quickstart.py
    

Důležité

Používejte klíče rozhraní API s opatrností. Nezahrnujte klíč rozhraní API přímo do kódu a nikdy ho nevštěvujte veřejně. Pokud používáte klíč rozhraní API, bezpečně ho uložte ve službě Azure Key Vault. Další informace o bezpečném používání klíčů ROZHRANÍ API ve vašich aplikacích najdete v tématu Klíče rozhraní API se službou Azure Key Vault.

Další informace o zabezpečení služeb AI najdete v tématu Ověřování požadavků na služby Azure AI.

Vyčištění prostředků

Pokud chcete vyčistit a odebrat prostředek Azure OpenAI, můžete odstranit prostředek nebo skupinu prostředků. Odstraněním skupiny prostředků se odstraní také všechny ostatní prostředky, které jsou k ní přidružené.

V tomto článku můžete začít používat sadu OpenAI JavaScript SDK k nasazení a použití modelu GPT-4 Turbo s obrazem.

Tuto sadu SDK poskytuje OpenAI s konkrétními typy Azure, které poskytuje Azure.

Referenční dokumentace | – ukázky balíčku zdrojového kódu | knihovny (npm) |

Požadavky

Poznámka:

Tuto knihovnu udržuje OpenAI. Informace o nejnovějších aktualizacích knihovny najdete v historii verzí.

Požadavky pro Microsoft Entra ID

Pro doporučené ověřování bez klíčů s ID Microsoft Entra musíte:

  • Nainstalujte Azure CLI, které se používá pro ověřování bez klíčů pomocí ID Microsoft Entra.
  • Přiřaďte roli k uživatelskému Cognitive Services User účtu. Role můžete přiřadit na webu Azure Portal v části Řízení přístupu (IAM)>Přidat přiřazení role.

Načtení informací o prostředcích

Abyste mohli aplikaci ověřit pomocí prostředku Azure OpenAI, musíte načíst následující informace:

Název proměnné Hodnota
AZURE_OPENAI_ENDPOINT Tuto hodnotu najdete v části Klíče a koncový bod při zkoumání prostředku na webu Azure Portal.
AZURE_OPENAI_DEPLOYMENT_NAME Tato hodnota bude odpovídat vlastnímu názvu, který jste si zvolili pro své nasazení při nasazování modelu. Tuto hodnotu najdete v části Nasazení modelu správy>prostředků na webu Azure Portal.
OPENAI_API_VERSION Přečtěte si další informace o verzích rozhraní API.

Přečtěte si další informace o ověřování bez klíčů a nastavení proměnných prostředí.

Upozornění

Pokud chcete používat doporučené ověřování bez klíčů se sadou SDK, ujistěte se, že AZURE_OPENAI_API_KEY proměnná prostředí není nastavená.

Vytvoření aplikace Node

V okně konzoly (například cmd, PowerShell nebo Bash) vytvořte pro vaši aplikaci nový adresář a přejděte do něj. Potom spuštěním npm init příkazu vytvořte aplikaci uzlu se souborem package.json .

npm init

Instalace klientské knihovny

Nainstalujte klientské knihovny pomocí:

npm install openai @azure/identity

Soubor package.json vaší aplikace se aktualizuje o závislosti.

Vytvoření nové javascriptové aplikace pro výzvy k imagi

Vyberte obrázek z azure-samples/cognitive-services-sample-data-files a nastavte adresu URL obrázku v proměnných prostředí.

  1. Obsah quickstart.js nahraďte následujícím kódem.

    const AzureOpenAI = require('openai').AzureOpenAI;
    const { 
        DefaultAzureCredential, 
        getBearerTokenProvider 
    } = require('@azure/identity');
    
    // You will need to set these environment variables or edit the following values
    const endpoint = process.env["AZURE_OPENAI_ENDPOINT"] || "<endpoint>";
    const imageUrl = process.env["IMAGE_URL"] || "<image url>";
    
    // Required Azure OpenAI deployment name and API version
    const apiVersion = "2024-07-01-preview";
    const deploymentName = "gpt-4-with-turbo";
    
    // keyless authentication    
    const credential = new DefaultAzureCredential();
    const scope = "https://cognitiveservices.azure.com/.default";
    const azureADTokenProvider = getBearerTokenProvider(credential, scope);
    
    function getClient(): AzureOpenAI {
      return new AzureOpenAI({
        endpoint,
        azureADTokenProvider,
        apiVersion,
        deployment: deploymentName,
      });
    }
    function createMessages() {
      return {
        messages: [
          { role: "system", content: "You are a helpful assistant." },
          {
            role: "user",
            content: [
              {
                type: "text",
                text: "Describe this picture:",
              },
              {
                type: "image_url",
                image_url: {
                  url: imageUrl,
                },
              },
            ],
          },
        ],
        model: "",
        max_tokens: 2000,
      };
    }
    async function printChoices(completion) {
      for (const choice of completion.choices) {
        console.log(choice.message);
      }
    }
    export async function main() {
      console.log("== Get GPT-4 Turbo with vision Sample ==");
    
      const client = getClient();
      const messages = createMessages();
      const completion = await client.chat.completions.create(messages);
      await printChoices(completion);
    }
    
    main().catch((err) => {
      console.error("Error occurred:", err);
    });
    
  2. Proveďte následující změny:

    1. Do příslušného pole zadejte název vašeho GPT-4 Turbo s nasazením Vision.
    2. Změňte hodnotu "url" pole na adresu URL obrázku.

      Tip

      Místo adresy URL můžete použít také základní data obrázků s kódováním 64. Další informace najdete v průvodci postupy GPT-4 Turbo s obrazem.

  3. Spusťte aplikaci pomocí následujícího příkazu:

    node quickstart.js
    

Vyčištění prostředků

Pokud chcete vyčistit a odebrat prostředek Azure OpenAI, můžete odstranit prostředek nebo skupinu prostředků. Odstraněním skupiny prostředků se odstraní také všechny ostatní prostředky, které jsou k ní přidružené.

V tomto článku můžete začít používat sadu OpenAI JavaScript SDK k nasazení a použití modelu GPT-4 Turbo s obrazem.

Tuto sadu SDK poskytuje OpenAI s konkrétními typy Azure, které poskytuje Azure.

Referenční dokumentace | – ukázky balíčku zdrojového kódu | knihovny (npm) |

Požadavky

Poznámka:

Tuto knihovnu udržuje OpenAI. Informace o nejnovějších aktualizacích knihovny najdete v historii verzí.

Požadavky pro Microsoft Entra ID

Pro doporučené ověřování bez klíčů s ID Microsoft Entra musíte:

  • Nainstalujte Azure CLI, které se používá pro ověřování bez klíčů pomocí ID Microsoft Entra.
  • Přiřaďte roli k uživatelskému Cognitive Services User účtu. Role můžete přiřadit na webu Azure Portal v části Řízení přístupu (IAM)>Přidat přiřazení role.

Načtení informací o prostředcích

Abyste mohli aplikaci ověřit pomocí prostředku Azure OpenAI, musíte načíst následující informace:

Název proměnné Hodnota
AZURE_OPENAI_ENDPOINT Tuto hodnotu najdete v části Klíče a koncový bod při zkoumání prostředku na webu Azure Portal.
AZURE_OPENAI_DEPLOYMENT_NAME Tato hodnota bude odpovídat vlastnímu názvu, který jste si zvolili pro své nasazení při nasazování modelu. Tuto hodnotu najdete v části Nasazení modelu správy>prostředků na webu Azure Portal.
OPENAI_API_VERSION Přečtěte si další informace o verzích rozhraní API.

Přečtěte si další informace o ověřování bez klíčů a nastavení proměnných prostředí.

Upozornění

Pokud chcete používat doporučené ověřování bez klíčů se sadou SDK, ujistěte se, že AZURE_OPENAI_API_KEY proměnná prostředí není nastavená.

Vytvoření aplikace Node

V okně konzoly (například cmd, PowerShell nebo Bash) vytvořte pro vaši aplikaci nový adresář a přejděte do něj. Potom spuštěním npm init příkazu vytvořte aplikaci uzlu se souborem package.json .

npm init

Instalace klientské knihovny

Nainstalujte klientské knihovny pomocí:

npm install openai @azure/identity

Soubor package.json vaší aplikace se aktualizuje o závislosti.

Vytvoření nové javascriptové aplikace pro výzvy k imagi

Vyberte obrázek z azure-samples/cognitive-services-sample-data-files a nastavte adresu URL obrázku v proměnných prostředí.

  1. Vytvořte quickstart.ts a vložte následující kód.

    import { AzureOpenAI } from "openai";
    import { 
        DefaultAzureCredential, 
        getBearerTokenProvider 
    } from "@azure/identity";
    import type {
      ChatCompletion,
      ChatCompletionCreateParamsNonStreaming,
    } from "openai/resources/index";
    
    // You will need to set these environment variables or edit the following values
    const endpoint = process.env["AZURE_OPENAI_ENDPOINT"] || "<endpoint>";
    const imageUrl = process.env["IMAGE_URL"] || "<image url>";
    
    // Required Azure OpenAI deployment name and API version
    const apiVersion = "2024-07-01-preview";
    const deploymentName = "gpt-4-with-turbo";
    
    // keyless authentication    
    const credential = new DefaultAzureCredential();
    const scope = "https://cognitiveservices.azure.com/.default";
    const azureADTokenProvider = getBearerTokenProvider(credential, scope);
    
    function getClient(): AzureOpenAI {
      return new AzureOpenAI({
        endpoint,
        azureADTokenProvider,
        apiVersion,
        deployment: deploymentName,
      });
    }
    function createMessages(): ChatCompletionCreateParamsNonStreaming {
      return {
        messages: [
          { role: "system", content: "You are a helpful assistant." },
          {
            role: "user",
            content: [
              {
                type: "text",
                text: "Describe this picture:",
              },
              {
                type: "image_url",
                image_url: {
                  url: imageUrl,
                },
              },
            ],
          },
        ],
        model: "",
        max_tokens: 2000,
      };
    }
    async function printChoices(completion: ChatCompletion): Promise<void> {
      for (const choice of completion.choices) {
        console.log(choice.message);
      }
    }
    export async function main() {
      console.log("== Get GPT-4 Turbo with vision Sample ==");
    
      const client = getClient();
      const messages = createMessages();
      const completion = await client.chat.completions.create(messages);
      await printChoices(completion);
    }
    
    main().catch((err) => {
      console.error("Error occurred:", err);
    });
    
  2. Proveďte následující změny:

    1. Do příslušného pole zadejte název vašeho GPT-4 Turbo s nasazením Vision.
    2. Změňte hodnotu "url" pole na adresu URL obrázku.

      Tip

      Místo adresy URL můžete použít také základní data obrázků s kódováním 64. Další informace najdete v průvodci postupy GPT-4 Turbo s obrazem.

  3. Sestavte aplikaci pomocí následujícího příkazu:

    tsc
    
  4. Spusťte aplikaci pomocí následujícího příkazu:

    node quickstart.js
    

Vyčištění prostředků

Pokud chcete vyčistit a odebrat prostředek Azure OpenAI, můžete odstranit prostředek nebo skupinu prostředků. Odstraněním skupiny prostředků se odstraní také všechny ostatní prostředky, které jsou k ní přidružené.

V tomto článku můžete začít používat sadu Azure OpenAI .NET SDK k nasazení a použití modelu GPT-4 Turbo s obrazem.

Požadavky

  • Předplatné Azure. Můžete si ho zdarma vytvořit.
  • Sada .NET 8.0 SDK
  • Prostředek služby Azure OpenAI s nasazeným modelem GPT-4 Turbo s vision. Dostupnost modelů GPT-4 a GPT-4 Turbo Preview najdete v dostupných oblastech. Další informace o vytváření prostředků najdete v průvodci nasazením prostředků.

Nastavení

Načtení klíče a koncového bodu

K úspěšnému volání azure OpenAI potřebujete koncový bod a klíč.

Název proměnné Hodnota
AZURE_OPENAI_ENDPOINT Koncový bod služby najdete v části Klíče a koncový bod při zkoumání vašeho prostředku na webu Azure Portal. Koncový bod najdete také na stránce Nasazení na portálu Azure AI Foundry. Ukázkový koncový bod je: https://docs-test-001.openai.azure.com/.
AZURE_OPENAI_API_KEY Tuto hodnotu najdete v části Klíče a koncový bod při zkoumání prostředku na webu Azure Portal. Použít můžete předponu KEY1 nebo KEY2.

Na webu Azure Portal přejděte ke svému prostředku. Koncový bod a klíče najdete v části Správa prostředků. Zkopírujte koncový bod i přístupový klíč, jak potřebujete pro ověřování volání rozhraní API. Použít můžete předponu KEY1 nebo KEY2. Vždy mít dva klíče vám umožní bezpečně otáčet a znovu vygenerovat klíče, aniž by to způsobilo přerušení služeb.

Snímek obrazovky s přehledovým uživatelským rozhraním pro prostředek Azure OpenAI na webu Azure Portal se zvýrazněným umístěním přístupových klíčů a koncových bodů

Vytvoření aplikace .NET

  1. Pomocí příkazu vytvořte aplikaci dotnet new .NET:

    dotnet new console -n OpenAISpeech
    
  2. Přejděte do adresáře nové aplikace:

    cd OpenAISpeech
    

Instalace klientské knihovny

Nainstalujte klientskou knihovnu Azure.OpenAI :

dotnet add package Azure.AI.OpenAI

Ověřování bez hesla je bezpečnější než alternativy založené na klíčích a je doporučeným přístupem pro připojení ke službám Azure. Pokud se rozhodnete používat ověřování bez hesla, budete muset provést následující:

  1. Přidejte balíček Azure.Identity.

    dotnet add package Azure.Identity
    
  2. Přiřaďte roli k uživatelskému Cognitive Services User účtu. Můžete to udělat na webu Azure Portal na vašem prostředku OpenAI v části Řízení přístupu (IAM)>Přidání přiřazení role.

  3. Přihlaste se k Azure pomocí sady Visual Studio nebo Azure CLI přes az login.

Aktualizace kódu aplikace

  1. Nahraďte obsah program.cs následujícím kódem a aktualizujte zástupné hodnoty vlastními.

    using Azure;
    using Azure.AI.OpenAI;
    using Azure.Identity;
    using OpenAI.Chat; // Required for Passwordless auth
    
    var endpoint = new Uri("YOUR_AZURE_OPENAI_ENDPOINT");
    var credentials = new AzureKeyCredential("YOUR_AZURE_OPENAI_KEY");
    // var credentials = new DefaultAzureCredential(); // Use this line for Passwordless auth
    var deploymentName = "gpt-4"; // Default name, update with your own if needed
    
    var openAIClient = new AzureOpenAIClient(endpoint, credentials);
    var chatClient = openAIClient.GetChatClient(deploymentName);
    
    var imageUri = "YOUR_IMAGE_URL";
    
    List<ChatMessage> messages = [
        new UserChatMessage(
            ChatMessageContentPart.CreateTextMessageContentPart("Please describe the following image:"),
            ChatMessageContentPart.CreateImageMessageContentPart(new Uri(imageUri), "image/png"))
    ];
    
    ChatCompletion chatCompletion = await chatClient.CompleteChatAsync(messages);
    
    Console.WriteLine($"[ASSISTANT]:");
    Console.WriteLine($"{chatCompletion.Content[0].Text}");
    

Důležité

Doporučujeme ověřování Microsoft Entra ID se spravovanými identitami pro prostředky Azure, abyste se vyhnuli ukládání přihlašovacích údajů s aplikacemi, které běží v cloudu.

Používejte klíče rozhraní API s opatrností. Nezahrnujte klíč rozhraní API přímo do kódu a nikdy ho nevštěvujte veřejně. Pokud používáte klíče rozhraní API, bezpečně je uložte ve službě Azure Key Vault, pravidelně je obměňujte a omezte přístup ke službě Azure Key Vault pomocí řízení přístupu na základě rolí a omezení přístupu k síti. Další informace o bezpečném používání klíčů ROZHRANÍ API ve vašich aplikacích najdete v tématu Klíče rozhraní API se službou Azure Key Vault.

Další informace o zabezpečení služeb AI najdete v tématu Ověřování požadavků na služby Azure AI.

  1. Spusťte aplikaci pomocí dotnet run příkazu nebo tlačítka Spustit v horní části sady Visual Studio:

    dotnet run
    

Aplikace vygeneruje zvukový soubor v umístění, které jste zadali pro proměnnou speechFilePath . Pokud chcete slyšet vygenerovaný zvuk, přehrajte soubor na svém zařízení.

Vyčištění prostředků

Pokud chcete vyčistit a odebrat prostředek Azure OpenAI, můžete odstranit prostředek nebo skupinu prostředků. Odstraněním skupiny prostředků se odstraní také všechny ostatní prostředky, které jsou k ní přidružené.

Další kroky