Sdílet prostřednictvím


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

Začněte používat obrázky v chatech s Azure OpenAI v modelech Azure AI Foundry.

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 projekt, ve který chcete pracovat.
  3. V levé navigační nabídce vyberte Modely a koncové body a vyberte + Nasadit model.
  4. Vyberte nasazení s podporou obrázků výběrem názvu modelu: gpt-4o nebo gpt-4o-mini. 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 Průvodci nasazením zdrojů.
  5. Vyberte Nasadit.
  6. Dále vyberte nový model a vyberte Otevřít v dětském hřišti. Na chatovací ploše by mělo být nasazení, které jste vytvořili, vybráno v rozevíracím seznamu 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.

Pro obecnou pomoc s nastavením asistenta, relacemi chatu, nastaveními a panely se podívejte na Rychlý start 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. Pro začátek se ujistěte, že v rozevíracím seznamu Nasazení je vybráno nasazení umožňující práci s obrázky.

  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. Takto to vypadá na začátku rychlého úvodního chatu:

[
	{
		"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é.

Použijte tento článek k nasazení a využití rozhraní REST API Azure OpenAI k 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 Azure OpenAI v rámci modelů Azure AI Foundry s nasazeným modelem GPT-4 Turbo s funkcí 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 vizí.

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
Koncový bod 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 portálu Azure přejděte ke svému prostředku. V navigačním podokně vyberte Klíče a koncový bod v části Správa prostředků. Zkopírujte hodnotu koncového bodu a hodnotu přístupového klíče. Můžete použít buď 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 Vision.
    3. Změňte hodnotu "image" pole na adresu URL obrázku.

      Návod

      Můžete také použít base64 kódovaná data obrázku místo adresy URL. 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 se naučíte, jak začít používat Azure OpenAI Python SDK pro nasazení a použití modelu GPT-4 Turbo s Vision.

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

Požadavky

  • Předplatné Azure. Vytvořte si ho zdarma.
  • Python 3.8 nebo novější verze
  • Následující knihovny Pythonu: os
  • Prostředek Azure OpenAI v rámci modelů Azure AI Foundry s nasazeným modelem GPT-4 Turbo s funkcí 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í

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

Pro úspěšné 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 portálu Azure přejděte ke svému prostředku. Část 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 váš 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 API klíč přímo do kódu a nikdy ho nezveřejňujte 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ší implementace GPT-4 Turbo s Vision.
    2. Změňte hodnotu "url" pole na adresu URL obrázku.

      Návod

      Můžete také použít base64 kódovaná data obrázku místo adresy URL. 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 API klíč přímo do kódu a nikdy ho nezveřejňujte 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 se můžete seznámit s používáním OpenAI JavaScript SDK pro nasazení a použití modelu GPT-4 Turbo s funkcí Vision.

Tuto sadu SDK poskytuje OpenAI a zahrnuje typy, které specificky poskytuje Azure.

Referenční dokumentace | Zdrojový kód knihovny | Balíček (npm) | Ukázky

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 na váš Cognitive Services User uživatelský účet. Role můžete přiřadit v Azure Portal v části Řízení přístupu (IAM)>Přidat přiřazení role.

Nastavení

  1. Vytvořte novou složku vision-quickstart a přejděte do složky průvodce rychlým začátkem pomocí následujícího příkazu:

    mkdir vision-quickstart && cd vision-quickstart
    
  2. Vytvořte package.json pomocí následujícího příkazu:

    npm init -y
    
  3. Nainstalujte klientskou knihovnu OpenAI pro JavaScript pomocí:

    npm install openai
    
  4. Pro doporučené ověřování bez hesla:

    npm install @azure/identity
    

Získat informace 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 nasazení 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.

Můžete změnit verzi v kódu nebo použít proměnnou prostředí.

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

Upozornění

Aby bylo možné používat doporučené ověřování bez klíčů s SDK, zkontrolujte, že proměnná prostředí AZURE_OPENAI_API_KEY není nastavena.

Vytvořte novou JavaScriptovou aplikaci pro výzvy k obrázkům.

Vyberte obrázek z azure-samples/cognitive-services-sample-data-files. Použijte adresu URL obrázku v následujícím kódu nebo nastavte proměnnou IMAGE_URL prostředí na adresu URL obrázku.

Návod

Můžete také použít base64 kódovaná data obrázku místo adresy URL. Další informace najdete v průvodci postupy GPT-4 Turbo s obrazem.

  1. index.js Vytvořte soubor s 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 || "Your endpoint";
    const imageUrl = process.env.IMAGE_URL || "<image url>";
    
    // Required Azure OpenAI deployment name and API version
    const apiVersion = process.env.OPENAI_API_VERSION || "2024-07-01-preview";
    const deploymentName = process.env.AZURE_OPENAI_DEPLOYMENT_NAME || "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. Přihlaste se k Azure pomocí následujícího příkazu:

    az login
    
  3. Spusťte javascriptový soubor.

    node index.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 se můžete seznámit s používáním OpenAI JavaScript SDK pro nasazení a použití modelu GPT-4 Turbo s funkcí Vision.

Tuto sadu SDK poskytuje OpenAI a zahrnuje typy, které specificky poskytuje Azure.

Referenční dokumentace | Zdrojový kód knihovny | Balíček (npm) | Ukázky

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 na váš Cognitive Services User uživatelský účet. Role můžete přiřadit v Azure Portal v části Řízení přístupu (IAM)>Přidat přiřazení role.

Nastavení

  1. Vytvořte novou složku vision-quickstart a přejděte do složky průvodce rychlým začátkem pomocí následujícího příkazu:

    mkdir vision-quickstart && cd vision-quickstart
    
  2. Vytvořte package.json pomocí následujícího příkazu:

    npm init -y
    
  3. Aktualizujte package.json na ECMAScript následujícím příkazem:

    npm pkg set type=module
    
  4. Nainstalujte klientskou knihovnu OpenAI pro JavaScript pomocí:

    npm install openai
    
  5. Pro doporučené ověřování bez hesla:

    npm install @azure/identity
    

Získat informace 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 nasazení 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.

Můžete změnit verzi v kódu nebo použít proměnnou prostředí.

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

Upozornění

Aby bylo možné používat doporučené ověřování bez klíčů s SDK, zkontrolujte, že proměnná prostředí AZURE_OPENAI_API_KEY není nastavena.

Vytvořte novou JavaScriptovou aplikaci pro výzvy k obrázkům.

Vyberte obrázek z azure-samples/cognitive-services-sample-data-files. Použijte adresu URL obrázku v následujícím kódu nebo nastavte proměnnou IMAGE_URL prostředí na adresu URL obrázku.

Návod

Můžete také použít base64 kódovaná data obrázku místo adresy URL. Další informace najdete v průvodci postupy GPT-4 Turbo s obrazem.

  1. index.ts Vytvořte soubor s následujícím kódem:

    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 || "Your endpoint";
    const imageUrl = process.env["IMAGE_URL"] || "<image url>";
    
    // Required Azure OpenAI deployment name and API version
    const apiVersion = process.env.OPENAI_API_VERSION || "2024-07-01-preview";
    const deploymentName = process.env.AZURE_OPENAI_DEPLOYMENT_NAME || "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. tsconfig.json Vytvořte soubor pro transpilování kódu TypeScript a zkopírujte následující kód pro ECMAScript.

    {
        "compilerOptions": {
          "module": "NodeNext",
          "target": "ES2022", // Supports top-level await
          "moduleResolution": "NodeNext",
          "skipLibCheck": true, // Avoid type errors from node_modules
          "strict": true // Enable strict type-checking options
        },
        "include": ["*.ts"]
    }
    
  3. Transpilovat z TypeScriptu do JavaScriptu.

    tsc
    
  4. Přihlaste se k Azure pomocí následujícího příkazu:

    az login
    
  5. Spusťte kód pomocí následujícího příkazu:

    node index.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.
  • .NET 8.0 SDK
  • Prostředek Azure OpenAI v rámci modelů Azure AI Foundry s nasazeným modelem GPT-4 Turbo s funkcí 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ů.

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 na váš Cognitive Services User uživatelský účet. Role můžete přiřadit v Azure Portal v části Řízení přístupu (IAM)>Přidat přiřazení role.

Nastavení

  1. Vytvořte novou složku vision-quickstart a přejděte do složky průvodce rychlým začátkem pomocí následujícího příkazu:

    mkdir vision-quickstart && cd vision-quickstart
    
  2. Vytvořte novou konzolovou aplikaci pomocí následujícího příkazu:

    dotnet new console
    
  3. Nainstalujte klientskou knihovnu OpenAI .NET pomocí příkazu dotnet add package:

    dotnet add package Azure.AI.OpenAI
    
  4. Pro doporučené ověřování bez klíčů s ID Microsoft Entra nainstalujte balíček Azure.Identity pomocí:

    dotnet add package Azure.Identity
    
  5. Pro doporučené ověřování bez klíčů pomocí ID Microsoft Entra se přihlaste k Azure pomocí následujícího příkazu:

    az login
    

Získat informace 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 nasazení 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.

Můžete změnit verzi v kódu nebo použít proměnnou prostředí.

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

Spustit rychlý start

Ukázkový kód v tomto rychlém průvodci používá doporučené bezklíčové ověřování Microsoft Entra ID. Pokud dáváte přednost použití klíče rozhraní API, můžete objekt nahradit DefaultAzureCredential objektem AzureKeyCredential .

AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential()); 

Pokud chcete spustit rychlý start, postupujte takto:

  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
    
    string deploymentName = "gpt-4";
    
    string endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT") ?? "https://<your-resource-name>.openai.azure.com/";
    string key = Environment.GetEnvironmentVariable("AZURE_OPENAI_API_KEY") ?? "<your-key>";
    
    // Use the recommended keyless credential instead of the AzureKeyCredential credential.
    AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential()); 
    //AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new AzureKeyCredential(key));
    
    var chatClient = openAIClient.GetChatClient(deploymentName);
    
    var imageUrl = "YOUR_IMAGE_URL";
    
    var chatMessages = new List<ChatMessage>
    {
        new SystemChatMessage("You are a helpful assistant."),
        new UserChatMessage($"Describe this picture: {imageUrl}")
    };
    
    ChatCompletion chatCompletion = await chatClient.CompleteChatAsync(chatMessages);
    
    Console.WriteLine($"[ASSISTANT]:");
    Console.WriteLine($"{chatCompletion.Content[0].Text}");
    
  2. Spusťte aplikaci pomocí dotnet run příkazu nebo tlačítka Spustit v horní části sady Visual Studio:

    dotnet run
    

Výstup

Výstupem aplikace bude popis obrázku, který jste zadali imageUri v proměnné. Asistent bude analyzovat obrázek a poskytne podrobný popis na základě jeho obsahu.

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é.