Delen via


Quickstart: Afbeeldingen gebruiken in uw AI-chats

Ga aan de slag met afbeeldingen in uw chats met Azure OpenAI in Azure AI Foundry Models.

Belangrijk

Extra gebruikskosten kunnen van toepassing zijn bij het gebruik van modellen voor chatvoltooiing met vision-functionaliteit.

Gebruik dit artikel om aan de slag te gaan met Azure AI Foundry om een voltooiingsmodel voor chats te implementeren en te testen met begrip van afbeeldingen.

Vereisten

Uw media voorbereiden

U hebt een installatiekopieën nodig om deze quickstart te voltooien. U kunt deze voorbeeldafbeelding of een andere afbeelding gebruiken die u beschikbaar hebt.

Foto van een auto-ongeluk dat kan worden gebruikt om de quickstart te voltooien.

Ga naar Azure AI Foundry

  1. Blader naar Azure AI Foundry en meld u aan met de referenties die zijn gekoppeld aan uw Azure OpenAI-resource. Selecteer tijdens of na de aanmeldingswerkstroom de juiste map, het Azure-abonnement en de Azure OpenAI-resource.
  2. Selecteer het project waarin u wilt werken.
  3. Selecteer modellen en eindpunten in het linkernavigatiemenu en selecteer + Model implementeren.
  4. Kies een implementatie die geschikt is voor installatiekopieën door de modelnaam te selecteren: gpt-4o of gpt-4o-mini. Selecteer een naam en implementatietype in het venster dat wordt weergegeven. Zorg ervoor dat uw Azure OpenAI-resource is verbonden. Zie de gids implementatiemodellen voor meer informatie over de implementatiemodellen.
  5. Selecteer Implementeren.
  6. Selecteer vervolgens uw nieuwe model en selecteer Openen in speeltuin. In de chatspeeltuin moet de implementatie die u hebt gemaakt, worden geselecteerd in de vervolgkeuzelijst Implementatie .

Speelplaats

In deze chatsessie geeft u de assistent instructies om u te helpen bij het begrijpen van afbeeldingen die u invoert.

Raadpleeg de quickstart voor chatsessies, instellingen en panelen voor algemene hulp bij het instellen van assistenten, chatsessies, instellingen en panelen.

Een chatsessie starten om afbeeldingen te analyseren

In deze chatsessie geeft u de assistent instructies om inzicht te krijgen in afbeeldingen die u invoert.

  1. Controleer eerst of de implementatie die geschikt is voor installatiekopieën is geselecteerd in de vervolgkeuzelijst Implementatie .

  2. Geef in het contexttekstvak in het installatievenster deze prompt op om de assistent te begeleiden: "You're an AI assistant that helps people find information." Of u kunt de prompt aanpassen aan uw afbeelding of scenario.

    Notitie

    U wordt aangeraden het systeembericht zo bij te werken dat dit specifiek is voor de taak om onhulpzame reacties van het model te voorkomen.

  3. Selecteer Wijzigingen toepassen om uw wijzigingen op te slaan.

  4. Selecteer in het chatsessievenster de knop Bijlage en upload vervolgens de afbeelding. Kies uw afbeelding.

  5. Voeg de volgende prompt toe in het chatveld: Describe this imageen selecteer vervolgens het verzendpictogram om deze in te dienen.

  6. Het verzendpictogram wordt vervangen door een stopknop. Als u deze selecteert, stopt de assistent met het verwerken van uw aanvraag. Laat de assistent voor deze quickstart het antwoord voltooien.

  7. De assistent reageert met een beschrijving van de afbeelding.

  8. Stel een vervolgvraag met betrekking tot de analyse van uw afbeelding. U kunt invoeren, "What should I highlight about this image to my insurance company?".

  9. U moet een relevant antwoord ontvangen dat lijkt op wat hier wordt weergegeven:

    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.
    

Code weergeven en exporteren

Op elk gewenst moment in de chatsessie kunt u de onbewerkte JSON-switch weergeven boven aan het chatvenster inschakelen om het gesprek te zien dat is opgemaakt als JSON. Dit ziet er als volgt uit aan het begin van de quickstart-chatsessie:

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

