Rövid útmutató: A szöveg létrehozásának első lépései az örökölt befejezési API használatával
Ez a cikk az Azure OpenAI első hívásainak megkezdéséhez használható.
Előfeltételek
- Azure-előfizetés – Hozzon létre egyet ingyenesen.
- Azure OpenAI-erőforrás üzembe helyezett modellel. A modellek üzembe helyezéséről a modellek üzembe helyezésének ismertetőjében talál további információt.
Ugrás az Azure AI Foundryre
Lépjen az Azure AI Foundrybe , és jelentkezzen be olyan hitelesítő adatokkal, amelyek hozzáférnek az Azure OpenAI-erőforráshoz. A bejelentkezési munkafolyamat során vagy után válassza ki a megfelelő könyvtárat, Azure-előfizetést és Azure OpenAI-erőforrást.
Játszótér
Kezdje el az Azure OpenAI képességeit kód nélküli megközelítéssel a befejezési játszótéren keresztül. Ez egyszerűen egy szövegdoboz, ahol elküldhet egy kérést a befejezés létrehozásához. Ezen a lapon gyorsan iterálhat és kísérletezhet a képességekkel.
Kiválaszthat egy üzembe helyezést, és néhány előre betöltött példa közül választhat az első lépésekhez. Ha az erőforrás nem rendelkezik központi telepítéssel, válassza a Központi telepítés létrehozása lehetőséget, és kövesse a varázsló utasításait. A modellek üzembe helyezéséről a modellek üzembe helyezésének ismertetőjében talál további információt.
Kísérletezhet a konfigurációs beállításokkal, például a hőmérséklettel és a válasz előtti szöveggel a feladat teljesítményének javítása érdekében. Az egyes paraméterekről a REST API-ban olvashat bővebben.
- A Létrehozás gombra kattintva elküldi a beírt szöveget a befejezési API-nak, és az eredményeket visszaküldi a szövegmezőbe.
- A Visszavonás gombra kattintva visszavonhatja az előző generációs hívást.
- Kattintson az Újragenerálás gombra a visszavonás és a létrehozási hívás együttes befejezéséhez.
Az Azure OpenAI emellett con sátormód rationt is végez a parancssori bemeneteken és a létrehozott kimeneteken. A rendszer szűrheti az utasításokat vagy válaszokat, ha káros tartalmat észlel. További információkért tekintse meg a tartalomszűrő cikket.
A Befejezések játszótéren megtekintheti a Python- és curl-kódmintákat is, amelyek a kiválasztott beállításoknak megfelelően előre kitöltöttek. Csak válassza a Példakód megtekintése legördülő lista melletti kódot . Az OpenAI Python SDK, curl vagy más REST API-ügyféllel is írhat egy alkalmazást, hogy elvégezze ugyanezt a feladatot.
Szövegösszesítés kipróbálása
Ha az Azure OpenAI-t szeretné használni a szövegösszesítéshez a Befejezések játszótéren, kövesse az alábbi lépéseket:
Jelentkezzen be az Azure AI Foundrybe.
Válassza ki az előfizetést és az OpenAI-erőforrást, amellyel dolgozni szeretne.
Válassza a Befejezések játszóteret a kezdőlapon.
Válassza ki az üzembe helyezést az Üzembe helyezések legördülő listából. Ha az erőforrás nem rendelkezik központi telepítéssel, válassza az Üzembe helyezés létrehozása lehetőséget, majd tekintse meg újra ezt a lépést.
Adjon meg egy kérést a modellhez.
Válassza ki
Generate
. Az Azure OpenAI megkísérli rögzíteni a szövegkörnyezetet, és tömören újrafogalmazni. A következő szöveghez hasonló eredményt kell kapnia:
A válasz pontossága modellenként változhat. Az gpt-35-turbo-instruct
ebben a példában szereplő modell jól megfelel az ilyen típusú összegzéseknek, de általában azt javasoljuk, hogy használja az alternatív csevegés-befejezési API-t, kivéve, ha van egy konkrét használati esete, amely különösen alkalmas a befejezési API-ra.
Az erőforrások eltávolítása
Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást vagy az erőforráscsoportot. Az erőforráscsoport törlése a hozzá társított egyéb erőforrásokat is törli.
Következő lépések
- A befejezésekkel kapcsolatos útmutatónkból többet is megtudhat arról, hogyan hozhatja létre a legjobb befejezést.
- További példákért tekintse meg az Azure OpenAI-minták GitHub-adattárát.
Forráskódcsomag (NuGet) | -minták |
Előfeltételek
- Azure-előfizetés – Ingyenes létrehozás
- A .NET Core aktuális verziója
- Egy Azure OpenAI-szolgáltatáserőforrás a
gpt-35-turbo-instruct
modell üzembe helyezésével. A modellek üzembe helyezéséről a modellek üzembe helyezésének ismertetőjében talál további információt.
Beállítás
Egy új .NET Core-alkalmazás létrehozása
Egy konzolablakban (például parancsmag, PowerShell vagy Bash) a dotnet new
paranccsal hozzon létre egy új konzolalkalmazást a névvel azure-openai-quickstart
. Ez a parancs létrehoz egy egyszerű "„Helló világ!” alkalmazás" projektet egyetlen C#-forrásfájllal: Program.cs.
dotnet new console -n azure-openai-quickstart
Módosítsa a könyvtárat az újonnan létrehozott alkalmazásmappára. Az alkalmazást a következőkkel hozhatja létre:
dotnet build
A buildkimenet nem tartalmazhat figyelmeztetést vagy hibát.
...
Build succeeded.
0 Warning(s)
0 Error(s)
...
Telepítse az OpenAI .NET ügyfélkódtárat a következőkkel:
dotnet add package Azure.AI.OpenAI --version 1.0.0-beta.17
Feljegyzés
A befejezési API csak az ügyfélkódtár verziójában és korábbi Azure.AI.OpenAI
verzióiban 1.0.0-beta.17
érhető el. A legújabb 2.0.0
és magasabb szintű verzió Azure.AI.OpenAI
esetében a befejezések generálásának ajánlott módszere a csevegés befejezései API használata.
Kulcs és végpont lekérése
Az Azure OpenAI-ra való sikeres híváshoz egy végpontra és egy kulcsra van szükség.
Változó neve | Érték |
---|---|
ENDPOINT |
A szolgáltatásvégpont a Kulcsok > Végpont szakaszban található, amikor az erőforrást az Azure Portalról vizsgálja. A végpontot az Azure AI Foundry portál Üzembe helyezések lapján is megtalálhatja. Példavégpont: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Ez az érték a Kulcsok és végpont szakaszban található meg, amikor megvizsgálja az erőforrást az Azure Portalon. A következők bármelyikét használhatja: KEY1 vagy KEY2 . |
Nyissa meg az erőforrást az Azure Portalon. A Kulcsok > végpont szakasz az Erőforrás-kezelés szakaszban található. Másolja ki a végpontot és a hozzáférési kulcsot, mivel mindkettőre szüksége lesz az API-hívások hitelesítéséhez. A következők bármelyikét használhatja: KEY1
vagy KEY2
. A két kulcs mindig lehetővé teszi a kulcsok biztonságos elforgatását és újragenerálását anélkül, hogy szolgáltatáskimaradást okoz.
Környezeti változók
Állandó környezeti változók létrehozása és hozzárendelése a kulcshoz és a végponthoz.
Fontos
Az Azure-erőforrásokhoz tartozó felügyelt identitásokkal rendelkező Microsoft Entra ID-hitelesítést javasoljuk, hogy ne tárolja a hitelesítő adatokat a felhőben futó alkalmazásokkal.
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. API-kulcsok használata esetén biztonságosan tárolhatja őket az Azure Key Vaultban, rendszeresen elforgathatja a kulcsokat, és szerepköralapú hozzáférés-vezérléssel és hálózati hozzáférés-korlátozásokkal korlátozhatja az Azure Key Vaulthoz való hozzáférést. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Mintaalkalmazás létrehozása
Nyissa meg a program.cs fájlt a projektkönyvtárban, és cserélje le a következő kódra:
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}");
Fontos
Éles környezetben biztonságos módon tárolhatja és érheti el a hitelesítő adatait, például az Azure Key Vaultot. A hitelesítő adatok biztonságával kapcsolatos további információkért tekintse meg az Azure AI-szolgáltatások biztonsági cikkét.
dotnet run program.cs
Hozam
Chatbot:
Microsoft was founded on April 4, 1975.
Az erőforrások eltávolítása
Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást. Az erőforrás törlése előtt törölnie kell az üzembe helyezett modelleket.
Következő lépések
- További példákért tekintse meg az Azure OpenAI-minták GitHub-adattárát
Forráskódcsomag (Go)| -minták |
Előfeltételek
- Azure-előfizetés – Ingyenes létrehozás
- Helyileg telepített 1.21.0-s vagy újabb verzió.
- Egy Azure OpenAI-szolgáltatáserőforrás a
gpt-35-turbo-instuct
modell üzembe helyezésével. A modellek üzembe helyezéséről a modellek üzembe helyezésének ismertetőjében talál további információt.
Beállítás
Kulcs és végpont lekérése
Az Azure OpenAI-ra való sikeres híváshoz egy végpontra és egy kulcsra van szükség.
Változó neve | Érték |
---|---|
ENDPOINT |
A szolgáltatásvégpont a Kulcsok > Végpont szakaszban található, amikor az erőforrást az Azure Portalról vizsgálja. A végpontot az Azure AI Foundry portál Üzembe helyezések lapján is megtalálhatja. Példavégpont: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Ez az érték a Kulcsok és végpont szakaszban található meg, amikor megvizsgálja az erőforrást az Azure Portalon. A következők bármelyikét használhatja: KEY1 vagy KEY2 . |
Nyissa meg az erőforrást az Azure Portalon. A Kulcsok > végpont szakasz az Erőforrás-kezelés szakaszban található. Másolja ki a végpontot és a hozzáférési kulcsot, mivel mindkettőre szüksége lesz az API-hívások hitelesítéséhez. A következők bármelyikét használhatja: KEY1
vagy KEY2
. A két kulcs mindig lehetővé teszi a kulcsok biztonságos elforgatását és újragenerálását anélkül, hogy szolgáltatáskimaradást okoz.
Környezeti változók
Állandó környezeti változók létrehozása és hozzárendelése a kulcshoz és a végponthoz.
Fontos
Az Azure-erőforrásokhoz tartozó felügyelt identitásokkal rendelkező Microsoft Entra ID-hitelesítést javasoljuk, hogy ne tárolja a hitelesítő adatokat a felhőben futó alkalmazásokkal.
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. API-kulcsok használata esetén biztonságosan tárolhatja őket az Azure Key Vaultban, rendszeresen elforgathatja a kulcsokat, és szerepköralapú hozzáférés-vezérléssel és hálózati hozzáférés-korlátozásokkal korlátozhatja az Azure Key Vaulthoz való hozzáférést. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Mintaalkalmazás létrehozása
Hozzon létre egy új, completions.go nevű fájlt. Másolja a következő kódot a completions.go fájlba.
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)
}
}
Fontos
Éles környezetben biztonságos módon tárolhatja és érheti el a hitelesítő adatait, például az Azure Key Vaultot. A hitelesítő adatok biztonságával kapcsolatos további információkért tekintse meg az Azure AI-szolgáltatások biztonsági cikkét.
Most nyisson meg egy parancssort, és futtassa a következőt:
go mod init completions.go
Következő futtatás:
go mod tidy
go run completions.go
Hozam
== Get completions Sample ==
Microsoft was founded on April 4, 1975.
Az erőforrások eltávolítása
Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást. Az erőforrás törlése előtt törölnie kell az üzembe helyezett modelleket.
Következő lépések
- További példákért tekintse meg az Azure OpenAI-minták GitHub-adattárát
Forráskód-összetevő (Maven) | -minták |
Előfeltételek
- Azure-előfizetés – Ingyenes létrehozás
- A Java Development Kit (JDK) aktuális verziója
- A Gradle buildelési eszköz vagy egy másik függőségkezelő.
- Egy Azure OpenAI-szolgáltatáserőforrás a
gpt-35-turbo-instruct
modell üzembe helyezésével. A modellek üzembe helyezéséről a modellek üzembe helyezésének ismertetőjében talál további információt.
Beállítás
Kulcs és végpont lekérése
Az Azure OpenAI-ra való sikeres híváshoz egy végpontra és egy kulcsra van szükség.
Változó neve | Érték |
---|---|
ENDPOINT |
A szolgáltatásvégpont a Kulcsok > Végpont szakaszban található, amikor az erőforrást az Azure Portalról vizsgálja. A végpontot az Azure AI Foundry portál Üzembe helyezések lapján is megtalálhatja. Példavégpont: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Ez az érték a Kulcsok és végpont szakaszban található meg, amikor megvizsgálja az erőforrást az Azure Portalon. A következők bármelyikét használhatja: KEY1 vagy KEY2 . |
Nyissa meg az erőforrást az Azure Portalon. A Kulcsok > végpont szakasz az Erőforrás-kezelés szakaszban található. Másolja ki a végpontot és a hozzáférési kulcsot, mivel mindkettőre szüksége lesz az API-hívások hitelesítéséhez. A következők bármelyikét használhatja: KEY1
vagy KEY2
. A két kulcs mindig lehetővé teszi a kulcsok biztonságos elforgatását és újragenerálását anélkül, hogy szolgáltatáskimaradást okoz.
Környezeti változók
Állandó környezeti változók létrehozása és hozzárendelése a kulcshoz és a végponthoz.
Fontos
Az Azure-erőforrásokhoz tartozó felügyelt identitásokkal rendelkező Microsoft Entra ID-hitelesítést javasoljuk, hogy ne tárolja a hitelesítő adatokat a felhőben futó alkalmazásokkal.
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. API-kulcsok használata esetén biztonságosan tárolhatja őket az Azure Key Vaultban, rendszeresen elforgathatja a kulcsokat, és szerepköralapú hozzáférés-vezérléssel és hálózati hozzáférés-korlátozásokkal korlátozhatja az Azure Key Vaulthoz való hozzáférést. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Új Java-alkalmazás létrehozása
Hozzon létre egy új Gradle-projektet.
Egy konzolablakban (pl. cmd, PowerShell vagy Bash) hozzon létre egy új mappát az alkalmazásnak, majd navigáljon oda.
mkdir myapp && cd myapp
Futtassa a gradle init
parancsot a munkakönyvtárból. Ez a parancs alapvető buildfájlokat hoz létre a Gradle-hez, beleértve a build.gradle.kts fájlt, amelyet futásidőben használnak az alkalmazás létrehozásához és konfigurálásához.
gradle init --type basic
Amikor a rendszer kéri, hogy válasszon egy DSL-t, válassza a Kotlin lehetőséget.
A Java SDK telepítése
Ez a rövid útmutató a Gradle függőségkezelőt használja. A Maven Central-adattárban megtalálhatja a többi függőségkezelő ügyfélkódtárát és információit.
Keresse meg a build.gradle.kts fájlt, és nyissa meg a kívánt IDE- vagy szövegszerkesztővel. Ezután másolja a következő buildkonfigurációba. Ez a konfiguráció java-alkalmazásként definiálja a projektet, amelynek belépési pontja az OpenAIQuickstart osztály. Importálja az Azure AI Vision-kódtárat.
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")
}
Mintaalkalmazás létrehozása
Java-fájl létrehozása.
A munkakönyvtárban futtassa a következő parancsot a projekt forrásmappájának létrehozásához:
mkdir -p src/main/java
Lépjen az új mappára, és hozzon létre egy GetCompletionsSample.java nevű fájlt.
Nyissa meg a GetCompletionsSample.java az előnyben részesített szerkesztőben vagy IDE-ben, és illessze be az alábbi kódot.
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()); } }
Fontos
Éles környezetben biztonságos módon tárolhatja és érheti el a hitelesítő adatait, például az Azure Key Vaultot. A hitelesítő adatok biztonságával kapcsolatos további információkért tekintse meg az Azure AI-szolgáltatások biztonsági cikkét.
Lépjen vissza a projekt gyökérmappájához, és hozza létre az alkalmazást a következőkkel:
gradle build
Ezután futtassa a
gradle run
következő paranccsal:gradle run
Hozam
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.
Az erőforrások eltávolítása
Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást. Az erőforrás törlése előtt törölnie kell az üzembe helyezett modelleket.
Következő lépések
- További példákért tekintse meg az Azure OpenAI-minták GitHub-adattárát
Forráskód-összetevők (Maven) | Minta |
Előfeltételek
- Azure-előfizetés – Ingyenes létrehozás
- A Java Development Kit (JDK) aktuális verziója
- A Spring Boot CLI-eszköz
- Egy Azure OpenAI-szolgáltatáserőforrás a
gpt-35-turbo
modell üzembe helyezésével. A modellek üzembe helyezéséről a modellek üzembe helyezésének ismertetőjében talál további információt.
Beállítás
Kulcs és végpont lekérése
Az Azure OpenAI-ra való sikeres híváshoz egy végpontra és egy kulcsra van szükség.
Változó neve | Érték |
---|---|
ENDPOINT |
A szolgáltatásvégpont a Kulcsok > Végpont szakaszban található, amikor az erőforrást az Azure Portalról vizsgálja. A végpontot az Azure AI Foundry portál Üzembe helyezések lapján is megtalálhatja. Példavégpont: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Ez az érték a Kulcsok és végpont szakaszban található meg, amikor megvizsgálja az erőforrást az Azure Portalon. A következők bármelyikét használhatja: KEY1 vagy KEY2 . |
Nyissa meg az erőforrást az Azure Portalon. A Kulcsok > végpont szakasz az Erőforrás-kezelés szakaszban található. Másolja ki a végpontot és a hozzáférési kulcsot, mivel mindkettőre szüksége lesz az API-hívások hitelesítéséhez. A következők bármelyikét használhatja: KEY1
vagy KEY2
. A két kulcs mindig lehetővé teszi a kulcsok biztonságos elforgatását és újragenerálását anélkül, hogy szolgáltatáskimaradást okoz.
Környezeti változók
Állandó környezeti változók létrehozása és hozzárendelése a kulcshoz és a végponthoz.
Fontos
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. HA API-kulcsot használ, biztonságosan tárolja az Azure Key Vaultban. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
Feljegyzés
A Spring AI alapértelmezés szerint a modell nevét adja meg gpt-35-turbo
. Csak akkor kell megadni az SPRING_AI_AZURE_OPENAI_MODEL
értéket, ha egy másik nevű modellt telepített.
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"
Új Spring-alkalmazás létrehozása
Hozzon létre egy új Spring-projektet.
Egy Bash-ablakban hozzon létre egy új könyvtárat az alkalmazáshoz, és navigáljon hozzá.
mkdir ai-completion-demo && cd ai-completion-demo
Futtassa a spring init
parancsot a munkakönyvtárból. Ez a parancs létrehoz egy standard könyvtárstruktúrát a Spring-projekthez, beleértve a fő Java-osztály forrásfájlját és a Maven-alapú projektek kezeléséhez használt pom.xml fájlt.
spring init -a ai-completion-demo -n AICompletion --force --build maven -x
A létrehozott fájlok és mappák a következő struktúrához hasonlítanak:
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
A Spring-alkalmazás szerkesztése
Szerkessze a pom.xml fájlt.
A projektkönyvtár gyökerében nyissa meg a pom.xml fájlt az előnyben részesített szerkesztőben vagy IDE-ben, és írja felül a fájlt a következő tartalommal:
<?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>
Az src/main/java/com/example/aicompletiondemo mappában nyissa meg a AiCompletionApplication.java az előnyben részesített szerkesztőben vagy IDE-ben, és illessze be a következő kódba:
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())); }); } }
Fontos
Éles környezetben biztonságos módon tárolhatja és érheti el a hitelesítő adatait, például az Azure Key Vaultot. A hitelesítő adatok biztonságával kapcsolatos további információkért tekintse meg az Azure AI-szolgáltatások biztonsági cikkét.
Lépjen vissza a projekt gyökérmappájához, és futtassa az alkalmazást az alábbi paranccsal:
./mvnw spring-boot:run
Hozam
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: 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.
Az erőforrások eltávolítása
Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást. Az erőforrás törlése előtt törölnie kell az üzembe helyezett modelleket.
Következő lépések
További példákért tekintse meg az Azure OpenAI-minták GitHub-adattárát
Forráskódcsomag (npm) | minták |
Feljegyzés
Ez az útmutató a legújabb OpenAI npm-csomagot használja, amely mostantól teljes mértékben támogatja az Azure OpenAI-t. Ha az örökölt Azure OpenAI JavaScript SDK-hoz keres példakódokat, azok jelenleg is elérhetők ebben az adattárban.
Előfeltételek
- Azure-előfizetés – Ingyenes létrehozás
- A Node.js LTS-verziói
- A helyi fejlesztési környezetben a jelszó nélküli hitelesítéshez használt Azure CLI az Azure CLI-vel való bejelentkezéssel hozza létre a szükséges környezetet.
- Egy Azure OpenAI-szolgáltatáserőforrás a
gpt-35-turbo-instruct
modell üzembe helyezésével. A modellek üzembe helyezéséről a modellek üzembe helyezésének ismertetőjében talál további információt.
Erőforrásadatok lekérése
Az alkalmazás Azure OpenAI-erőforrással való hitelesítéséhez le kell kérnie a következő adatokat:
További információ a kulcs nélküli hitelesítésről és a környezeti változók beállításáról.
Figyelemfelhívás
Ha az ajánlott kulcs nélküli hitelesítést szeretné használni az SDK-val, győződjön meg arról, hogy a AZURE_OPENAI_API_KEY
környezeti változó nincs beállítva.
Telepítse az ügyfélkódtárat
Egy konzolablakban (pl. cmd, PowerShell vagy Bash) hozzon létre egy új mappát az alkalmazásnak, majd navigáljon oda.
Telepítse a JavaScripthez szükséges csomagokat npm-lel az új címtár környezetéből:
npm install openai @azure/identity
Az alkalmazás package.json fájlja frissül a függőségekkel.
Mintaalkalmazás létrehozása
Nyisson meg egy parancssort, ahol létrehozta az új projektet, és hozzon létre egy Completion.js nevű új fájlt. Másolja a következő kódot a Completion.js fájlba.
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 };
Futtassa a szkriptet a következő paranccsal:
node.exe Completion.js
Hozam
== Get completions Sample ==
Microsoft was founded on April 4, 1975.
Feljegyzés
Ha a következő hibaüzenet jelenik meg: Hiba történt: OpenAIError: Az apiKey
és azureADTokenProvider
az argumentumok kölcsönösen kizárják egymást, egyszerre csak egy adható át. Előfordulhat, hogy el kell távolítania egy már használt környezeti változót az API-kulcshoz a rendszerből. Annak ellenére, hogy a Microsoft Entra-azonosító kódmintája nem hivatkozik explicit módon az API-kulcs környezeti változójára, ha van ilyen a mintát végrehajtó rendszeren, ez a hiba továbbra is létrejön.
Az erőforrások eltávolítása
Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást. Az erőforrás törlése előtt törölnie kell az üzembe helyezett modelleket.
Következő lépések
- Az Azure OpenAI áttekintése
- További példákért tekintse meg az Azure OpenAI-minták GitHub-adattárát
Forráskódcsomag (npm) | minták |
Feljegyzés
Ez az útmutató a legújabb OpenAI npm-csomagot használja, amely mostantól teljes mértékben támogatja az Azure OpenAI-t. Ha az örökölt Azure OpenAI JavaScript SDK-hoz keres példakódokat, azok jelenleg is elérhetők ebben az adattárban.
Előfeltételek
- Azure-előfizetés – Ingyenes létrehozás
- A Node.js LTS-verziói
- TypeScript
- A helyi fejlesztési környezetben a jelszó nélküli hitelesítéshez használt Azure CLI az Azure CLI-vel való bejelentkezéssel hozza létre a szükséges környezetet.
- Egy Azure OpenAI-szolgáltatáserőforrás a
gpt-35-turbo-instruct
modell üzembe helyezésével. A modellek üzembe helyezéséről a modellek üzembe helyezésének ismertetőjében talál további információt.
Erőforrásadatok lekérése
Az alkalmazás Azure OpenAI-erőforrással való hitelesítéséhez le kell kérnie a következő adatokat:
További információ a kulcs nélküli hitelesítésről és a környezeti változók beállításáról.
Figyelemfelhívás
Ha az ajánlott kulcs nélküli hitelesítést szeretné használni az SDK-val, győződjön meg arról, hogy a AZURE_OPENAI_API_KEY
környezeti változó nincs beállítva.
Telepítse az ügyfélkódtárat
Egy konzolablakban (pl. cmd, PowerShell vagy Bash) hozzon létre egy új mappát az alkalmazásnak, majd navigáljon oda.
Telepítse a JavaScripthez szükséges csomagokat npm-lel az új címtár környezetéből:
npm install openai @azure/identity
Az alkalmazás package.json fájlja frissül a függőségekkel.
Mintaalkalmazás létrehozása
Nyisson meg egy parancssort, ahol létrehozta az új projektet, és hozzon létre egy Completion.ts nevű új fájlt. Másolja a következő kódot a Completion.ts fájlba.
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);
});
Hozza létre a szkriptet a következő paranccsal:
tsc
Futtassa a szkriptet a következő paranccsal:
node.exe Completion.js
Hozam
== Get completions Sample ==
Microsoft was founded on April 4, 1975.
Feljegyzés
Ha a következő hibaüzenet jelenik meg: Hiba történt: OpenAIError: Az apiKey
és azureADTokenProvider
az argumentumok kölcsönösen kizárják egymást, egyszerre csak egy adható át. Előfordulhat, hogy el kell távolítania egy már használt környezeti változót az API-kulcshoz a rendszerből. Annak ellenére, hogy a Microsoft Entra-azonosító kódmintája nem hivatkozik explicit módon az API-kulcs környezeti változójára, ha van ilyen a mintát végrehajtó rendszeren, ez a hiba továbbra is létrejön.
Az erőforrások eltávolítása
Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást. Az erőforrás törlése előtt törölnie kell az üzembe helyezett modelleket.
Következő lépések
- Az Azure OpenAI áttekintése
- További példákért tekintse meg az Azure OpenAI-minták GitHub-adattárát
Kódtár forráskódcsomagja | (PyPi) |
Előfeltételek
- Azure-előfizetés – Ingyenes létrehozás
- Python 3.8 vagy újabb verzió
- A következő Python-kódtárak: operációs rendszer, kérések, json
- Azure OpenAI-szolgáltatáserőforrás üzembe
gpt-35-turbo-instruct
helyezett modellel. A modellek üzembe helyezéséről a modellek üzembe helyezésének ismertetőjében talál további információt.
Beállítás
Telepítse az OpenAI Python ügyfélkódtárat a következőkkel:
pip install openai
Feljegyzés
Ezt a könyvtárat az OpenAI tartja karban. A kódtár legújabb frissítéseinek nyomon követéséhez tekintse meg a kiadási előzményeket.
Kulcs és végpont lekérése
Az Azure OpenAI szolgáltatással való sikeres híváshoz a következőkre lesz szüksége:
Változó neve | Érték |
---|---|
ENDPOINT |
Ez az érték a Kulcsok és végpont szakaszban található, amikor az erőforrást az Azure Portalról vizsgálja. A végpontot az Azure AI Foundry portál Üzembe helyezések lapján is megtalálhatja. Példavégpont: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Ez az érték a Kulcsok és végpont szakaszban található, amikor az erőforrást az Azure Portalról vizsgálja. A következők bármelyikét használhatja: KEY1 vagy KEY2 . |
DEPLOYMENT-NAME |
Ez az érték a modell üzembe helyezésekor az üzembe helyezéshez választott egyéni névnek felel meg. Ez az érték az Azure Portal erőforrás-kezelési modell üzembe helyezései területén vagy az Azure AI Foundry portál Üzembe helyezések lapján található.> |
Nyissa meg az erőforrást az Azure Portalon. A kulcsok és végpontok az Erőforrás-kezelés szakaszban találhatók. Másolja ki a végpontot és a hozzáférési kulcsot, mivel mindkettőre szüksége lesz az API-hívások hitelesítéséhez. A következők bármelyikét használhatja: KEY1
vagy KEY2
. A két kulcs mindig lehetővé teszi a kulcsok biztonságos elforgatását és újragenerálását anélkül, hogy szolgáltatáskimaradást okoz.
Környezeti változók
Állandó környezeti változók létrehozása és hozzárendelése a kulcshoz és a végponthoz.
Fontos
Az Azure-erőforrásokhoz tartozó felügyelt identitásokkal rendelkező Microsoft Entra ID-hitelesítést javasoljuk, hogy ne tárolja a hitelesítő adatokat a felhőben futó alkalmazásokkal.
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. API-kulcsok használata esetén biztonságosan tárolhatja őket az Azure Key Vaultban, rendszeresen elforgathatja a kulcsokat, és szerepköralapú hozzáférés-vezérléssel és hálózati hozzáférés-korlátozásokkal korlátozhatja az Azure Key Vaulthoz való hozzáférést. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Új Python-alkalmazás létrehozása
Hozzon létre egy új Python-fájlt quickstart.py néven. Ezután nyissa meg a kívánt szerkesztőben vagy IDE-ben.
Cserélje le a quickstart.py tartalmát a következő kódra. Módosítsa a kódot a kulcs, a végpont és az üzembe helyezés nevének hozzáadásához:
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)
Fontos
Éles környezetben biztonságos módon tárolhatja és érheti el a hitelesítő adatait, például az Azure Key Vaultot. A hitelesítő adatok biztonságával kapcsolatos további információkért tekintse meg az Azure AI-szolgáltatások biztonsági cikkét.
Futtassa az alkalmazást a
python
gyorsútmutató-fájlban található paranccsal:python quickstart.py
Hozam
A kimenet a parancssort követő válaszszöveget Write a tagline for an ice cream shop.
tartalmazza. Ebben a példában az Azure OpenAI-t adták vissza The coldest ice cream in town!
.
Sending a test completion job
Write a tagline for an ice cream shop. The coldest ice cream in town!
Futtassa még néhányszor a kódot, hogy lássa, milyen más típusú válaszokat kap, mivel a válasz nem mindig lesz ugyanaz.
Az eredmények ismertetése
Mivel a Write a tagline for an ice cream shop.
példánk kevés kontextust biztosít, normális, hogy a modell nem mindig a várt eredményeket adja vissza. A jogkivonatok maximális számát módosíthatja, ha a válasz váratlannak vagy csonkoltnak tűnik.
Az Azure OpenAI emellett con sátormód rationt is végez a parancssori bemeneteken és a létrehozott kimeneteken. A rendszer szűrheti az utasításokat vagy válaszokat, ha káros tartalmat észlel. További információkért tekintse meg a tartalomszűrő cikket.
Az erőforrások eltávolítása
Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást vagy az erőforráscsoportot. Az erőforráscsoport törlése a hozzá társított egyéb erőforrásokat is törli.
Következő lépések
- A befejezésekkel kapcsolatos útmutatónkból többet is megtudhat arról, hogyan hozhatja létre a legjobb befejezést.
- További példákért tekintse meg az Azure OpenAI-minták GitHub-adattárát.
Előfeltételek
- Azure-előfizetés – Ingyenes létrehozás
- Python 3.8 vagy újabb verzió
- A következő Python-kódtárak: operációs rendszer, kérések, json
- Azure OpenAI-erőforrás üzembe helyezett modellel. A modellek üzembe helyezéséről a modellek üzembe helyezésének ismertetőjében talál további információt.
Beállítás
Kulcs és végpont lekérése
Az Azure OpenAI-ra való sikeres híváshoz a következőkre lesz szüksége:
Változó neve | Érték |
---|---|
ENDPOINT |
Ez az érték a Kulcsok és végpont szakaszban található meg, amikor megvizsgálja az erőforrást az Azure Portalon. A végpontot az Azure AI Foundry portál Üzembe helyezések lapján is megtalálhatja. Példavégpont: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Ez az érték a Kulcsok és végpont szakaszban található meg, amikor megvizsgálja az erőforrást az Azure Portalon. A következők bármelyikét használhatja: KEY1 vagy KEY2 . |
DEPLOYMENT-NAME |
Ez az érték a modell üzembe helyezésekor az üzembe helyezéshez választott egyéni névnek felel meg. Ez az érték az Azure Portal erőforrás-kezelési üzembe helyezései alatt vagy az Azure AI Foundry portál Üzembe helyezések lapján található.> |
Nyissa meg az erőforrást az Azure Portalon. A végpont és a kulcsok az Erőforrás-kezelés szakaszban találhatók. Másolja ki a végpontot és a hozzáférési kulcsot, mivel mindkettőre szüksége lesz az API-hívások hitelesítéséhez. A következők bármelyikét használhatja: KEY1
vagy KEY2
. A két kulcs mindig lehetővé teszi a kulcsok biztonságos elforgatását és újragenerálását anélkül, hogy szolgáltatáskimaradást okoz.
Környezeti változók
Állandó környezeti változók létrehozása és hozzárendelése a kulcshoz és a végponthoz.
Fontos
Az Azure-erőforrásokhoz tartozó felügyelt identitásokkal rendelkező Microsoft Entra ID-hitelesítést javasoljuk, hogy ne tárolja a hitelesítő adatokat a felhőben futó alkalmazásokkal.
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. API-kulcsok használata esetén biztonságosan tárolhatja őket az Azure Key Vaultban, rendszeresen elforgathatja a kulcsokat, és szerepköralapú hozzáférés-vezérléssel és hálózati hozzáférés-korlátozásokkal korlátozhatja az Azure Key Vaulthoz való hozzáférést. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
REST API
Bash-rendszerhéjban futtassa a következő parancsot. A modell üzembe helyezésekor választott üzembe helyezési gpt-35-turbo-instruct
nevet kell lecserélniegpt-35-turbo-instruct
. A modell nevének megadása hibaüzenetet eredményez, kivéve, ha az alapul szolgáló modell nevével azonos központi telepítési nevet választott.
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\"}"
A parancs első sorának formátuma egy példavégponttal a következőképpen curl https://docs-test-001.openai.azure.com/openai/deployments/{YOUR-DEPLOYMENT_NAME_HERE}/completions?api-version=2024-02-01 \
jelenik meg. Ha kettős hiba jelentkezik, ellenőrizze, hogy nincs-e megkettőzve a végpont és /openai/deployments
a /
.
Ha ezt a parancsot egy normál Windows-parancssorban szeretné futtatni, módosítania kell a szöveget a sortörések és a \
sorok eltávolításához.
Fontos
Éles környezetben biztonságos módon tárolhatja és érheti el a hitelesítő adatait, például az Azure Key Vaultot. A hitelesítő adatok biztonságával kapcsolatos további információkért tekintse meg az Azure AI-szolgáltatások biztonsági cikkét.
Hozam
A befejezési API kimenete a következőképpen fog kinézni.
{
"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
}
}
Az Azure OpenAI szolgáltatás con sátormód rationt is végez a parancssori bemeneteken és a generált kimeneteken. A rendszer szűrheti az utasításokat vagy válaszokat, ha káros tartalmat észlel. További információkért tekintse meg a tartalomszűrő cikket.
Az erőforrások eltávolítása
Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást vagy az erőforráscsoportot. Az erőforráscsoport törlése a hozzá társított egyéb erőforrásokat is törli.
Következő lépések
- A befejezésekkel kapcsolatos útmutatónkból többet is megtudhat arról, hogyan hozhatja létre a legjobb befejezést.
- További példákért tekintse meg az Azure OpenAI-minták GitHub-adattárát.
Előfeltételek
- Azure-előfizetés – Ingyenes létrehozás
- Használhatja a legújabb verziót, a PowerShell 7-et vagy a Windows PowerShell 5.1-et.
- Azure OpenAI-szolgáltatáserőforrás üzembe helyezett modellel. A modellek üzembe helyezéséről a modellek üzembe helyezésének ismertetőjében talál további információt.
Kulcs és végpont lekérése
Az Azure OpenAI szolgáltatással való sikeres híváshoz a következőkre lesz szüksége:
Változó neve | Érték |
---|---|
ENDPOINT |
Ez az érték a Kulcsok és végpont szakaszban található meg, amikor megvizsgálja az erőforrást az Azure Portalon. A végpontot az Azure AI Foundry portál Üzembe helyezések lapján is megtalálhatja. Példavégpont: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Ez az érték a Kulcsok és végpont szakaszban található meg, amikor megvizsgálja az erőforrást az Azure Portalon. A következők bármelyikét használhatja: KEY1 vagy KEY2 . |
DEPLOYMENT-NAME |
Ez az érték a modell üzembe helyezésekor az üzembe helyezéshez választott egyéni névnek felel meg. Ez az érték az Azure Portal erőforrás-kezelési üzembe helyezései alatt vagy az Azure AI Foundry portál Üzembe helyezések lapján található.> |
Nyissa meg az erőforrást az Azure Portalon. A végpont és a kulcsok az Erőforrás-kezelés szakaszban találhatók. Másolja ki a végpontot és a hozzáférési kulcsot, mivel mindkettőre szüksége lesz az API-hívások hitelesítéséhez. A következők bármelyikét használhatja: KEY1
vagy KEY2
. A két kulcs mindig lehetővé teszi a kulcsok biztonságos elforgatását és újragenerálását anélkül, hogy szolgáltatáskimaradást okoz.
Környezeti változók
Állandó környezeti változók létrehozása és hozzárendelése a kulcshoz és a végponthoz.
Fontos
Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. HA API-kulcsot használ, biztonságosan tárolja az Azure Key Vaultban. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.
Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.
$Env:AZURE_OPENAI_API_KEY = 'YOUR_KEY_VALUE'
$Env:AZURE_OPENAI_ENDPOINT = 'YOUR_ENDPOINT'
Új PowerShell-szkript létrehozása
Hozzon létre egy új, quickstart.ps1 nevű PowerShell-fájlt. Ezután nyissa meg a kívánt szerkesztőben vagy IDE-ben.
Cserélje le a quickstart.ps1 tartalmát a következő kódra. Módosítsa a kódot a kulcs, a végpont és az üzembe helyezés nevének hozzáadásához:
# 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)"
Fontos
Éles környezetben használja a hitelesítő adatok biztonságos tárolásának és elérésének biztonságos módját, például a PowerShell titkos kulcskezelését az Azure Key Vaulttal. A hitelesítő adatok biztonságával kapcsolatos további információkért tekintse meg az Azure AI-szolgáltatások biztonsági cikkét.
Futtassa a szkriptet a PowerShell használatával:
./quickstart.ps1
Hozam
A kimenet a parancssort követő válaszszöveget Once upon a time
tartalmazza. Ebben a példában az Azure OpenAI-t adták vissza There was a world beyond the mist...where a
.
Once upon a time...
There was a world beyond the mist...where a
Futtassa még néhányszor a kódot, hogy lássa, milyen más típusú válaszokat kap, mivel a válasz nem mindig lesz ugyanaz.
Az eredmények ismertetése
Mivel a Once upon a time...
példánk kevés kontextust biztosít, normális, hogy a modell nem mindig a várt eredményeket adja vissza. A jogkivonatok maximális számát módosíthatja, ha a válasz váratlannak vagy csonkoltnak tűnik.
Az Azure OpenAI emellett con sátormód rationt is végez a parancssori bemeneteken és a létrehozott kimeneteken. A rendszer szűrheti az utasításokat vagy válaszokat, ha káros tartalmat észlel. További információkért tekintse meg a tartalomszűrő cikket.
Az erőforrások eltávolítása
Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást vagy az erőforráscsoportot. Az erőforráscsoport törlése a hozzá társított egyéb erőforrásokat is törli.
Következő lépések
- A befejezésekkel kapcsolatos útmutatónkból többet is megtudhat arról, hogyan hozhatja létre a legjobb befejezést.
- További példákért tekintse meg az Azure OpenAI-minták GitHub-adattárát.