Delen via


Quickstart: Aan de slag met het genereren van tekst met behulp van de verouderde voltooiings-API

Gebruik dit artikel om aan de slag te gaan met het maken van uw eerste aanroepen naar Azure OpenAI.

Vereisten

Ga naar Azure OpenAI Studio

Navigeer naar Azure OpenAI Studio op https://oai.azure.com/ en meld u aan met referenties die toegang hebben tot uw Azure OpenAI-resource. Selecteer tijdens of na de aanmeldingswerkstroom de juiste map, het Azure-abonnement en de Azure OpenAI-resource.

Navigeer op de landingspagina van Azure OpenAI Studio verder om voorbeelden te verkennen voor het voltooien van aanvragen, uw implementaties en modellen te beheren en leerbronnen te vinden, zoals documentatie en communityforums.

Schermopname van de landingspagina van Azure OpenAI Studio.

Speelplaats

Begin met het verkennen van azure OpenAI-mogelijkheden met een no-code-benadering via de GPT-3 Playground. Het is gewoon een tekstvak waarin u een prompt kunt indienen om een voltooiing te genereren. Op deze pagina kunt u snel herhalen en experimenteren met de mogelijkheden.

Schermopname van de pagina speeltuin van Azure OpenAI Studio met secties gemarkeerd.

U kunt een implementatie selecteren en kiezen uit enkele vooraf geladen voorbeelden om aan de slag te gaan. Als uw resource geen implementatie heeft, selecteert u Een implementatie maken en volgt u de instructies van de wizard. Zie de gids implementatiemodellen voor meer informatie over de implementatiemodellen.

U kunt experimenteren met de configuratie-instellingen, zoals temperatuur en tekst vooraf, om de prestaties van uw taak te verbeteren. Meer informatie over elke parameter vindt u in de REST API.

  • Als u de knop Genereren selecteert, wordt de ingevoerde tekst naar de voltooiings-API verzonden en worden de resultaten terug naar het tekstvak gestreamd.
  • Selecteer de knop Ongedaan maken om de aanroep van de vorige generatie ongedaan te maken.
  • Selecteer de knop Opnieuw genereren om een aanroep ongedaan maken en genereren samen te voltooien.

Azure OpenAI voert ook con tentmodus ration uit op de promptinvoer en gegenereerde uitvoer. De prompts of antwoorden kunnen worden gefilterd als schadelijke inhoud wordt gedetecteerd. Zie het artikel over het inhoudsfilter voor meer informatie.

In de voltooiingsspeeltuin kunt u ook vooraf ingevulde Python- en curl-codevoorbeelden bekijken op basis van uw geselecteerde instellingen. Selecteer Code weergeven naast de vervolgkeuzelijst voorbeelden. U kunt een toepassing schrijven om dezelfde taak te voltooien met de OpenAI Python SDK, curl of andere REST API-client.

Tekstsamenvatting uitproberen

Als u de Azure OpenAI wilt gebruiken voor tekstsamenvatting in de speeltuin Voltooiingen, voert u de volgende stappen uit:

  1. Meld u aan bij Azure OpenAI Studio.

  2. Selecteer het abonnement en openAI-resource waarmee u wilt werken.

  3. Selecteer Voltooiingsspeeltuin op de landingspagina.

  4. Selecteer uw implementatie in de vervolgkeuzelijst Implementaties . Als uw resource geen implementatie heeft, selecteert u Een implementatie maken en gaat u opnieuw naar deze stap.

  5. Voer een prompt in voor het model.

    Schermopname van de pagina speeltuin van Azure OpenAI Studio met een voorbeeld van een samenvatting van de tekst.

  6. Selecteer Generate. Azure OpenAI probeert de context van tekst vast te leggen en deze beknopt te herformuleren. U krijgt een resultaat dat lijkt op de volgende tekst:

De nauwkeurigheid van het antwoord kan per model verschillen. Het gpt-35-turbo-instruct gebaseerde model in dit voorbeeld is zeer geschikt voor dit type samenvatting, maar over het algemeen raden we u aan de API voor alternatieve chatvoltooiingen te gebruiken, tenzij u een bepaalde use case hebt die bijzonder geschikt is voor de voltooiings-API.

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.

Volgende stappen

Voorbeelden van broncodepakket | (NuGet) |

Vereisten

Instellingen

Een nieuwe .NET Core-app maken

Gebruik in een consolevenster (zoals cmd, PowerShell of Bash) de opdracht dotnet new om een nieuwe console-app te maken met de naam azure-openai-quickstart. Met deze opdracht maakt u een eenvoudig 'Hallo wereld'-project met één C#-bronbestand: Program.cs.