Resources opschonen

Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.

Gebruik dit artikel om aan de slag te gaan met de Azure OpenAI REST API's voor het implementeren en gebruiken van het GPT-4 Turbo with Vision-model.

Vereisten

Notitie

Het wordt momenteel niet ondersteund om het filteren van inhoud voor het GPT-4 Turbo with Vision-model uit te schakelen.

Sleutel en eindpunt ophalen

Als u de Azure OpenAI-API's wilt aanroepen, hebt u de volgende informatie nodig over uw Azure OpenAI-resource:

Variabel Naam Weergegeven als
Eindpunt api_base De eindpuntwaarde bevindt zich onder Sleutels en Eindpunt voor uw resource in Azure Portal. U kunt het eindpunt ook vinden via de pagina Implementaties in de Azure AI Foundry-portal. Een voorbeeldeindpunt is: https://docs-test-001.openai.azure.com/.
Code api_key De sleutelwaarde bevindt zich ook onder Sleutels en Eindpunt voor uw resource in Azure Portal. Azure genereert twee sleutels voor uw resource. U kunt beide waarden gebruiken.

Ga naar uw resource in Azure Portal. Selecteer sleutels en eindpunt in het navigatiedeelvenster onder Resourcebeheer. Kopieer de eindpuntwaarde en een toegangssleutelwaarde. U kunt de waarde KEY 1 of KEY 2 gebruiken. Als u twee sleutels hebt, kunt u sleutels veilig roteren en opnieuw genereren zonder dat er een serviceonderbreking wordt veroorzaakt.

Schermopname van de pagina Sleutels en eindpunt voor een Azure OpenAI-resource in Azure Portal.

Een nieuwe Python-toepassing maken

Maak een nieuw Python-bestand met de naam quickstart.py. Open het nieuwe bestand in de gewenste editor of IDE.

  1. Vervang de inhoud van quickstart.py door de volgende code.

    # 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. Breng de volgende wijzigingen aan:

    1. Voer uw eindpunt-URL en -sleutel in de juiste velden in.
    2. Voer uw GPT-4 Turbo met Vision-implementatienaam in het juiste veld in.
    3. Wijzig de waarde van het "image" veld in de URL van uw afbeelding.

      Aanbeveling

      U kunt ook een met base 64 gecodeerde afbeeldingsgegevens gebruiken in plaats van een URL. Zie de HANDLEIDING GPT-4 Turbo met Vision voor meer informatie.

  3. De toepassing uitvoeren met de opdracht python:

    python quickstart.py
    

Resources opschonen

Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.

Gebruik dit artikel om aan de slag te gaan met de Azure OpenAI Python SDK om het GPT-4 Turbo with Vision-model te implementeren en te gebruiken.

| Broncodepakket bibliotheek (PyPi) |

Vereisten

Instellingen

Installeer de OpenAI Python-clientbibliotheek met:

pip install openai

Notitie

Deze bibliotheek wordt onderhouden door OpenAI. Raadpleeg de releasegeschiedenis om de meest recente updates voor de bibliotheek bij te houden.

Sleutel en eindpunt ophalen

Als u azure OpenAI wilt aanroepen, hebt u een eindpunt en een sleutel nodig.

Naam van de variabele Weergegeven als
ENDPOINT Het service-eindpunt vindt u in de sectie Sleutels en eindpunten bij het controleren van uw resource vanuit Azure Portal. U kunt het eindpunt ook vinden via de pagina Implementaties in de Azure AI Foundry-portal. Een voorbeeldeindpunt is: https://docs-test-001.openai.azure.com/.
API-KEY Deze waarde vindt u in de sectie Sleutels en eindpunt bij het onderzoeken van uw resource vanuit de Azure Portal. U kunt KEY1 of KEY2 gebruiken.

Ga naar uw resource in Azure Portal. De sectie Sleutels en eindpunt vindt u in de sectie Resourcebeheer . Kopieer uw eindpunt en toegangssleutel, omdat u beide nodig hebt voor het verifiëren van uw API-aanroepen. U kunt KEY1 of KEY2 gebruiken. Als u altijd twee sleutels hebt, kunt u sleutels veilig roteren en opnieuw genereren zonder een serviceonderbreking te veroorzaken.

