esemény
Intelligens alkalmazások létrehozása
márc. 17. 21 - márc. 21. 10
Csatlakozzon a meetup sorozathoz, hogy valós használati esetek alapján, skálázható AI-megoldásokat hozzon létre más fejlesztőkkel és szakértőkkel.
RegisztrációEzt a böngészőt már nem támogatjuk.
Frissítsen a Microsoft Edge-re, hogy kihasználhassa a legújabb funkciókat, a biztonsági frissítéseket és a technikai támogatást.
Az Azure OpenAI segédek (előzetes verzió) lehetővé teszik az Ön igényeinek megfelelő AI-segédek létrehozását egyéni utasítások útján, speciális eszközökkel, mint például kódértelmezőkkel és egyéni funkciókkal kiegészítve.
Fontos
A cikkben megjelölt (előzetes verziójú) elemek jelenleg nyilvános előzetes verzióban érhetők el. Ez az előzetes verzió szolgáltatásszint-szerződés nélkül érhető el, és éles számítási feladatokhoz nem javasoljuk. Előfordulhat, hogy néhány funkció nem támogatott, vagy korlátozott képességekkel rendelkezik. További információ: Kiegészítő használati feltételek a Microsoft Azure előzetes verziójú termékeihez.
Az Azure AI Foundry lehetővé teszi az Assistants v2 használatát, amely számos frissítést biztosít, például a fájlkereső eszközt, amely gyorsabb és több fájlt támogat.
Jelentkezzen be az Azure AI Foundrybe.
Ha a képernyő nem úgy néz ki, mint a következő képernyőkép, válassza az Azure AI Foundry lehetőséget a képernyő bal felső részén.
Válassza a Let's go (Ugrás ) lehetőséget az Azure OpenAI szolgáltatáskártyán.
A bal oldali navigációs menüben válassza az Asszisztensek lehetőséget, amely a játszóterek alatt található.
Az Asszisztensek játszótér lehetővé teszi az AI-asszisztensek felderítését, prototípusát és tesztelését anélkül, hogy bármilyen kódot kellene futtatnia. Ezen az oldalon gyorsan iterálhat és kísérletezhet új ötletekkel.
A játszótér számos lehetőséget kínál az asszisztens konfigurálására. Az alábbi lépésekben a beállítási panelen fog létrehozni egy új AI-asszisztenst.
Név | Leírás |
---|---|
Segéd neve | Az Ön környezetének adott modellhez társított neve. |
Utasítások | Az utasítások hasonlóak a rendszerüzenetekhez – ez az a rész, ahol Ön útmutatást ad a modellnek arról, hogyan kellene viselkednie, és milyen összefüggéseket kellene figyelembe vennie a válasz létrehozásakor. Leírhatja a segéd személyiségét, megmondhatja, hogy mit kell és mit nem szabad megválaszolnia, és megadhatja, hogyan formázza a válaszokat. Példákat is megadhat neki a válaszadáskor követendő lépésekre. |
Üzembe helyezés | Itt állíthatja be, hogy melyik modellkörnyezetet szeretné használni a segédjével. |
Functions | Hozzon létre egyéni függvénydefiníciókat a modellekhez, hogy api-hívásokat alakíthasson ki, és az adatok kimeneteit a specifikációk alapján strukturálja. Ebben a rövid útmutatóban nem használható. |
Kódértelmező | A kódértelmező hozzáférést biztosít egy Python demókörnyezethez, amelyben lehetővé teheti a modell számára kód tesztelését és végrehajtását. |
Fájlok | Legfeljebb 10 000 fájlt tölthet fel, és az eszközökkel használható maximális fájlméret 512 MB. Ebben a rövid útmutatóban nem használható. |
Válassza ki az üzembe helyezést az Üzembe helyezések legördülő listából.
Az Asszisztens beállítási legördülő menüjében válassza az Új asszisztens lehetőséget.
Adjon nevet az asszisztensének.
Adja meg a következő utasításokat: "Ön egy AI-asszisztens, aki képes kódot írni a matematikai kérdések megválaszolásához"
Válasszon ki egy modelltelepítést. Javasoljuk, hogy tesztelje az egyik legújabb gpt-4 modellt.
Válassza ki a kódértelmezőt engedélyező kapcsolót.
Válassza a Mentés lehetőséget.
Adjon meg egy kérdést, amelyre az asszisztens válaszol: "Meg kell oldanunk az egyenletet 3x + 11 = 14
. Tud nekem segíteni?"
Válassza a Hozzáadás és futtatás gombot
The solution to the equation (3x + 11 = 14) is (x = 1).
Bár láthatjuk, hogy a válasz helyes, annak ellenőrzéséhez, hogy a modell kódértelmezőt használt-e a válasz eléréséhez, és hogy az általa írt kód érvényes-e ahelyett, hogy a modell betanítási adataiból ismételnénk meg a választ, egy másik kérdést teszünk fel.
Adja meg a következő kérdést: "A megoldás beszerzéséhez használt kód megjelenítése".
Sure. The code is very straightforward
# calculation
x = (14 - 11) / 3
x
First, we subtract 11 from 14, then divide the result by 3. This gives us the value of x which is 1.0.
A jobb oldali panelen található naplókban ellenőrizheti, hogy a kódértelmezőt használták-e, és ellenőrizheti a válasz létrehozásához futtatott kódot. Fontos megjegyezni, hogy bár a kódértelmező lehetővé teszi a modell számára, hogy összetettebb matematikai kérdésekre válaszoljon a kérdések kódmá alakításával és egy tesztkörnyezetben futó Python-környezetben, a választ továbbra is ellenőriznie kell, hogy a modell helyesen fordította-e le a kérdést érvényes kódbeli ábrázolásra.
Az Asszisztensek játszótér használata során tartsa szem előtt az alábbi fogalmakat.
Az egyéni asszisztensek legfeljebb 128 eszközt érhetnek el, beleértve code interpreter
a függvényekkel létrehozott egyéni eszközöket is.
Az Asszisztens API-jában szálként is ismert csevegési munkamenetben zajlik a felhasználó és az asszisztens közötti beszélgetés. A hagyományos csevegésvégzítési hívásokkal ellentétben nincs korlátozva a szálon lévő üzenetek száma. Az asszisztens automatikusan tömöríti a kérelmeket a modell bemeneti jogkivonat-korlátjának megfelelően.
Ez azt is jelenti, hogy nem szabályozza, hogy hány jogkivonat legyen átadva a modellnek a beszélgetés minden egyes fordulója során. A jogkivonatok kezelését az Assistants API absztrakciója és teljes mértékben kezeli.
Válassza a Csevegés törlése gombot az aktuális beszélgetési előzmények törléséhez.
A szövegbeviteli mező alatt két gomb található:
A naplók részletes pillanatképet nyújtanak az asszisztens API-tevékenységéről.
Alapértelmezés szerint három panel van: asszisztens beállítása, csevegési munkamenet és naplók. A panelek megjelenítése lehetővé teszi a panelek hozzáadását, eltávolítását és átrendeződését. Ha valaha bezár egy panelt, és vissza kell szereznie, a Panelek megjelenítése parancsot használva visszaállíthatja az elveszett panelt.
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.
Másik lehetőségként törölheti az asszisztenst vagy a szálat az Asszisztens API-ján keresztül.
Referenciadokumentáció kódtár forráskódcsomagja | (PyPi) | |
gpt-4 (1106-preview)
modell üzembe helyezésével.A jelszó nélküli hitelesítéshez a következőkre van szükség:
Cognitive Services User
a felhasználói fiókjához. Ez az Azure Portal Hozzáférés-vezérlés (IAM)>Szerepkör-hozzárendelés hozzáadása területén végezhető el.az login
.pip install openai
pip install azure-identity
Megjegyzés
tool_choice
paraméter támogatását, amely egy adott eszköz (például fájlkeresés, kódértelmező vagy függvény) egy adott futtatáshoz való kényszerítésére használható.Megjegyzé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.
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.
Á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"
A kódban a következő értékeket fogjuk megadni:
Név | Leírás |
---|---|
Segéd neve | Az Ön környezetének adott modellhez társított neve. |
Utasítások | Az utasítások hasonlóak a rendszerüzenetekhez – ez az a rész, ahol Ön útmutatást ad a modellnek arról, hogyan kellene viselkednie, és milyen összefüggéseket kellene figyelembe vennie a válasz létrehozásakor. Leírhatja a segéd személyiségét, megmondhatja, hogy mit kell és mit nem szabad megválaszolnia, és megadhatja, hogyan formázza a válaszokat. Példákat is megadhat neki a válaszadáskor követendő lépésekre. |
Modell | Itt adhatja meg, hogy melyik modell üzembehelyezési nevét használja az asszisztensével. A lekérési eszközhöz szükség van vagy gpt-4 (1106-preview) modellre van szükséggpt-35-turbo (1106) .
Állítsa ezt az értéket az üzemelő példány nevére, és ne a modell nevére, hacsak nem ugyanaz. |
Kódértelmező | A kódértelmező hozzáférést biztosít egy Python demókörnyezethez, amelyben lehetővé teheti a modell számára kód tesztelését és végrehajtását. |
Az egyéni asszisztensek legfeljebb 128 eszközt érhetnek el, beleértve code interpreter
a függvényekkel létrehozott egyéni eszközöket is.
Jelentkezzen be az Azure-ba az login
, majd hozzon létre és futtasson egy asszisztenst a következő ajánlott jelszó nélküli Python-példával:
import os
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
from openai import AzureOpenAI
token_provider = get_bearer_token_provider(DefaultAzureCredential(), "https://cognitiveservices.azure.com/.default")
client = AzureOpenAI(
azure_ad_token_provider=token_provider,
azure_endpoint=os.environ["AZURE_OPENAI_ENDPOINT"],
api_version="2024-05-01-preview",
)
# Create an assistant
assistant = client.beta.assistants.create(
name="Math Assist",
instructions="You are an AI assistant that can write code to help answer math questions.",
tools=[{"type": "code_interpreter"}],
model="gpt-4-1106-preview" # You must replace this value with the deployment name for your model.
)
# Create a thread
thread = client.beta.threads.create()
# Add a user question to the thread
message = client.beta.threads.messages.create(
thread_id=thread.id,
role="user",
content="I need to solve the equation `3x + 11 = 14`. Can you help me?"
)
# Run the thread and poll for the result
run = client.beta.threads.runs.create_and_poll(
thread_id=thread.id,
assistant_id=assistant.id,
instructions="Please address the user as Jane Doe. The user has a premium account.",
)
print("Run completed with status: " + run.status)
if run.status == "completed":
messages = client.beta.threads.messages.list(thread_id=thread.id)
print(messages.to_json(indent=2))
A szolgáltatás API-kulcsának hitelesítéshez való használatához létrehozhat és futtathat egy asszisztenst a következő Python-példával:
import os
from openai import AzureOpenAI
client = AzureOpenAI(
api_key=os.environ["AZURE_OPENAI_API_KEY"],
azure_endpoint=os.environ["AZURE_OPENAI_ENDPOINT"],
api_version="2024-05-01-preview",
)
# Create an assistant
assistant = client.beta.assistants.create(
name="Math Assist",
instructions="You are an AI assistant that can write code to help answer math questions.",
tools=[{"type": "code_interpreter"}],
model="gpt-4-1106-preview" # You must replace this value with the deployment name for your model.
)
# Create a thread
thread = client.beta.threads.create()
# Add a user question to the thread
message = client.beta.threads.messages.create(
thread_id=thread.id,
role="user",
content="I need to solve the equation `3x + 11 = 14`. Can you help me?"
)
# Run the thread and poll for the result
run = client.beta.threads.runs.create_and_poll(
thread_id=thread.id,
assistant_id=assistant.id,
instructions="Please address the user as Jane Doe. The user has a premium account.",
)
print("Run completed with status: " + run.status)
if run.status == "completed":
messages = client.beta.threads.messages.list(thread_id=thread.id)
print(messages.to_json(indent=2))
Futtatás befejezve állapottal: befejezve
{
"data": [
{
"id": "msg_4SuWxTubHsHpt5IlBTO5Hyw9",
"assistant_id": "asst_cYqL1RuwLyFV3HU1gkaE2k0K",
"attachments": [],
"content": [
{
"text": {
"annotations": [],
"value": "The solution to the equation \\(3x + 11 = 14\\) is \\(x = 1\\)."
},
"type": "text"
}
],
"created_at": 1716397091,
"metadata": {},
"object": "thread.message",
"role": "assistant",
"run_id": "run_hFgBPbUtO8ZNTnNPC8PgpH1S",
"thread_id": "thread_isb7spwRycI5ueT9E7357aOm"
},
{
"id": "msg_Z32w2E7kY5wEWhZqQWxIbIUB",
"assistant_id": null,
"attachments": [],
"content": [
{
"text": {
"annotations": [],
"value": "I need to solve the equation `3x + 11 = 14`. Can you help me?"
},
"type": "text"
}
],
"created_at": 1716397025,
"metadata": {},
"object": "thread.message",
"role": "user",
"run_id": null,
"thread_id": "thread_isb7spwRycI5ueT9E7357aOm"
}
],
"object": "list",
"first_id": "msg_4SuWxTubHsHpt5IlBTO5Hyw9",
"last_id": "msg_Z32w2E7kY5wEWhZqQWxIbIUB",
"has_more": false
}
Ebben a példában létrehozunk egy asszisztenst, amely engedélyezve van a kódértelmezővel. Amikor matematikai kérdést teszünk fel az asszisztensnek, az python kódra fordítja le a kérdést, és tesztkörnyezetben hajtja végre a kódot a kérdésre adott válasz meghatározásához. A modell által létrehozott és a válaszhoz szükséges tesztek kódja a következő:
from sympy import symbols, Eq, solve
# Define the variable
x = symbols('x')
# Define the equation
equation = Eq(3*x + 11, 14)
# Solve the equation
solution = solve(equation, x)
solution
Fontos megjegyezni, hogy bár a kódértelmező lehetővé teszi a modell számára, hogy összetettebb lekérdezésekre válaszoljon a kérdések kóddá alakításával és a kód iteratív futtatásával a Python-tesztkörnyezetben, amíg el nem éri a megoldást, továbbra is ellenőriznie kell a választ, hogy a modell helyesen lefordította-e a kérdést egy érvényes kódképre.
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.
Referenciadokumentáció Forráskódcsomag | (NuGet) |
gpt-4 (1106-preview)
modell üzembe helyezésével.Egy konzolablakban (például parancsmag, PowerShell vagy Bash) a dotnet new
paranccsal hozzon létre egy új konzolalkalmazást a következő néven azure-openai-assistants-quickstart
:
dotnet new console -n azure-openai-assistants-quickstart
Az újonnan létrehozott mappában hozza létre azure-openai-assistants-quickstart
az alkalmazást a dotnet build
következő paranccsal:
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 dotnet add package paranccsal:
dotnet add package Azure.AI.OpenAI --prerelease
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.
Á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"
A jelszó nélküli hitelesítés biztonságosabb, mint a kulcsalapú alternatívák, és az Azure-szolgáltatásokhoz való csatlakozás ajánlott módszere. Ha jelszó nélküli hitelesítést választ, a következőket kell elvégeznie:
Vegye fel a Azure.Identity
csomagot.
dotnet add package Azure.Identity
Rendelje hozzá a szerepkört Cognitive Services User
a felhasználói fiókjához. Ez az OpenAI-erőforrás Azure Portalon, a Hozzáférés-vezérlés (IAM)>Szerepkör-hozzárendelés hozzáadása területen végezhető el.
Jelentkezzen be az Azure-ba a Visual Studióval vagy az Azure CLI-vel.az login
Frissítse a Program.cs
fájlt a következő kóddal egy asszisztens létrehozásához:
using Azure;
using Azure.AI.OpenAI.Assistants;
// Assistants is a beta API and subject to change
// Acknowledge its experimental status by suppressing the matching warning.
string endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT");
string key = Environment.GetEnvironmentVariable("AZURE_OPENAI_API_KEY");
var openAIClient = new AzureOpenAIClient(new Uri(endpoint), new AzureKeyCredential(key));
// Use for passwordless auth
//var openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential());
FileClient fileClient = openAIClient.GetFileClient();
AssistantClient assistantClient = openAIClient.GetAssistantClient();
// First, let's contrive a document we'll use retrieval with and upload it.
using Stream document = BinaryData.FromString("""
{
"description": "This document contains the sale history data for Contoso products.",
"sales": [
{
"month": "January",
"by_product": {
"113043": 15,
"113045": 12,
"113049": 2
}
},
{
"month": "February",
"by_product": {
"113045": 22
}
},
{
"month": "March",
"by_product": {
"113045": 16,
"113055": 5
}
}
]
}
""").ToStream();
OpenAIFileInfo salesFile = await fileClient.UploadFileAsync(
document,
"monthly_sales.json",
FileUploadPurpose.Assistants);
// Now, we'll create a client intended to help with that data
AssistantCreationOptions assistantOptions = new()
{
Name = "Example: Contoso sales RAG",
Instructions =
"You are an assistant that looks up sales data and helps visualize the information based"
+ " on user queries. When asked to generate a graph, chart, or other visualization, use"
+ " the code interpreter tool to do so.",
Tools =
{
new FileSearchToolDefinition(),
new CodeInterpreterToolDefinition(),
},
ToolResources = new()
{
FileSearch = new()
{
NewVectorStores =
{
new VectorStoreCreationHelper([salesFile.Id]),
}
}
},
};
Assistant assistant = await assistantClient.CreateAssistantAsync(deploymentName, assistantOptions);
// Create and run a thread with a user query about the data already associated with the assistant
ThreadCreationOptions threadOptions = new()
{
InitialMessages = { "How well did product 113045 sell in February? Graph its trend over time." }
};
ThreadRun threadRun = await assistantClient.CreateThreadAndRunAsync(assistant.Id, threadOptions);
// Check back to see when the run is done
do
{
Thread.Sleep(TimeSpan.FromSeconds(1));
threadRun = assistantClient.GetRun(threadRun.ThreadId, threadRun.Id);
} while (!threadRun.Status.IsTerminal);
// Finally, we'll print out the full history for the thread that includes the augmented generation
AsyncCollectionResult<ThreadMessage> messages
= assistantClient.GetMessagesAsync(
threadRun.ThreadId,
new MessageCollectionOptions() { Order = MessageCollectionOrder.Ascending });
await foreach (ThreadMessage message in messages)
{
Console.Write($"[{message.Role.ToString().ToUpper()}]: ");
foreach (MessageContent contentItem in message.Content)
{
if (!string.IsNullOrEmpty(contentItem.Text))
{
Console.WriteLine($"{contentItem.Text}");
if (contentItem.TextAnnotations.Count > 0)
{
Console.WriteLine();
}
// Include annotations, if any.
foreach (TextAnnotation annotation in contentItem.TextAnnotations)
{
if (!string.IsNullOrEmpty(annotation.InputFileId))
{
Console.WriteLine($"* File citation, file ID: {annotation.InputFileId}");
}
if (!string.IsNullOrEmpty(annotation.OutputFileId))
{
Console.WriteLine($"* File output, new file ID: {annotation.OutputFileId}");
}
}
}
if (!string.IsNullOrEmpty(contentItem.ImageFileId))
{
OpenAIFileInfo imageInfo = await fileClient.GetFileAsync(contentItem.ImageFileId);
BinaryData imageBytes = await fileClient.DownloadFileAsync(contentItem.ImageFileId);
using FileStream stream = File.OpenWrite($"{imageInfo.Filename}.png");
imageBytes.ToStream().CopyTo(stream);
Console.WriteLine($"<image: {imageInfo.Filename}.png>");
}
}
Console.WriteLine();
}
Futtassa az alkalmazást a dotnet run
következő paranccsal:
dotnet run
A konzol kimenetének a következőhöz kell hasonlítania:
[USER]: How well did product 113045 sell in February? Graph its trend over time.
[ASSISTANT]: Product 113045 sold 22 units in February. Let's visualize its sales trend over the given months (January through March).
I'll create a graph to depict this trend.
[ASSISTANT]: <image: 553380b7-fdb6-49cf-9df6-e8e6700d69f4.png>
The graph above visualizes the sales trend for product 113045 from January to March. As seen, the sales peaked in February with 22 units sold, and fluctuated over the period from January (12 units) to March (16 units).
If you need further analysis or more details, feel free to ask!
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.
Referenciadokumentáció Kódtár forráskódcsomagja | (npm) | |
gpt-4 (1106-preview)
modell üzembe helyezésével.A Microsoft Entra-azonosítóval javasolt kulcs nélküli hitelesítéshez a következőket kell elvégeznie:
Cognitive Services User
a felhasználói fiókjához. Szerepköröket az Azure Portalon rendelhet hozzá a Hozzáférés-vezérlés (IAM)>Szerepkör-hozzárendelés hozzáadása területen.Hozzon létre egy új mappát assistants-quickstart
, amely tartalmazza az alkalmazást, és nyissa meg a Visual Studio Code-ot abban a mappában a következő paranccsal:
mkdir assistants-quickstart && code assistants-quickstart
Hozza létre a package.json
következő paranccsal:
npm init -y
Frissítse az package.json
ECMAScriptet a következő paranccsal:
npm pkg set type=module
Telepítse a JavaScripthez készült OpenAI Assistants ügyfélkódtárat a következőkkel:
npm install openai
Az ajánlott jelszó nélküli hitelesítéshez:
npm install @azure/identity
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.
A kódban a következő értékeket fogjuk megadni:
Név | Leírás |
---|---|
Segéd neve | Az Ön környezetének adott modellhez társított neve. |
Utasítások | Az utasítások hasonlóak a rendszerüzenetekhez – ez az a rész, ahol Ön útmutatást ad a modellnek arról, hogyan kellene viselkednie, és milyen összefüggéseket kellene figyelembe vennie a válasz létrehozásakor. Leírhatja a segéd személyiségét, megmondhatja, hogy mit kell és mit nem szabad megválaszolnia, és megadhatja, hogyan formázza a válaszokat. Példákat is megadhat neki a válaszadáskor követendő lépésekre. |
Modell | Ez az üzembe helyezés neve. |
Kódértelmező | A kódértelmező hozzáférést biztosít egy Python demókörnyezethez, amelyben lehetővé teheti a modell számára kód tesztelését és végrehajtását. |
Az egyéni asszisztensek legfeljebb 128 eszközt érhetnek el, beleértve a code interpreter
függvényekkel létrehozott egyéni eszközöket is.
Hozza létre a index.js
fájlt a következő kóddal:
const { AzureOpenAI } = require("openai");
const {
DefaultAzureCredential,
getBearerTokenProvider,
} = require("@azure/identity");
// Get environment variables
const azureOpenAIEndpoint = process.env.AZURE_OPENAI_ENDPOINT;
const azureOpenAIDeployment = process.env.AZURE_OPENAI_DEPLOYMENT_NAME;
const azureOpenAIVersion = process.env.OPENAI_API_VERSION;
// Check env variables
if (!azureOpenAIEndpoint || !azureOpenAIDeployment || !azureOpenAIVersion) {
throw new Error(
"Please ensure to set AZURE_OPENAI_DEPLOYMENT_NAME and AZURE_OPENAI_ENDPOINT in your environment variables."
);
}
// Get Azure SDK client
const getClient = () => {
const credential = new DefaultAzureCredential();
const scope = "https://cognitiveservices.azure.com/.default";
const azureADTokenProvider = getBearerTokenProvider(credential, scope);
const assistantsClient = new AzureOpenAI({
endpoint: azureOpenAIEndpoint,
apiVersion: azureOpenAIVersion,
azureADTokenProvider,
});
return assistantsClient;
};
const assistantsClient = getClient();
const options = {
model: azureOpenAIDeployment, // Deployment name seen in Azure AI Foundry portal
name: "Math Tutor",
instructions:
"You are a personal math tutor. Write and run JavaScript code to answer math questions.",
tools: [{ type: "code_interpreter" }],
};
const role = "user";
const message = "I need to solve the equation `3x + 11 = 14`. Can you help me?";
// Create an assistant
const assistantResponse = await assistantsClient.beta.assistants.create(
options
);
console.log(`Assistant created: ${JSON.stringify(assistantResponse)}`);
// Create a thread
const assistantThread = await assistantsClient.beta.threads.create({});
console.log(`Thread created: ${JSON.stringify(assistantThread)}`);
// Add a user question to the thread
const threadResponse = await assistantsClient.beta.threads.messages.create(
assistantThread.id,
{
role,
content: message,
}
);
console.log(`Message created: ${JSON.stringify(threadResponse)}`);
// Run the thread and poll it until it is in a terminal state
const runResponse = await assistantsClient.beta.threads.runs.createAndPoll(
assistantThread.id,
{
assistant_id: assistantResponse.id,
},
{ pollIntervalMs: 500 }
);
console.log(`Run created: ${JSON.stringify(runResponse)}`);
// Get the messages
const runMessages = await assistantsClient.beta.threads.messages.list(
assistantThread.id
);
for await (const runMessageDatum of runMessages) {
for (const item of runMessageDatum.content) {
// types are: "image_file" or "text"
if (item.type === "text") {
console.log(`Message content: ${JSON.stringify(item.text?.value)}`);
}
}
}
Jelentkezzen be az Azure-ba a következő paranccsal:
az login
Futtassa a JavaScript-fájlt.
node index.js
Assistant created: {"id":"asst_zXaZ5usTjdD0JGcNViJM2M6N","createdAt":"2024-04-08T19:26:38.000Z","name":"Math Tutor","description":null,"model":"daisy","instructions":"You are a personal math tutor. Write and run JavaScript code to answer math questions.","tools":[{"type":"code_interpreter"}],"fileIds":[],"metadata":{}}
Thread created: {"id":"thread_KJuyrB7hynun4rvxWdfKLIqy","createdAt":"2024-04-08T19:26:38.000Z","metadata":{}}
Message created: {"id":"msg_o0VkXnQj3juOXXRCnlZ686ff","createdAt":"2024-04-08T19:26:38.000Z","threadId":"thread_KJuyrB7hynun4rvxWdfKLIqy","role":"user","content":[{"type":"text","text":{"value":"I need to solve the equation `3x + 11 = 14`. Can you help me?","annotations":[]},"imageFile":{}}],"assistantId":null,"runId":null,"fileIds":[],"metadata":{}}
Created run
Run created: {"id":"run_P8CvlouB8V9ZWxYiiVdL0FND","object":"thread.run","status":"queued","model":"daisy","instructions":"You are a personal math tutor. Write and run JavaScript code to answer math questions.","tools":[{"type":"code_interpreter"}],"metadata":{},"usage":null,"assistantId":"asst_zXaZ5usTjdD0JGcNViJM2M6N","threadId":"thread_KJuyrB7hynun4rvxWdfKLIqy","fileIds":[],"createdAt":"2024-04-08T19:26:39.000Z","expiresAt":"2024-04-08T19:36:39.000Z","startedAt":null,"completedAt":null,"cancelledAt":null,"failedAt":null}
Message content: "The solution to the equation \\(3x + 11 = 14\\) is \\(x = 1\\)."
Message content: "Yes, of course! To solve the equation \\( 3x + 11 = 14 \\), we can follow these steps:\n\n1. Subtract 11 from both sides of the equation to isolate the term with x.\n2. Then, divide by 3 to find the value of x.\n\nLet me calculate that for you."
Message content: "I need to solve the equation `3x + 11 = 14`. Can you help me?"
Fontos megjegyezni, hogy bár a kódértelmező lehetővé teszi a modell számára, hogy összetettebb lekérdezésekre válaszoljon a kérdések kóddá alakításával és a kód iteratív futtatásával a JavaScriptben, amíg el nem éri a megoldást, továbbra is ellenőriznie kell a választ annak ellenőrzéséhez, hogy a modell helyesen lefordította-e a kérdést egy kódban szereplő érvényes reprezentációra.
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.
Referenciadokumentáció Kódtár forráskódcsomagja | (npm) | |
gpt-4 (1106-preview)
modell üzembe helyezésével.A Microsoft Entra-azonosítóval javasolt kulcs nélküli hitelesítéshez a következőket kell elvégeznie:
Cognitive Services User
a felhasználói fiókjához. Szerepköröket az Azure Portalon rendelhet hozzá a Hozzáférés-vezérlés (IAM)>Szerepkör-hozzárendelés hozzáadása területen.Hozzon létre egy új mappát assistants-quickstart
, amely tartalmazza az alkalmazást, és nyissa meg a Visual Studio Code-ot abban a mappában a következő paranccsal:
mkdir assistants-quickstart && code assistants-quickstart
Hozza létre a package.json
következő paranccsal:
npm init -y
Frissítse az package.json
ECMAScriptet a következő paranccsal:
npm pkg set type=module
Telepítse a JavaScripthez készült OpenAI Assistants ügyfélkódtárat a következőkkel:
npm install openai
Az ajánlott jelszó nélküli hitelesítéshez:
npm install @azure/identity
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.
A kódban a következő értékeket fogjuk megadni:
Név | Leírás |
---|---|
Segéd neve | Az Ön környezetének adott modellhez társított neve. |
Utasítások | Az utasítások hasonlóak a rendszerüzenetekhez – ez az a rész, ahol Ön útmutatást ad a modellnek arról, hogyan kellene viselkednie, és milyen összefüggéseket kellene figyelembe vennie a válasz létrehozásakor. Leírhatja a segéd személyiségét, megmondhatja, hogy mit kell és mit nem szabad megválaszolnia, és megadhatja, hogyan formázza a válaszokat. Példákat is megadhat neki a válaszadáskor követendő lépésekre. |
Modell | Ez az üzembe helyezés neve. |
Kódértelmező | A kódértelmező hozzáférést biztosít egy Python demókörnyezethez, amelyben lehetővé teheti a modell számára kód tesztelését és végrehajtását. |
Az egyéni asszisztensek legfeljebb 128 eszközt érhetnek el, beleértve a code interpreter
függvényekkel létrehozott egyéni eszközöket is.
Hozza létre a index.ts
fájlt a következő kóddal:
import { AzureOpenAI } from "openai";
import {
Assistant,
AssistantCreateParams,
AssistantTool,
} from "openai/resources/beta/assistants";
import { Message, MessagesPage } from "openai/resources/beta/threads/messages";
import { Run } from "openai/resources/beta/threads/runs/runs";
import { Thread } from "openai/resources/beta/threads/threads";
// Add `Cognitive Services User` to identity for Azure OpenAI resource
import {
DefaultAzureCredential,
getBearerTokenProvider,
} from "@azure/identity";
// Get environment variables
const azureOpenAIEndpoint = process.env.AZURE_OPENAI_ENDPOINT as string;
const azureOpenAIDeployment = process.env
.AZURE_OPENAI_DEPLOYMENT_NAME as string;
const openAIVersion = process.env.OPENAI_API_VERSION as string;
// Check env variables
if (!azureOpenAIEndpoint || !azureOpenAIDeployment || !openAIVersion) {
throw new Error(
"Please ensure to set AZURE_OPENAI_DEPLOYMENT_NAME and AZURE_OPENAI_ENDPOINT in your environment variables."
);
}
// Get Azure SDK client
const getClient = (): AzureOpenAI => {
const credential = new DefaultAzureCredential();
const scope = "https://cognitiveservices.azure.com/.default";
const azureADTokenProvider = getBearerTokenProvider(credential, scope);
const assistantsClient = new AzureOpenAI({
endpoint: azureOpenAIEndpoint,
apiVersion: openAIVersion,
azureADTokenProvider,
});
return assistantsClient;
};
const assistantsClient = getClient();
const options: AssistantCreateParams = {
model: azureOpenAIDeployment, // Deployment name seen in Azure AI Foundry portal
name: "Math Tutor",
instructions:
"You are a personal math tutor. Write and run JavaScript code to answer math questions.",
tools: [{ type: "code_interpreter" } as AssistantTool],
};
const role = "user";
const message = "I need to solve the equation `3x + 11 = 14`. Can you help me?";
// Create an assistant
const assistantResponse: Assistant =
await assistantsClient.beta.assistants.create(options);
console.log(`Assistant created: ${JSON.stringify(assistantResponse)}`);
// Create a thread
const assistantThread: Thread = await assistantsClient.beta.threads.create({});
console.log(`Thread created: ${JSON.stringify(assistantThread)}`);
// Add a user question to the thread
const threadResponse: Message =
await assistantsClient.beta.threads.messages.create(assistantThread.id, {
role,
content: message,
});
console.log(`Message created: ${JSON.stringify(threadResponse)}`);
// Run the thread and poll it until it is in a terminal state
const runResponse: Run = await assistantsClient.beta.threads.runs.createAndPoll(
assistantThread.id,
{
assistant_id: assistantResponse.id,
},
{ pollIntervalMs: 500 }
);
console.log(`Run created: ${JSON.stringify(runResponse)}`);
// Get the messages
const runMessages: MessagesPage =
await assistantsClient.beta.threads.messages.list(assistantThread.id);
for await (const runMessageDatum of runMessages) {
for (const item of runMessageDatum.content) {
// types are: "image_file" or "text"
if (item.type === "text") {
console.log(`Message content: ${JSON.stringify(item.text?.value)}`);
}
}
}
Hozza létre a fájlt a tsconfig.json
TypeScript-kód fordításához, és másolja a következő kódot az ECMAScripthez.
{
"compilerOptions": {
"module": "NodeNext",
"target": "ES2022", // Supports top-level await
"moduleResolution": "NodeNext",
"skipLibCheck": true, // Avoid type errors from node_modules
"strict": true // Enable strict type-checking options
},
"include": ["*.ts"]
}
Transpile TypeScriptről JavaScriptre.
tsc
Jelentkezzen be az Azure-ba a következő paranccsal:
az login
Futtassa a kódot a következő paranccsal:
node index.js
Assistant created: {"id":"asst_zXaZ5usTjdD0JGcNViJM2M6N","createdAt":"2024-04-08T19:26:38.000Z","name":"Math Tutor","description":null,"model":"daisy","instructions":"You are a personal math tutor. Write and run JavaScript code to answer math questions.","tools":[{"type":"code_interpreter"}],"fileIds":[],"metadata":{}}
Thread created: {"id":"thread_KJuyrB7hynun4rvxWdfKLIqy","createdAt":"2024-04-08T19:26:38.000Z","metadata":{}}
Message created: {"id":"msg_o0VkXnQj3juOXXRCnlZ686ff","createdAt":"2024-04-08T19:26:38.000Z","threadId":"thread_KJuyrB7hynun4rvxWdfKLIqy","role":"user","content":[{"type":"text","text":{"value":"I need to solve the equation `3x + 11 = 14`. Can you help me?","annotations":[]},"imageFile":{}}],"assistantId":null,"runId":null,"fileIds":[],"metadata":{}}
Created run
Run created: {"id":"run_P8CvlouB8V9ZWxYiiVdL0FND","object":"thread.run","status":"queued","model":"daisy","instructions":"You are a personal math tutor. Write and run JavaScript code to answer math questions.","tools":[{"type":"code_interpreter"}],"metadata":{},"usage":null,"assistantId":"asst_zXaZ5usTjdD0JGcNViJM2M6N","threadId":"thread_KJuyrB7hynun4rvxWdfKLIqy","fileIds":[],"createdAt":"2024-04-08T19:26:39.000Z","expiresAt":"2024-04-08T19:36:39.000Z","startedAt":null,"completedAt":null,"cancelledAt":null,"failedAt":null}
Message content: "The solution to the equation \\(3x + 11 = 14\\) is \\(x = 1\\)."
Message content: "Yes, of course! To solve the equation \\( 3x + 11 = 14 \\), we can follow these steps:\n\n1. Subtract 11 from both sides of the equation to isolate the term with x.\n2. Then, divide by 3 to find the value of x.\n\nLet me calculate that for you."
Message content: "I need to solve the equation `3x + 11 = 14`. Can you help me?"
Fontos megjegyezni, hogy bár a kódértelmező lehetővé teszi a modell számára, hogy összetettebb lekérdezésekre válaszoljon a kérdések kóddá alakításával és a kód iteratív futtatásával a JavaScriptben, amíg el nem éri a megoldást, továbbra is ellenőriznie kell a választ annak ellenőrzéséhez, hogy a modell helyesen lefordította-e a kérdést egy kódban szereplő érvényes reprezentációra.
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.
gpt-4 (1106-preview)
modell üzembe helyezésével.Az Azure OpenAI-ra való sikeres híváshoz a következőkre lesz szüksége:
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 . |
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.
Á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"
Megjegyzés
Az Azure OpenAI-ban a model
paraméterhez modelltelepítési név szükséges. Ha a modell központi telepítési neve eltér az alapul szolgáló modell nevéétől, akkor a kódot a következőre "model": "{your-custom-model-deployment-name}"
kell módosítania: .
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants?api-version=2024-05-01-preview \
-H "api-key: $AZURE_OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"instructions": "You are an AI assistant that can write code to help answer math questions.",
"name": "Math Assist",
"tools": [{"type": "code_interpreter"}],
"model": "gpt-4-1106-preview"
}'
Az egyéni asszisztensek legfeljebb 128 eszközt érhetnek el, beleértve code interpreter
a függvényekkel létrehozott egyéni eszközöket is.
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads \
-H "Content-Type: application/json" \
-H "api-key: $AZURE_OPENAI_API_KEY" \
-d ''
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/thread_abc123/messages \
-H "Content-Type: application/json" \
-H "api-key: $AZURE_OPENAI_API_KEY" \
-d '{
"role": "user",
"content": "I need to solve the equation `3x + 11 = 14`. Can you help me?"
}'
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/thread_abc123/runs \
-H "api-key: $AZURE_OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"assistant_id": "asst_abc123",
}'
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/thread_abc123/runs/run_abc123 \
-H "api-key: $AZURE_OPENAI_API_KEY" \
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/thread_abc123/messages \
-H "Content-Type: application/json" \
-H "api-key: $AZURE_OPENAI_API_KEY" \
Ebben a példában létrehozunk egy asszisztenst, amely engedélyezve van a kódértelmezővel. Amikor matematikai kérdést teszünk fel az asszisztensnek, az python kódra fordítja le a kérdést, és tesztkörnyezetben hajtja végre a kódot a kérdésre adott válasz meghatározásához. A modell által létrehozott és a válaszhoz szükséges tesztek kódja a következő:
from sympy import symbols, Eq, solve
# Define the variable
x = symbols('x')
# Define the equation
equation = Eq(3*x + 11, 14)
# Solve the equation
solution = solve(equation, x)
solution
Fontos megjegyezni, hogy bár a kódértelmező lehetővé teszi a modell számára, hogy összetettebb lekérdezésekre válaszoljon a kérdések kóddá alakításával és a kód iteratív futtatásával a Python-tesztkörnyezetben, amíg el nem éri a megoldást, továbbra is ellenőriznie kell a választ, hogy a modell helyesen lefordította-e a kérdést egy érvényes kódképre.
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.
esemény
Intelligens alkalmazások létrehozása
márc. 17. 21 - márc. 21. 10
Csatlakozzon a meetup sorozathoz, hogy valós használati esetek alapján, skálázható AI-megoldásokat hozzon létre más fejlesztőkkel és szakértőkkel.
RegisztrációOktatás
Modul
Az Azure OpenAI szolgáltatás használatának első lépései - Training
Az Azure OpenAI szolgáltatás lehetővé teszi a mérnökök számára, hogy nagyvállalati szintű generatív AI-megoldásokat építsenek ki.
Tanúsítvány
Microsoft Tanúsítvány: Azure AI Mérnök Társ=minősítéssel Rendelkező - Certifications
Azure AI-megoldás tervezése és implementálása Az Azure AI-szolgáltatások, az Azure AI Search és az Azure Open AI használatával.