dotnet new console -n azure-openai-quickstart

Wijzig uw map in de zojuist gemaakte app-map. U kunt de toepassing maken met:

dotnet build

De build-uitvoer mag geen waarschuwingen of fouten bevatten.

...
Build succeeded.
 0 Warning(s)
 0 Error(s)
...

Installeer de OpenAI .NET-clientbibliotheek met:

dotnet add package Azure.AI.OpenAI --version 1.0.0-beta.17

Notitie

De voltooiings-API is alleen beschikbaar in versie 1.0.0-beta.17 en eerder van de Azure.AI.OpenAI clientbibliotheek. Voor de nieuwste 2.0.0 en hogere versie van is de aanbevolen methode voor het genereren van Azure.AI.OpenAIvoltooiingen de API voor chatvoltooiingen te gebruiken.

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 Azure AI Studio. 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

Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.

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 voorbeeldtoepassing maken

Open in de projectmap het program.cs-bestand en vervang het door de volgende code:

using Azure;
using Azure.AI.OpenAI;
using static System.Environment;

string endpoint = GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT");
string key = GetEnvironmentVariable("AZURE_OPENAI_API_KEY");

var client = new OpenAIClient(
    new Uri(endpoint),
    new AzureKeyCredential(key));

CompletionsOptions completionsOptions = new()
{
    DeploymentName = "gpt-35-turbo-instruct",
    Prompts = { "When was Microsoft founded?" },
};

Response<Completions> completionsResponse = client.GetCompletions(completionsOptions);
string completion = completionsResponse.Value.Choices[0].Text;
Console.WriteLine($"Chatbot: {completion}");

Belangrijk

Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen, zoals Azure Key Vault. Zie het artikel over beveiliging van Azure AI-services voor meer informatie over referentiebeveiliging.

dotnet run program.cs

Uitvoer

Chatbot:

Microsoft was founded on April 4, 1975.

Resources opschonen

Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource verwijderen. Voordat u de resource verwijdert, moet u eerst geïmplementeerde modellen verwijderen.

Volgende stappen

Voorbeelden van broncodepakket | (Go)|

Vereisten

Instellingen

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 Azure AI Studio. 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

Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.

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 voorbeeldtoepassing maken

Maak een nieuw bestand met de naam completions.go. Kopieer de volgende code naar het bestand completions.go.

package main

import (
	"context"
	"fmt"
	"os"

	"github.com/Azure/azure-sdk-for-go/sdk/ai/azopenai"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
)

func main() {
	azureOpenAIKey := os.Getenv("AZURE_OPENAI_API_KEY")
	modelDeploymentID := "gpt-35-turbo-instruct"

	azureOpenAIEndpoint := os.Getenv("AZURE_OPENAI_ENDPOINT")

	if azureOpenAIKey == "" || modelDeploymentID == "" || azureOpenAIEndpoint == "" {
		fmt.Fprintf(os.Stderr, "Skipping example, environment variables missing\n")
		return
	}

	keyCredential := azcore.NewKeyCredential(azureOpenAIKey)

	client, err := azopenai.NewClientWithKeyCredential(azureOpenAIEndpoint, keyCredential, nil)

	if err != nil {
		// TODO: handle error
	}

	resp, err := client.GetCompletions(context.TODO(), azopenai.CompletionsOptions{
		Prompt:         []string{"What is Azure OpenAI, in 20 words or less"},
		MaxTokens:      to.Ptr(int32(2048)),
		Temperature:    to.Ptr(float32(0.0)),
		DeploymentName: &modelDeploymentID,
	}, nil)

	if err != nil {
		// TODO: handle error
	}

	for _, choice := range resp.Choices {
		fmt.Fprintf(os.Stderr, "Result: %s\n", *choice.Text)
	}

}

Belangrijk

Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen, zoals Azure Key Vault. Zie het artikel over beveiliging van Azure AI-services voor meer informatie over referentiebeveiliging.

Open nu een opdrachtprompt en voer het volgende uit:

go mod init completions.go

Volgende uitvoering:

go mod tidy
go run completions.go

Uitvoer

== Get completions Sample ==

Microsoft was founded on April 4, 1975.

Resources opschonen

Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource verwijderen. Voordat u de resource verwijdert, moet u eerst geïmplementeerde modellen verwijderen.

Volgende stappen

Voorbeelden van broncodeartefacten (Maven) | |