Schermopname van de overzichtsgebruikersinterface voor een Azure OpenAI-resource in Azure Portal met het eindpunt en de locatie van toegangssleutels die rood zijn omcirkeld.

Omgevingsvariabelen

Maak en wijs permanente omgevingsvariabelen toe voor uw sleutel en eindpunt.

Belangrijk

We raden Microsoft Entra ID-verificatie aan met beheerde identiteiten voor Azure-resources om te voorkomen dat referenties worden opgeslagen met uw toepassingen die in de cloud worden uitgevoerd.

Gebruik API-sleutels met voorzichtigheid. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar. Als u API-sleutels gebruikt, slaat u deze veilig op in Azure Key Vault, draait u de sleutels regelmatig en beperkt u de toegang tot Azure Key Vault met behulp van op rollen gebaseerd toegangsbeheer en netwerktoegangsbeperkingen. Zie API-sleutels met Azure Key Vault voor meer informatie over het veilig gebruiken van API-sleutels in uw apps.

Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.

setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE" 
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE" 

Een nieuwe Python-toepassing maken

Maak een nieuw Python-bestand met de naam quickstart.py. Open het nieuwe bestand in de gewenste editor of IDE.

  1. Vervang de inhoud van quickstart.py door de volgende code.

    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. Breng de volgende wijzigingen aan:

    1. Voer in het juiste veld de naam in van uw GPT-4 Turbo met Vision-implementatie.
    2. Wijzig de waarde van het "url" veld in de URL van uw afbeelding.

      Aanbeveling

      U kunt ook een met base 64 gecodeerde afbeeldingsgegevens gebruiken in plaats van een URL. Zie de HANDLEIDING GPT-4 Turbo met Vision voor meer informatie.

  3. De toepassing uitvoeren met de opdracht python:

    python quickstart.py
    

Belangrijk

Gebruik API-sleutels met voorzichtigheid. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar. Als u een API-sleutel gebruikt, slaat u deze veilig op in Azure Key Vault. Zie API-sleutels met Azure Key Vault voor meer informatie over het veilig gebruiken van API-sleutels in uw apps.

Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.

Resources opschonen

Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.

Gebruik dit artikel om aan de slag te gaan met de OpenAI JavaScript SDK om het GPT-4 Turbo with Vision-model te implementeren en te gebruiken.

Deze SDK wordt geleverd door OpenAI met Azure-specifieke typen die worden geleverd door Azure.

Referentiedocumentatie | Bibliotheekbroncode | Pakket (npm) | Voorbeelden

Vereisten

Notitie

Deze bibliotheek wordt onderhouden door OpenAI. Raadpleeg de releasegeschiedenis om de meest recente updates voor de bibliotheek bij te houden.

Vereisten voor Microsoft Entra-id

Voor de aanbevolen sleutelloze verificatie met Microsoft Entra-id moet u het volgende doen:

  • Installeer de Azure CLI die wordt gebruikt voor sleutelloze verificatie met Microsoft Entra-id.
  • Wijs de Cognitive Services User rol toe aan uw gebruikersaccount. U kunt rollen toewijzen in Azure Portal onder Toegangsbeheer (IAM)>Roltoewijzing toevoegen.

Instellingen

  1. Maak een nieuwe map vision-quickstart en ga naar de snelstartmap met de volgende opdracht:

    mkdir vision-quickstart && cd vision-quickstart
    
  2. Maak de package.json opdracht met de volgende opdracht:

    npm init -y
    
  3. Installeer de OpenAI-clientbibliotheek voor JavaScript met:

    npm install openai
    
  4. Voor de aanbevolen verificatie zonder wachtwoord:

    npm install @azure/identity
    

Resourcegegevens ophalen

U moet de volgende informatie ophalen om uw toepassing te verifiëren met uw Azure OpenAI-resource:

Naam van de variabele Weergegeven als
AZURE_OPENAI_ENDPOINT Deze waarde vindt u in de sectie Sleutels en eindpunt bij het controleren van uw resource vanuit Azure Portal.
AZURE_OPENAI_DEPLOYMENT_NAME Deze waarde komt overeen met de aangepaste naam die u hebt gekozen voor uw implementatie toen u een model hebt geïmplementeerd. Deze waarde vindt u onder Resource Management>Model Deployments in Azure Portal.
OPENAI_API_VERSION Meer informatie over API-versies.

U kunt de versie in code wijzigen of een omgevingsvariabele gebruiken.

Meer informatie over sleutelloze verificatie en het instellen van omgevingsvariabelen.

Let op

Als u de aanbevolen sleutelloze verificatie met de SDK wilt gebruiken, moet u ervoor zorgen dat de AZURE_OPENAI_API_KEY omgevingsvariabele niet is ingesteld.

Een nieuwe JavaScript-toepassing maken voor prompts voor installatiekopieën

Selecteer een afbeelding in de azure-samples/cognitive-services-sample-data-files. Gebruik de afbeeldings-URL in de onderstaande code of stel de IMAGE_URL omgevingsvariabele in op de afbeeldings-URL.

Aanbeveling

U kunt ook een met base 64 gecodeerde afbeeldingsgegevens gebruiken in plaats van een URL. Zie de HANDLEIDING GPT-4 Turbo met Vision voor meer informatie.

  1. Maak het index.js bestand met de volgende code:

    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. Meld u aan bij Azure met de volgende opdracht:

    az login
    
  3. Voer het JavaScript-bestand uit.

    node index.js
    

Resources opschonen

Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.

Gebruik dit artikel om aan de slag te gaan met de OpenAI JavaScript SDK om het GPT-4 Turbo with Vision-model te implementeren en te gebruiken.

Deze SDK wordt geleverd door OpenAI met Azure-specifieke typen die worden geleverd door Azure.

Referentiedocumentatie | Bibliotheekbroncode | Pakket (npm) | Voorbeelden

Vereisten

Notitie

Deze bibliotheek wordt onderhouden door OpenAI. Raadpleeg de releasegeschiedenis om de meest recente updates voor de bibliotheek bij te houden.

Vereisten voor Microsoft Entra-id

Voor de aanbevolen sleutelloze verificatie met Microsoft Entra-id moet u het volgende doen:

  • Installeer de Azure CLI die wordt gebruikt voor sleutelloze verificatie met Microsoft Entra-id.
  • Wijs de Cognitive Services User rol toe aan uw gebruikersaccount. U kunt rollen toewijzen in Azure Portal onder Toegangsbeheer (IAM)>Roltoewijzing toevoegen.

Instellingen

  1. Maak een nieuwe map vision-quickstart en ga naar de snelstartmap met de volgende opdracht:

    mkdir vision-quickstart && cd vision-quickstart
    
  2. Maak de package.json opdracht met de volgende opdracht:

    npm init -y
    
  3. Werk de package.json bij naar ECMAScript met het volgende commando:

    npm pkg set type=module
    
  4. Installeer de OpenAI-clientbibliotheek voor JavaScript met:

    npm install openai
    
  5. Voor de aanbevolen verificatie zonder wachtwoord:

    npm install @azure/identity
    

Resourcegegevens ophalen

U moet de volgende informatie ophalen om uw toepassing te verifiëren met uw Azure OpenAI-resource:

Naam van de variabele Weergegeven als
AZURE_OPENAI_ENDPOINT Deze waarde vindt u in de sectie Sleutels en eindpunt bij het controleren van uw resource vanuit Azure Portal.
AZURE_OPENAI_DEPLOYMENT_NAME Deze waarde komt overeen met de aangepaste naam die u hebt gekozen voor uw implementatie toen u een model hebt geïmplementeerd. Deze waarde vindt u onder Resource Management>Model Deployments in Azure Portal.
OPENAI_API_VERSION Meer informatie over API-versies.

U kunt de versie in code wijzigen of een omgevingsvariabele gebruiken.

Meer informatie over sleutelloze verificatie en het instellen van omgevingsvariabelen.

Let op

Als u de aanbevolen sleutelloze verificatie met de SDK wilt gebruiken, moet u ervoor zorgen dat de AZURE_OPENAI_API_KEY omgevingsvariabele niet is ingesteld.