Vereisten

  • Een Azure OpenAI-serviceresource met het gpt-35-turbo-instruct geïmplementeerde model. Zie de gids implementatiemodellen voor meer informatie over de implementatiemodellen.

Instellingen

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 Azure AI Studio. 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

Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.

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 Java-toepassing maken

Maak een nieuw Gradle-project.

Maak in een consolevenster (zoals cmd, PowerShell of Bash) een nieuwe map voor de app, en navigeer naar deze map.

mkdir myapp && cd myapp

Voer de opdracht gradle init uit vanuit uw werkmap. Met deze opdracht maakt u essentiële buildbestanden voor Gradle, inclusief build.gradle.kts, dat tijdens runtime wordt gebruikt om de toepassing te maken en te configureren.

gradle init --type basic

Wanneer u wordt gevraagd om een DSL te kiezen, selecteert u Kotlin.

De Java SDK installeren

Deze quickstart maakt gebruik van de Gradle-afhankelijkheidsmanager. U vindt de clientbibliotheek en informatie voor andere afhankelijkheidsbeheerders in de Maven Central Repository.

Zoek build.gradle.kts en open het met uw favoriete IDE of teksteditor. Kopieer het vervolgens in de volgende buildconfiguratie. Deze configuratie definieert het project als een Java-toepassing waarvan het toegangspunt de klasse OpenAIQuickstart is. De Azure AI Vision-bibliotheek wordt geïmporteerd.

plugins {
    java
    application
}
application { 
    mainClass.set("GetCompletionsSample")
}
repositories {
    mavenCentral()
}
dependencies {
    implementation(group = "com.azure", name = "azure-ai-openai", version = "1.0.0-beta.3")
    implementation("org.slf4j:slf4j-simple:1.7.9")
}

Een voorbeeldtoepassing maken

  1. Maak een Java-bestand.

    Voer de volgende opdracht uit vanuit uw werkmap om een projectbronmap te maken:

    mkdir -p src/main/java
    

    Navigeer naar de nieuwe map en maak een bestand met de naam GetCompletionsSample.java.

  2. Open GetCompletionsSample.java in de gewenste editor of IDE en plak de volgende code.

    package com.azure.ai.openai.usage;
    
    import com.azure.ai.openai.OpenAIClient;
    import com.azure.ai.openai.OpenAIClientBuilder;
    import com.azure.ai.openai.models.Choice;
    import com.azure.ai.openai.models.Completions;
    import com.azure.ai.openai.models.CompletionsOptions;
    import com.azure.ai.openai.models.CompletionsUsage;
    import com.azure.core.credential.AzureKeyCredential;
    
    import java.util.ArrayList;
    import java.util.List;
    
    public class GetCompletionsSample {
    
        public static void main(String[] args) {
            String azureOpenaiKey = System.getenv("AZURE_OPENAI_API_KEY");;
            String endpoint = System.getenv("AZURE_OPENAI_ENDPOINT");;
            String deploymentOrModelId = "gpt-35-turbo-instruct";
    
            OpenAIClient client = new OpenAIClientBuilder()
                .endpoint(endpoint)
                .credential(new AzureKeyCredential(azureOpenaiKey))
                .buildClient();
    
            List<String> prompt = new ArrayList<>();
            prompt.add("When was Microsoft founded?");
    
            Completions completions = client.getCompletions(deploymentOrModelId, new CompletionsOptions(prompt));
    
            System.out.printf("Model ID=%s is created at %s.%n", completions.getId(), completions.getCreatedAt());
            for (Choice choice : completions.getChoices()) {
                System.out.printf("Index: %d, Text: %s.%n", choice.getIndex(), choice.getText());
            }
    
            CompletionsUsage usage = completions.getUsage();
            System.out.printf("Usage: number of prompt token is %d, "
                    + "number of completion token is %d, and number of total tokens in request and response is %d.%n",
                usage.getPromptTokens(), usage.getCompletionTokens(), usage.getTotalTokens());
        }
    }
    

    Belangrijk

    Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen, zoals Azure Key Vault. Zie het artikel over beveiliging van Azure AI-services voor meer informatie over referentiebeveiliging.

  3. Ga terug naar de hoofdmap van het project en bouw de app met:

    gradle build
    

    Voer het vervolgens uit met de gradle run opdracht:

    gradle run
    

Uitvoer

Model ID=cmpl-7JZRbWuEuHX8ozzG3BXC2v37q90mL is created at 1684898835.
Index: 0, Text:

Microsoft was founded on April 4, 1975..
Usage: number of prompt token is 5, number of completion token is 11, and number of total tokens in request and response is 16.