Een nieuwe JavaScript-toepassing maken voor prompts voor installatiekopieën

Selecteer een afbeelding in de azure-samples/cognitive-services-sample-data-files. Gebruik de afbeeldings-URL in de onderstaande code of stel de IMAGE_URL omgevingsvariabele in op de afbeeldings-URL.

Aanbeveling

U kunt ook een met base 64 gecodeerde afbeeldingsgegevens gebruiken in plaats van een URL. Zie de HANDLEIDING GPT-4 Turbo met Vision voor meer informatie.

  1. Maak het index.ts bestand met de volgende code:

    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. Maak het tsconfig.json bestand om de TypeScript-code te transpileren en kopieer de volgende code voor 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. Transpile van TypeScript naar JavaScript.

    tsc
    
  4. Meld u aan bij Azure met de volgende opdracht:

    az login
    
  5. Voer de code uit met de volgende opdracht:

    node index.js
    

Resources opschonen

Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.

Gebruik dit artikel om aan de slag te gaan met de Azure OpenAI .NET SDK om het GPT-4 Turbo with Vision-model te implementeren en te gebruiken.

Vereisten

Vereisten voor Microsoft Entra-id

Voor de aanbevolen sleutelloze verificatie met Microsoft Entra-id moet u het volgende doen:

  • Installeer de Azure CLI die wordt gebruikt voor sleutelloze verificatie met Microsoft Entra-id.
  • Wijs de Cognitive Services User rol toe aan uw gebruikersaccount. U kunt rollen toewijzen in Azure Portal onder Toegangsbeheer (IAM)>Roltoewijzing toevoegen.

Instellingen

  1. Maak een nieuwe map vision-quickstart en ga naar de snelstartmap met de volgende opdracht:

    mkdir vision-quickstart && cd vision-quickstart
    
  2. Maak een nieuwe consoletoepassing met de volgende opdracht:

    dotnet new console
    
  3. Installeer de OpenAI .NET-clientbibliotheek met de opdracht dotnet add package :

    dotnet add package Azure.AI.OpenAI
    
  4. Voor de aanbevolen sleutelloze verificatie met Microsoft Entra ID installeert u het Azure.Identity-pakket met:

    dotnet add package Azure.Identity
    
  5. Meld u met de volgende opdracht aan bij Azure voor de aanbevolen sleutelloze verificatie met Microsoft Entra ID:

    az login
    

Resourcegegevens ophalen

U moet de volgende informatie ophalen om uw toepassing te verifiëren met uw Azure OpenAI-resource:

Naam van de variabele Weergegeven als
AZURE_OPENAI_ENDPOINT Deze waarde vindt u in de sectie Sleutels en eindpunt bij het controleren van uw resource vanuit Azure Portal.
AZURE_OPENAI_DEPLOYMENT_NAME Deze waarde komt overeen met de aangepaste naam die u hebt gekozen voor uw implementatie toen u een model hebt geïmplementeerd. Deze waarde vindt u onder Resource Management>Model Deployments in Azure Portal.
OPENAI_API_VERSION Meer informatie over API-versies.

U kunt de versie in code wijzigen of een omgevingsvariabele gebruiken.

Meer informatie over sleutelloze verificatie en het instellen van omgevingsvariabelen.

De quickstart uitvoeren

De voorbeeldcode in deze quickstart maakt gebruik van Microsoft Entra-id voor de aanbevolen sleutelloze verificatie. Als u liever een API-sleutel gebruikt, kunt u het DefaultAzureCredential object vervangen door een AzureKeyCredential object.

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

Voer de volgende stappen uit om de quickstart uit te voeren:

  1. Vervang de inhoud door Program.cs de volgende code en werk de waarden van de tijdelijke aanduidingen bij met uw eigen waarden.

    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. Voer de toepassing uit met behulp van de dotnet run opdracht of de knop Uitvoeren bovenaan Visual Studio:

    dotnet run
    

Uitvoer

De uitvoer van de toepassing is een beschrijving van de afbeelding die u in de imageUri variabele hebt opgegeven. De assistent analyseert de afbeelding en geeft een gedetailleerde beschrijving op basis van de inhoud.

Resources opschonen

Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.