Resources opschonen

Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource verwijderen. Voordat u de resource verwijdert, moet u eerst geïmplementeerde modellen verwijderen.

Volgende stappen

Voorbeeld van broncodeartefacten (Maven) | |

Vereisten

Instellingen

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 Azure AI Studio. 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

Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.

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

Notitie

In Spring AI wordt de modelnaam standaard ingesteld op gpt-35-turbo. Het is alleen nodig om de SPRING_AI_AZURE_OPENAI_MODEL waarde op te geven als u een model met een andere naam hebt geïmplementeerd.

export SPRING_AI_AZURE_OPENAI_API_KEY="REPLACE_WITH_YOUR_KEY_VALUE_HERE"
export SPRING_AI_AZURE_OPENAI_ENDPOINT="REPLACE_WITH_YOUR_ENDPOINT_HERE"
export SPRING_AI_AZURE_OPENAI_MODEL="REPLACE_WITH_YOUR_MODEL_NAME_HERE"

Een nieuwe Spring-toepassing maken

Maak een nieuw Spring-project.

Maak in een Bash-venster een nieuwe map voor uw app en navigeer ernaartoe.

mkdir ai-completion-demo && cd ai-completion-demo

Voer de opdracht spring init uit vanuit uw werkmap. Met deze opdracht maakt u een standaardmapstructuur voor uw Spring-project, inclusief het belangrijkste Bronbestand van Java-klasse en het pom.xml-bestand dat wordt gebruikt voor het beheren van op Maven gebaseerde projecten.

spring init -a ai-completion-demo -n AICompletion --force --build maven -x

De gegenereerde bestanden en mappen lijken op de volgende structuur:

ai-completion-demo/
|-- pom.xml
|-- mvn
|-- mvn.cmd
|-- HELP.md
|-- src/
    |-- main/
    |   |-- resources/
    |   |   |-- application.properties
    |   |-- java/
    |       |-- com/
    |           |-- example/
    |               |-- aicompletiondemo/
    |                   |-- AiCompletionApplication.java
    |-- test/
        |-- java/
            |-- com/
                |-- example/
                    |-- aicompletiondemo/
                        |-- AiCompletionApplicationTests.java

De Spring-toepassing bewerken

  1. Bewerk het pom.xml bestand.

    Open vanuit de hoofdmap van de projectmap het pom.xml-bestand in de gewenste editor of IDE en overschrijf het bestand met de volgende inhoud:

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>3.2.0</version>
            <relativePath/> <!-- lookup parent from repository -->
        </parent>
        <groupId>com.example</groupId>
        <artifactId>ai-completion-demo</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <name>AICompletion</name>
        <description>Demo project for Spring Boot</description>
        <properties>
            <java.version>17</java.version>
        </properties>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.experimental.ai</groupId>
                <artifactId>spring-ai-azure-openai-spring-boot-starter</artifactId>
                <version>0.7.0-SNAPSHOT</version>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
            </dependency>
        </dependencies>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
            </plugins>
        </build>
        <repositories>
            <repository>
                <id>spring-snapshots</id>
                <name>Spring Snapshots</name>
                <url>https://repo.spring.io/snapshot</url>
                <releases>
                    <enabled>false</enabled>
                </releases>
            </repository>
        </repositories>
    </project>
    
  2. Open in de map src/main/java/com/example/aicompletiondemo AiCompletionApplication.java in uw favoriete editor of IDE en plak de volgende code:

    package com.example.aicompletiondemo;
    
    import java.util.Collections;
    import java.util.List;
    
    import org.springframework.ai.client.AiClient;
    import org.springframework.ai.prompt.Prompt;
    import org.springframework.ai.prompt.messages.Message;
    import org.springframework.ai.prompt.messages.MessageType;
    import org.springframework.ai.prompt.messages.UserMessage;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.CommandLineRunner;
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    @SpringBootApplication
    public class AiCompletionApplication implements CommandLineRunner
    {
        private static final String ROLE_INFO_KEY = "role";
    
        @Autowired
        private AiClient aiClient;
    
        public static void main(String[] args) {
            SpringApplication.run(AiCompletionApplication.class, args);
        }
    
        @Override
        public void run(String... args) throws Exception
        {
            System.out.println(String.format("Sending completion prompt to AI service. One moment please...\r\n"));
    
            final List<Message> msgs =
                    Collections.singletonList(new UserMessage("When was Microsoft founded?"));
    
            final var resps = aiClient.generate(new Prompt(msgs));
    
            System.out.println(String.format("Prompt created %d generated response(s).", resps.getGenerations().size()));
    
            resps.getGenerations().stream()
              .forEach(gen -> {
                  final var role = gen.getInfo().getOrDefault(ROLE_INFO_KEY, MessageType.ASSISTANT.getValue());
    
                  System.out.println(String.format("Generated respose from \"%s\": %s", role, gen.getText()));
              });
        }
    
    }
    

    Belangrijk

    Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen, zoals Azure Key Vault. Zie het artikel over beveiliging van Azure AI-services voor meer informatie over referentiebeveiliging.

  3. Ga terug naar de hoofdmap van het project en voer de app uit met behulp van de volgende opdracht:

    ./mvnw spring-boot:run
    

Uitvoer

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v3.1.5)

2023-11-07T12:47:46.126-06:00  INFO 98687 --- [           main] c.e.a.AiCompletionApplication            : No active profile set, falling back to 1 default profile: "default"
2023-11-07T12:47:46.823-06:00  INFO 98687 --- [           main] c.e.a.AiCompletionApplication            : Started AiCompletionApplication in 0.925 seconds (process running for 1.238)
Sending completion prompt to AI service. One moment please...

Prompt created 1 generated response(s).
Generated respose from "assistant": Microsoft was founded on April 4, 1975.

Resources opschonen

Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource verwijderen. Voordat u de resource verwijdert, moet u eerst geïmplementeerde modellen verwijderen.

Volgende stappen

Bekijk de GitHub-opslagplaats met Azure OpenAI-voorbeelden voor meer voorbeelden

Voorbeelden van broncodepakket | (npm) |

Notitie

Dit artikel is bijgewerkt om het nieuwste OpenAI npm-pakket te gebruiken dat nu volledig ondersteuning biedt voor Azure OpenAI. Als u op zoek bent naar codevoorbeelden voor de verouderde Azure OpenAI JavaScript SDK, zijn ze momenteel nog steeds beschikbaar in deze opslagplaats.

Vereisten

Instellingen

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 Azure AI Studio. 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

Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.

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" 

Maak in een consolevenster (zoals cmd, PowerShell of Bash) een nieuwe map voor de app, en navigeer naar deze map.

De clientbibliotheek installeren

Installeer de vereiste pakketten voor JavaScript met npm vanuit de context van uw nieuwe map:

npm install openai @azure/identity

Het package.json-bestand van uw app wordt bijgewerkt met de afhankelijkheden.

Een voorbeeldtoepassing maken

Open een opdrachtprompt waarin u het nieuwe project hebt gemaakt en maak een nieuw bestand met de naam Completion.js. Kopieer de volgende code naar het Completion.js-bestand.

const { AzureOpenAI } = require("openai");
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 apiVersion = "2024-04-01-preview";
const deployment = "gpt-35-turbo-instruct"; //The deployment name for your completions API model. The instruct model is the only new model that supports the legacy API.

// keyless authentication    
const credential = new DefaultAzureCredential();
const scope = "https://cognitiveservices.azure.com/.default";
const azureADTokenProvider = getBearerTokenProvider(credential, scope);

const prompt = ["When was Microsoft founded?"];

async function main() {
  console.log("== Get completions Sample ==");

  const client = new AzureOpenAI({ endpoint, azureADTokenProvider, apiVersion, deployment });  

  const result = await client.completions.create({ prompt, model: deployment, max_tokens: 128 });

  for (const choice of result.choices) {
    console.log(choice.text);
  }
}

main().catch((err) => {
  console.error("Error occurred:", err);
});

module.exports = { main };

Voer het script uit met de volgende opdracht:

node.exe Completion.js

Uitvoer

== Get completions Sample ==

Microsoft was founded on April 4, 1975.

Notitie

Als u de fout krijgt: Er is een fout opgetreden: OpenAIError: De apiKey argumenten sluiten azureADTokenProvider elkaar wederzijds uit. Er kan slechts één tegelijk worden doorgegeven. Mogelijk moet u een vooraf bestaande omgevingsvariabele voor de API-sleutel uit uw systeem verwijderen. Hoewel het codevoorbeeld microsoft Entra-id niet expliciet verwijst naar de omgevingsvariabele van de API-sleutel, wordt deze fout nog steeds gegenereerd als er een aanwezig is op het systeem dat dit voorbeeld uitvoert.

Resources opschonen

Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource verwijderen. Voordat u de resource verwijdert, moet u eerst geïmplementeerde modellen verwijderen.

Volgende stappen

Voorbeelden van broncodepakket | (npm) |

Notitie

Dit artikel is bijgewerkt om het nieuwste OpenAI npm-pakket te gebruiken dat nu volledig ondersteuning biedt voor Azure OpenAI. Als u op zoek bent naar codevoorbeelden voor de verouderde Azure OpenAI JavaScript SDK, zijn ze momenteel nog steeds beschikbaar in deze opslagplaats.

Vereisten

Instellingen

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 Azure AI Studio. 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

Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.

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" 

Maak in een consolevenster (zoals cmd, PowerShell of Bash) een nieuwe map voor de app, en navigeer naar deze map.

De clientbibliotheek installeren

Installeer de vereiste pakketten voor JavaScript met npm vanuit de context van uw nieuwe map:

npm install openai @azure/identity

Het package.json-bestand van uw app wordt bijgewerkt met de afhankelijkheden.

Een voorbeeldtoepassing maken

Open een opdrachtprompt waarin u het nieuwe project hebt gemaakt en maak een nieuw bestand met de naam Completion.ts. Kopieer de volgende code naar het Completion.ts-bestand.

import { 
  DefaultAzureCredential, 
  getBearerTokenProvider 
} from "@azure/identity";
import { AzureOpenAI } from "openai";
import { type Completion } 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>";

// Required Azure OpenAI deployment name and API version
const apiVersion = "2024-08-01-preview";
const deploymentName = "gpt-35-turbo-instruct";

// keyless authentication    
const credential = new DefaultAzureCredential();
const scope = "https://cognitiveservices.azure.com/.default";
const azureADTokenProvider = getBearerTokenProvider(credential, scope);

// Chat prompt and max tokens
const prompt = ["When was Microsoft founded?"];
const maxTokens = 128;

function getClient(): AzureOpenAI {
  return new AzureOpenAI({
    endpoint,
    azureADTokenProvider,
    apiVersion,
    deployment: deploymentName,
  });
}
async function getCompletion(
  client: AzureOpenAI,
  prompt: string[],
  max_tokens: number
): Promise<Completion> {
  return client.completions.create({
    prompt,
    model: "",
    max_tokens,
  });
}
async function printChoices(completion: Completion): Promise<void> {
  for (const choice of completion.choices) {
    console.log(choice.text);
  }
}
export async function main() {
  console.log("== Get completions Sample ==");

  const client = getClient();
  const completion = await getCompletion(client, prompt, maxTokens);
  await printChoices(completion);
}

main().catch((err) => {
  console.error("Error occurred:", err);
});

Bouw het script met de volgende opdracht:

tsc

Voer het script uit met de volgende opdracht:

node.exe Completion.js

Uitvoer

== Get completions Sample ==

Microsoft was founded on April 4, 1975.

Notitie

Als u de fout krijgt: Er is een fout opgetreden: OpenAIError: De apiKey argumenten sluiten azureADTokenProvider elkaar wederzijds uit. Er kan slechts één tegelijk worden doorgegeven. Mogelijk moet u een vooraf bestaande omgevingsvariabele voor de API-sleutel uit uw systeem verwijderen. Hoewel het codevoorbeeld microsoft Entra-id niet expliciet verwijst naar de omgevingsvariabele van de API-sleutel, wordt deze fout nog steeds gegenereerd als er een aanwezig is op het systeem dat dit voorbeeld uitvoert.

Resources opschonen

Als u een Azure OpenAI-resource wilt opschonen en verwijderen, kunt u de resource verwijderen. Voordat u de resource verwijdert, moet u eerst geïmplementeerde modellen verwijderen.

Volgende stappen

| 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 een aanroep wilt maken op basis van de Azure OpenAI-service, hebt u het volgende nodig:

Naam van de variabele Weergegeven als
ENDPOINT Deze waarde vindt u in de sectie Sleutels en eindpunt bij het controleren van uw resource vanuit Azure Portal. U kunt het eindpunt ook vinden via de pagina Implementaties in Azure AI Studio. Een voorbeeldeindpunt is: https://docs-test-001.openai.azure.com/.
API-KEY Deze waarde vindt u in de sectie Sleutels en eindpunt bij het controleren van uw resource vanuit Azure Portal. U kunt KEY1 of KEY2 gebruiken.
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 of via de pagina Implementaties in Azure AI Studio.

Ga naar uw resource in Azure Portal. De sleutels en het 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 overzichtsblade voor een Azure OpenAI-resource in De Azure-portal met de locatie met eindpunt- en toegangssleutels in rood omcirkeld.

Omgevingsvariabelen

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

Belangrijk

Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.

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

  1. Maak een nieuw Python-bestand met de naam quickstart.py. Open deze vervolgens in uw favoriete editor of IDE.

  2. Vervang de inhoud van quickstart.py door de volgende code. Wijzig de code om uw sleutel, eindpunt en implementatienaam toe te voegen:

import os
from openai import AzureOpenAI
    
client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-02-01",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )
    
deployment_name='REPLACE_WITH_YOUR_DEPLOYMENT_NAME' #This will correspond to the custom name you chose for your deployment when you deployed a model. Use a gpt-35-turbo-instruct deployment. 
    
# Send a completion call to generate an answer
print('Sending a test completion job')
start_phrase = 'Write a tagline for an ice cream shop. '
response = client.completions.create(model=deployment_name, prompt=start_phrase, max_tokens=10)
print(start_phrase+response.choices[0].text)

Belangrijk

Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen, zoals Azure Key Vault. Zie het artikel over beveiliging van Azure AI-services voor meer informatie over referentiebeveiliging.

  1. Voer de toepassing uit met de python opdracht in uw quickstart-bestand:

    python quickstart.py
    

Uitvoer

De uitvoer bevat antwoordtekst na de Write a tagline for an ice cream shop. prompt. Azure OpenAI is The coldest ice cream in town! geretourneerd in dit voorbeeld.

Sending a test completion job
Write a tagline for an ice cream shop. The coldest ice cream in town!

Voer de code nog een paar keer uit om te zien welke andere typen antwoorden u krijgt, omdat het antwoord niet altijd hetzelfde is.

Inzicht in uw resultaten

Omdat ons voorbeeld Write a tagline for an ice cream shop. weinig context biedt, is het normaal dat het model niet altijd verwachte resultaten retourneert. U kunt het maximum aantal tokens aanpassen als het antwoord onverwacht of afgekapt lijkt.

Azure OpenAI voert ook con tentmodus ration uit op de promptinvoer en gegenereerde uitvoer. De prompts of antwoorden kunnen worden gefilterd als schadelijke inhoud wordt gedetecteerd. Zie het artikel over het inhoudsfilter voor meer informatie.

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.

Volgende stappen

Vereisten

Instellingen

Sleutel en eindpunt ophalen

Als u azure OpenAI wilt aanroepen, hebt u het volgende nodig:

Naam van de variabele Waarde
ENDPOINT Deze waarde vindt u in de sectie Sleutels en eindpunt bij het onderzoeken van uw resource vanuit de Azure Portal. U kunt het eindpunt ook vinden via de pagina Implementaties in Azure AI Studio. 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.
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-implementaties> in Azure Portal of via de pagina Implementaties in Azure AI Studio.

Ga naar uw resource in Azure Portal. Het eindpunt en de sleutels 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 overzichtsblade voor een Azure OpenAI-resource in De Azure-portal met de locatie met eindpunt- en toegangssleutels in rood omcirkeld.

Omgevingsvariabelen

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

Belangrijk

Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.

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" 

REST-API

Voer in een bash-shell de volgende opdracht uit. U moet vervangen door gpt-35-turbo-instruct de implementatienaam die u hebt gekozen bij het implementeren van het gpt-35-turbo-instruct model. Als u de modelnaam invoert, treedt er een fout op, tenzij u een implementatienaam hebt gekozen die identiek is aan de naam van het onderliggende model.

curl $AZURE_OPENAI_ENDPOINT/openai/deployments/gpt-35-turbo-instruct/completions?api-version=2024-02-01 \
  -H "Content-Type: application/json" \
  -H "api-key: $AZURE_OPENAI_API_KEY" \
  -d "{\"prompt\": \"Once upon a time\"}"

De indeling van de eerste regel van de opdracht met een voorbeeldeindpunt wordt als volgt curl https://docs-test-001.openai.azure.com/openai/deployments/{YOUR-DEPLOYMENT_NAME_HERE}/completions?api-version=2024-02-01 \weergegeven. Als er een fout wordt weergegeven, controleert u of er geen verdubbeling van de / scheiding tussen uw eindpunt en /openai/deployments.

Als u deze opdracht wilt uitvoeren in een normale Windows-opdrachtprompt, moet u de tekst wijzigen om de \ regeleinden te verwijderen.

Belangrijk

Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen, zoals Azure Key Vault. Zie het artikel over beveiliging van Azure AI-services voor meer informatie over referentiebeveiliging.

Uitvoer

De uitvoer van de voltooiings-API ziet er als volgt uit.

{
    "id": "ID of your call",
    "object": "text_completion",
    "created": 1675444965,
    "model": "gpt-35-turbo-instruct",
    "choices": [
        {
            "text": " there lived in a little village a woman who was known as the meanest",
            "index": 0,
            "finish_reason": "length",
            "logprobs": null
        }
    ],
    "usage": {
        "completion_tokens": 16,
        "prompt_tokens": 3,
        "total_tokens": 19
    }
}

De Azure OpenAI-service voert ook con tentmodus ration uit op de promptinvoer en gegenereerde uitvoer. De prompts of antwoorden kunnen worden gefilterd als schadelijke inhoud wordt gedetecteerd. Zie het artikel over het inhoudsfilter voor meer informatie.

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.

Volgende stappen

Vereisten

Sleutel en eindpunt ophalen

Als u een aanroep wilt maken op basis van de Azure OpenAI-service, hebt u het volgende nodig:

Naam van de variabele Waarde
ENDPOINT Deze waarde vindt u in de sectie Sleutels en eindpunt bij het onderzoeken van uw resource vanuit de Azure Portal. U kunt het eindpunt ook vinden via de pagina Implementaties in Azure AI Studio. 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.
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-implementaties> in Azure Portal of via de pagina Implementaties in Azure AI Studio.

Ga naar uw resource in Azure Portal. Het eindpunt en de sleutels 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 overzichtsblade voor een Azure OpenAI-resource in De Azure-portal met de locatie met eindpunt- en toegangssleutels in rood omcirkeld.

Omgevingsvariabelen

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

Belangrijk

Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.

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

$Env:AZURE_OPENAI_API_KEY = 'YOUR_KEY_VALUE'
$Env:AZURE_OPENAI_ENDPOINT = 'YOUR_ENDPOINT'

Een nieuw PowerShell-script maken

  1. Maak een nieuw PowerShell-bestand met de naam quickstart.ps1. Open deze vervolgens in uw favoriete editor of IDE.

  2. Vervang de inhoud van quickstart.ps1 door de volgende code. Wijzig de code om uw sleutel, eindpunt en implementatienaam toe te voegen:

    # Azure OpenAI metadata variables
    $openai = @{
        api_key     = $Env:AZURE_OPENAI_API_KEY
        api_base    = $Env:AZURE_OPENAI_ENDPOINT # your endpoint should look like the following https://YOUR_RESOURCE_NAME.openai.azure.com/
        api_version = '2024-02-01' # this may change in the future
        name        = 'YOUR-DEPLOYMENT-NAME-HERE' #This will correspond to the custom name you chose for your deployment when you deployed a model.
    }
    
    # Completion text
    $prompt = 'Once upon a time...'
    
    # Header for authentication
    $headers = [ordered]@{
        'api-key' = $openai.api_key
    }
    
    # Adjust these values to fine-tune completions
    $body = [ordered]@{
        prompt      = $prompt
        max_tokens  = 10
        temperature = 2
        top_p       = 0.5
    } | ConvertTo-Json
    
    # Send a completion call to generate an answer
    $url = "$($openai.api_base)/openai/deployments/$($openai.name)/completions?api-version=$($openai.api_version)"
    
    $response = Invoke-RestMethod -Uri $url -Headers $headers -Body $body -Method Post -ContentType 'application/json'
    return "$prompt`n$($response.choices[0].text)"
    

    Belangrijk

    Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen, zoals Het PowerShell-geheimbeheer met Azure Key Vault. Zie het artikel over beveiliging van Azure AI-services voor meer informatie over referentiebeveiliging.

  3. Voer het script uit met behulp van PowerShell:

    ./quickstart.ps1
    

Uitvoer

De uitvoer bevat antwoordtekst na de Once upon a time prompt. Azure OpenAI is There was a world beyond the mist...where a geretourneerd in dit voorbeeld.

Once upon a time...
 There was a world beyond the mist...where a

Voer de code nog een paar keer uit om te zien welke andere typen antwoorden u krijgt, omdat het antwoord niet altijd hetzelfde is.

Inzicht in uw resultaten

Omdat ons voorbeeld Once upon a time... weinig context biedt, is het normaal dat het model niet altijd verwachte resultaten retourneert. U kunt het maximum aantal tokens aanpassen als het antwoord onverwacht of afgekapt lijkt.

Azure OpenAI voert ook con tentmodus ration uit op de promptinvoer en gegenereerde uitvoer. De prompts of antwoorden kunnen worden gefilterd als schadelijke inhoud wordt gedetecteerd. Zie het artikel over het inhoudsfilter voor meer informatie.

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.

Volgende stappen