Rychlý start: Vytvoření nového agenta (Preview)
Služba agenta Azure AI umožňuje vytvářet agenty umělé inteligence přizpůsobené vašim potřebám prostřednictvím vlastních pokynů a rozšířená o pokročilé nástroje, jako je interpret kódu a vlastní funkce.
Požadavky
- Předplatné Azure – Vytvořte si ho zdarma.
- Ujistěte se, že máte přiřazenou roli Azure AI DeveloperRBAC.
Základní podpora instalace agenta
Než začnete, určete, jestli chcete provést základní nastavení agenta nebo standardní instalaci agenta. Azure AI Foundry podporuje pouze základní nastavení agenta.
Základní nastavení: Agenti používají víceklientských vyhledávacích a úložných prostředků plně spravovaných Microsoftem. Nemáte přehled ani kontrolu nad těmito podkladovými prostředky Azure. Základní nastavení je možné vytvořit pomocí portálu Azure AI Foundry nebo automatizované šablony bicep.
Standardní nastavení: Agenti používají prostředky vyhledávání a úložiště ve vlastnictví zákazníka s jedním tenantem. Díky tomuto nastavení máte plnou kontrolu a přehled o těchto prostředcích, ale na základě využití se vám účtují náklady. Standardní nastavení lze provést pouze pomocí automatizované šablony bicep.
Důležité
Portál Azure AI Foundry v současnosti podporuje pouze základní nastavení. Pokud chcete provést standardní nastavení agenta, pomocí dalších karet v horní části článku se dozvíte o standardní konfiguraci agenta.
Vytvoření centra a projektu na portálu Azure AI Foundry
K vytvoření nového centra a projektu potřebujete roli Vlastník nebo Přispěvatel ve skupině prostředků nebo v existujícím centru. Pokud nemůžete vytvořit centrum kvůli oprávněním, obraťte se na správce.
Pokud chcete vytvořit projekt v Azure AI Foundry, postupujte takto:
Přejděte do Azure AI Foundry. Pokud jste v projektu, vyberte Azure AI Foundry v levém horním rohu stránky a přejděte na domovskou stránku.
Vyberte + Vytvořit projekt.
Zadejte název projektu.
Pokud máte centrum, uvidíte ten, který jste naposledy použili.
Pokud máte přístup k více než jednomu centru, můžete v rozevíracím seznamu vybrat jiné centrum.
Pokud chcete vytvořit nový, vyberte Vytvořit nové centrum a zadejte název. Pokud chcete přizpůsobit výchozí hodnoty, přečtěte si dokumentaci k Azure AI Foundry.
Vyberte Vytvořit.
Nasazení modelu
Přihlaste se k Azure AI Foundry.
Přejděte do projektu nebo vytvořte nový projekt na portálu Azure AI Foundry.
V přehledu projektu vyberte Agenti v části Sestavení a přizpůsobení.
Vyberte prostředek Azure OpenAI.
Vyberte nasazení modelu, které má agent použít. Pokud ho nemáte, otevře se obrazovka pro nasazení nového modelu. V opačném případě můžete vybrat Možnost Nasadit model.
Použití dětského hřiště agenta
Dětské hřiště Agenti umožňuje zkoumat, prototypovat a testovat agenty, aniž byste museli spouštět jakýkoli kód. Na této stránce můžete rychle iterovat a experimentovat s novými nápady.
Na obrazovce Vytvořit a ladit agenty vyberte svého agenta nebo vytvořte nový s novým agentem. V podokně Nastavení na pravé straně můžete změnit jeho parametry a nástroje.
Volitelně můžete agentovi dát jiný název než ten, který je pro něj vygenerovaný, a přidat pokyny, které vám pomůžou zlepšit jeho výkon. Dejte agentovi jasné pokyny, co dělat a jak to udělat. Zahrňte konkrétní úkoly, jejich pořadí a jakékoli zvláštní pokyny, jako je tón nebo styl zapojení.
Tip
Váš agent má přístup k několika nástrojům, jako je interpret kódu, který rozšiřuje jeho možnosti, jako je možnost vyhledávání na webu pomocí Bingu, spouštění kódu a dalších. V podokně Nastavení se posuňte dolů na znalosti a akci a vyberte Přidat, abyste viděli nástroje, které jsou k dispozici pro použití.
Viz také
Podívejte se na modely , které můžete používat s agenty.
| Referenční dokumentace | – Ukázka | balíčku zdrojového kódu | knihovny (NuGet) |
Požadavky
- Předplatné Azure – Vytvořte si ho zdarma.
- Nejnovější verze .NET
- Ujistěte se, že máte přiřazenou roli RBAC pro vývojářeAzure AI na odpovídající úrovni.
- Nainstalujte Azure CLI a rozšíření strojového učení. Pokud už máte rozhraní příkazového řádku nainstalované, ujistěte se, že je aktualizované na nejnovější verzi.
Nastavení projektu Azure AI Hub a agenta
V následující části se dozvíte, jak nastavit požadované prostředky pro zahájení práce se službou agenta Azure AI:
Vytvoření centra Azure AI pro nastavení prostředí aplikace a prostředků Azure
Vytvoření projektu Azure AI v rámci centra vytvoří koncový bod pro volání vaší aplikace a nastaví aplikační služby pro přístup k prostředkům ve vašem tenantovi.
Připojení prostředku Azure OpenAI nebo prostředku Azure AI Services
Volba instalace základního nebo standardního agenta
Základní nastavení: Agenti používají víceklientských vyhledávacích a úložných prostředků plně spravovaných Microsoftem. Nemáte přehled ani kontrolu nad těmito podkladovými prostředky Azure.
Standardní nastavení: Agenti používají prostředky vyhledávání a úložiště ve vlastnictví zákazníka s jedním tenantem. Díky tomuto nastavení máte plnou kontrolu a přehled o těchto prostředcích, ale na základě využití se vám účtují náklady.
Poznámka:
K provedení standardního nebo základního agenta můžete použít následující automatizované šablony bicep. Základního agenta můžete vytvořit také pomocí portálu Azure AI Foundry. Azure AI Foundry v současné době nepodporuje standardní nastavení agenta.
[Volitelné] Výběr modelu v šabloně automatického nasazení
Model používaný vaším agentem můžete přizpůsobit úpravou parametrů modelu v šabloně automatického nasazení. Pokud chcete nasadit jiný model, musíte aktualizovat alespoň parametry modelName
a modelVersion
parametry.
Ve výchozím nastavení je šablona nasazení nakonfigurovaná s následujícími hodnotami:
Parametr modelu | Výchozí hodnota |
---|---|
modelName | gpt-4o-mini |
modelFormat | OpenAI (pro Azure OpenAI) |
modelVersion | 2024-07-18 |
modelSkuName | GlobalStandard |
modelLocation | eastus |
Důležité
Neměňte parametr modelFormat.
Šablony podporují pouze nasazení modelů Azure OpenAI. Informace o podporovaných modelech Azure OpenAI najdete v dokumentaci k podpoře modelů agenta Azure AI.
[Volitelné] Použití vlastních prostředků během instalace agenta
Poznámka:
Pokud používáte existující prostředek AI Services nebo Azure OpenAI, žádný model se nenasadí. Po dokončení instalace agenta můžete do prostředku nasadit model.
Pomocí existujících služeb AI, Azure OpenAI, AI Search a/nebo prostředku Azure Blob Storage zadejte úplné ID prostředku arm v souboru parametrů:
aiServiceAccountResourceId
aiSearchServiceResourceId
aiStorageAccountResourceId
Pokud chcete použít existující prostředek Azure OpenAI, musíte aktualizovat aiServiceAccountResourceId
aiServiceKind
parametry v souboru parametrů. Parametr aiServiceKind
by měl být nastaven na AzureOpenAI
hodnotu .
Další informace najdete v tématu použití vlastních prostředků.
Konfigurace a spuštění agenta
Komponenta | Popis |
---|---|
Agent | Vlastní AI, která ve spojení s nástroji používá modely AI. |
Nástroj | Nástroje pomáhají rozšířit schopnost agenta spolehlivě a přesně reagovat během konverzace. Například připojení k uživatelem definovaným znalostní báze k vytvoření modelu nebo povolení webového vyhledávání, aby poskytovalo aktuální informace. |
Vlákno | Relace konverzace mezi agentem a uživatelem. Vlákna ukládají zprávy a automaticky zpracovávají zkrácení tak, aby se vešel do kontextu modelu. |
Zpráva | Zpráva vytvořená agentem nebo uživatelem Zprávy můžou obsahovat text, obrázky a další soubory. Zprávy jsou uloženy jako seznam ve vlákně. |
Spustit | Aktivace agenta, který začne běžet na základě obsahu vlákna. Agent používá svoji konfiguraci a zprávy vlákna k provádění úloh voláním modelů a nástrojů. V rámci spuštění agent připojí zprávy do vlákna. |
Spustit krok | Podrobný seznamkrokůch Agent může během spuštění volat nástroje nebo vytvářet zprávy. Zkoumání kroků spuštění vám umožní pochopit, jak se agent dostává ke svým výsledkům. |
Nainstalujte balíček .NET do projektu. Pokud například používáte .NET CLI, spusťte následující příkaz.
dotnet add package Azure.AI.Projects
dotnet add package Azure.Identity
Dále k ověření požadavků rozhraní API a spuštění programu použijte příkaz az login a přihlaste se k předplatnému Azure.
az login
K vytvoření a spuštění agenta použijte následující kód. Pokud chcete tento kód spustit, budete muset vytvořit připojovací řetězec pomocí informací z projektu. Tento řetězec je ve formátu:
<HostName>;<AzureSubscriptionId>;<ResourceGroup>;<ProjectName>
Tip
Připojovací řetězec najdete také v přehledu projektu na portálu Azure AI Foundry v části Project details>Project připojovací řetězec.
HostName
naleznete tak, že přejdete na a odeberete discovery_url
úvodní https://
a koncové /discovery
. Pokud chcete najít svůj příkaz rozhraní příkazového řádku, spusťte discovery_url
tento příkaz rozhraní příkazového řádku:
az ml workspace show -n {project_name} --resource-group {resource_group_name} --query discovery_url
Vaše připojovací řetězec může například vypadat nějak takto:
eastus.api.azureml.ms;12345678-abcd-1234-9fc6-62780b3d3e05;my-resource-group;my-project-name
Nastavte tuto připojovací řetězec jako proměnnou prostředí s názvem PROJECT_CONNECTION_STRING
.
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
#nullable disable
using Azure.Identity;
namespace Azure.AI.Projects.Tests;
public class Sample_Agent
{
static async Task Main()
{
var connectionString = Environment.GetEnvironmentVariable("PROJECT_CONNECTION_STRING");
AgentsClient client = new AgentsClient(connectionString, new DefaultAzureCredential());
// Step 1: Create an agent
Response<Agent> agentResponse = await client.CreateAgentAsync(
model: "gpt-4o-mini",
name: "My Agent",
instructions: "You are a helpful agent.",
tools: new List<ToolDefinition> { new CodeInterpreterToolDefinition() });
Agent agent = agentResponse.Value;
// Intermission: agent should now be listed
Response<PageableList<Agent>> agentListResponse = await client.GetAgentsAsync();
//// Step 2: Create a thread
Response<AgentThread> threadResponse = await client.CreateThreadAsync();
AgentThread thread = threadResponse.Value;
// Step 3: Add a message to a thread
Response<ThreadMessage> messageResponse = await client.CreateMessageAsync(
thread.Id,
MessageRole.User,
"I need to solve the equation `3x + 11 = 14`. Can you help me?");
ThreadMessage message = messageResponse.Value;
// Intermission: message is now correlated with thread
// Intermission: listing messages will retrieve the message just added
Response<PageableList<ThreadMessage>> messagesListResponse = await client.GetMessagesAsync(thread.Id);
//Assert.That(messagesListResponse.Value.Data[0].Id == message.Id);
// Step 4: Run the agent
Response<ThreadRun> runResponse = await client.CreateRunAsync(
thread.Id,
agent.Id,
additionalInstructions: "");
ThreadRun run = runResponse.Value;
do
{
await Task.Delay(TimeSpan.FromMilliseconds(500));
runResponse = await client.GetRunAsync(thread.Id, runResponse.Value.Id);
}
while (runResponse.Value.Status == RunStatus.Queued
|| runResponse.Value.Status == RunStatus.InProgress);
Response<PageableList<ThreadMessage>> afterRunMessagesResponse
= await client.GetMessagesAsync(thread.Id);
IReadOnlyList<ThreadMessage> messages = afterRunMessagesResponse.Value.Data;
// Note: messages iterate from newest to oldest, with the messages[0] being the most recent
foreach (ThreadMessage threadMessage in messages)
{
Console.Write($"{threadMessage.CreatedAt:yyyy-MM-dd HH:mm:ss} - {threadMessage.Role,10}: ");
foreach (MessageContent contentItem in threadMessage.ContentItems)
{
if (contentItem is MessageTextContent textItem)
{
Console.Write(textItem.Text);
}
else if (contentItem is MessageImageFileContent imageFileItem)
{
Console.Write($"<image from ID: {imageFileItem.FileId}");
}
Console.WriteLine();
}
}
}
}
| Referenční dokumentace | – Balíček zdrojového kódu | knihovny ukázek | knihovny (PyPi) |
Požadavky
- Předplatné Azure – Vytvořte si ho zdarma.
- Python 3.8 nebo novější
- Ujistěte se, že máte přiřazenou roli RBAC pro vývojářeAzure AI na odpovídající úrovni.
- Nainstalujte Azure CLI a rozšíření strojového učení. Pokud už máte rozhraní příkazového řádku nainstalované, ujistěte se, že je aktualizované na nejnovější verzi.
Nastavení projektu Azure AI Hub a agenta
V následující části se dozvíte, jak nastavit požadované prostředky pro zahájení práce se službou agenta Azure AI:
Vytvoření centra Azure AI pro nastavení prostředí aplikace a prostředků Azure
Vytvoření projektu Azure AI v rámci centra vytvoří koncový bod pro volání vaší aplikace a nastaví aplikační služby pro přístup k prostředkům ve vašem tenantovi.
Připojení prostředku Azure OpenAI nebo prostředku Azure AI Services
Volba instalace základního nebo standardního agenta
Základní nastavení: Agenti používají víceklientských vyhledávacích a úložných prostředků plně spravovaných Microsoftem. Nemáte přehled ani kontrolu nad těmito podkladovými prostředky Azure.
Standardní nastavení: Agenti používají prostředky vyhledávání a úložiště ve vlastnictví zákazníka s jedním tenantem. Díky tomuto nastavení máte plnou kontrolu a přehled o těchto prostředcích, ale na základě využití se vám účtují náklady.
Poznámka:
K provedení standardního nebo základního agenta můžete použít následující automatizované šablony bicep. Základního agenta můžete vytvořit také pomocí portálu Azure AI Foundry. Azure AI Foundry v současné době nepodporuje standardní nastavení agenta.
[Volitelné] Výběr modelu v šabloně automatického nasazení
Model používaný vaším agentem můžete přizpůsobit úpravou parametrů modelu v šabloně automatického nasazení. Pokud chcete nasadit jiný model, musíte aktualizovat alespoň parametry modelName
a modelVersion
parametry.
Ve výchozím nastavení je šablona nasazení nakonfigurovaná s následujícími hodnotami:
Parametr modelu | Výchozí hodnota |
---|---|
modelName | gpt-4o-mini |
modelFormat | OpenAI (pro Azure OpenAI) |
modelVersion | 2024-07-18 |
modelSkuName | GlobalStandard |
modelLocation | eastus |
Důležité
Neměňte parametr modelFormat.
Šablony podporují pouze nasazení modelů Azure OpenAI. Informace o podporovaných modelech Azure OpenAI najdete v dokumentaci k podpoře modelů agenta Azure AI.
[Volitelné] Použití vlastních prostředků během instalace agenta
Poznámka:
Pokud používáte existující prostředek AI Services nebo Azure OpenAI, žádný model se nenasadí. Po dokončení instalace agenta můžete do prostředku nasadit model.
Pomocí existujících služeb AI, Azure OpenAI, AI Search a/nebo prostředku Azure Blob Storage zadejte úplné ID prostředku arm v souboru parametrů:
aiServiceAccountResourceId
aiSearchServiceResourceId
aiStorageAccountResourceId
Pokud chcete použít existující prostředek Azure OpenAI, musíte aktualizovat aiServiceAccountResourceId
aiServiceKind
parametry v souboru parametrů. Parametr aiServiceKind
by měl být nastaven na AzureOpenAI
hodnotu .
Další informace najdete v tématu použití vlastních prostředků.
Konfigurace a spuštění agenta
Komponenta | Popis |
---|---|
Agent | Vlastní AI, která ve spojení s nástroji používá modely AI. |
Nástroj | Nástroje pomáhají rozšířit schopnost agenta spolehlivě a přesně reagovat během konverzace. Například připojení k uživatelem definovaným znalostní báze k vytvoření modelu nebo povolení webového vyhledávání, aby poskytovalo aktuální informace. |
Vlákno | Relace konverzace mezi agentem a uživatelem. Vlákna ukládají zprávy a automaticky zpracovávají zkrácení tak, aby se vešel do kontextu modelu. |
Zpráva | Zpráva vytvořená agentem nebo uživatelem Zprávy můžou obsahovat text, obrázky a další soubory. Zprávy jsou uloženy jako seznam ve vlákně. |
Spustit | Aktivace agenta, který začne běžet na základě obsahu vlákna. Agent používá svoji konfiguraci a zprávy vlákna k provádění úloh voláním modelů a nástrojů. V rámci spuštění agent připojí zprávy do vlákna. |
Spustit krok | Podrobný seznamkrokůch Agent může během spuštění volat nástroje nebo vytvářet zprávy. Zkoumání kroků spuštění vám umožní pochopit, jak se agent dostává ke svým výsledkům. |
Spuštěním následujících příkazů nainstalujte balíčky Pythonu.
pip install azure-ai-projects
pip install azure-identity
Dále k ověření požadavků rozhraní API a spuštění programu použijte příkaz az login a přihlaste se k předplatnému Azure.
az login
K vytvoření a spuštění agenta použijte následující kód. Pokud chcete tento kód spustit, budete muset vytvořit připojovací řetězec pomocí informací z projektu. Tento řetězec je ve formátu:
<HostName>;<AzureSubscriptionId>;<ResourceGroup>;<ProjectName>
Tip
Připojovací řetězec najdete také v přehledu projektu na portálu Azure AI Foundry v části Project details>Project připojovací řetězec.
HostName
naleznete tak, že přejdete na a odeberete discovery_url
úvodní https://
a koncové /discovery
. Pokud chcete najít svůj příkaz rozhraní příkazového řádku, spusťte discovery_url
tento příkaz rozhraní příkazového řádku:
az ml workspace show -n {project_name} --resource-group {resource_group_name} --query discovery_url
Vaše připojovací řetězec může například vypadat nějak takto:
eastus.api.azureml.ms;12345678-abcd-1234-9fc6-62780b3d3e05;my-resource-group;my-project-name
Nastavte tuto připojovací řetězec jako proměnnou prostředí s názvem PROJECT_CONNECTION_STRING
.
import os
from azure.ai.projects import AIProjectClient
from azure.ai.projects.models import CodeInterpreterTool
from azure.identity import DefaultAzureCredential
from typing import Any
from pathlib import Path
# Create an Azure AI Client from a connection string, copied from your Azure AI Foundry project.
# At the moment, it should be in the format "<HostName>;<AzureSubscriptionId>;<ResourceGroup>;<ProjectName>"
# HostName can be found by navigating to your discovery_url and removing the leading "https://" and trailing "/discovery"
# To find your discovery_url, run the CLI command: az ml workspace show -n {project_name} --resource-group {resource_group_name} --query discovery_url
# Project Connection example: eastus.api.azureml.ms;12345678-abcd-1234-9fc6-62780b3d3e05;my-resource-group;my-project-name
# Customer needs to login to Azure subscription via Azure CLI and set the environment variables
project_client = AIProjectClient.from_connection_string(
credential=DefaultAzureCredential(), conn_str=os.environ["PROJECT_CONNECTION_STRING"]
)
with project_client:
# Create an instance of the CodeInterpreterTool
code_interpreter = CodeInterpreterTool()
# The CodeInterpreterTool needs to be included in creation of the agent
agent = project_client.agents.create_agent(
model="gpt-4o-mini",
name="my-agent",
instructions="You are helpful agent",
tools=code_interpreter.definitions,
tool_resources=code_interpreter.resources,
)
print(f"Created agent, agent ID: {agent.id}")
# Create a thread
thread = project_client.agents.create_thread()
print(f"Created thread, thread ID: {thread.id}")
# Create a message
message = project_client.agents.create_message(
thread_id=thread.id,
role="user",
content="Could you please create a bar chart for the operating profit using the following data and provide the file to me? Company A: $1.2 million, Company B: $2.5 million, Company C: $3.0 million, Company D: $1.8 million",
)
print(f"Created message, message ID: {message.id}")
# Run the agent
run = project_client.agents.create_and_process_run(thread_id=thread.id, assistant_id=agent.id)
print(f"Run finished with status: {run.status}")
if run.status == "failed":
# Check if you got "Rate limit is exceeded.", then you want to get more quota
print(f"Run failed: {run.last_error}")
# Get messages from the thread
messages = project_client.agents.list_messages(thread_id=thread.id)
print(f"Messages: {messages}")
# Get the last message from the sender
last_msg = messages.get_last_text_message_by_role("assistant")
if last_msg:
print(f"Last Message: {last_msg.text.value}")
# Generate an image file for the bar chart
for image_content in messages.image_contents:
print(f"Image File ID: {image_content.image_file.file_id}")
file_name = f"{image_content.image_file.file_id}_image_file.png"
project_client.agents.save_file(file_id=image_content.image_file.file_id, file_name=file_name)
print(f"Saved image file to: {Path.cwd() / file_name}")
# Print the file path(s) from the messages
for file_path_annotation in messages.file_path_annotations:
print(f"File Paths:")
print(f"Type: {file_path_annotation.type}")
print(f"Text: {file_path_annotation.text}")
print(f"File ID: {file_path_annotation.file_path.file_id}")
print(f"Start Index: {file_path_annotation.start_index}")
print(f"End Index: {file_path_annotation.end_index}")
project_client.agents.save_file(file_id=file_path_annotation.file_path.file_id, file_name=Path(file_path_annotation.text).name)
# Delete the agent once done
project_client.agents.delete_agent(agent.id)
print("Deleted agent")
| Referenční dokumentace | – Balíček zdrojového kódu | knihovny (PyPi) |
Požadavky
- Předplatné Azure – Vytvořte si ho zdarma.
- Python 3.8 nebo novější
- Ujistěte se, že máte přiřazenou roli RBAC pro vývojářeAzure AI na odpovídající úrovni.
- K používání prostředku Azure AI Services potřebujete přiřazenou roli uživatele OpenAI služeb Cognitive Services.
- Nainstalujte Azure CLI a rozšíření strojového učení. Pokud už máte rozhraní příkazového řádku nainstalované, ujistěte se, že je aktualizované na nejnovější verzi.
Nastavení projektu Azure AI Hub a agenta
V následující části se dozvíte, jak nastavit požadované prostředky pro zahájení práce se službou agenta Azure AI:
Vytvoření centra Azure AI pro nastavení prostředí aplikace a prostředků Azure
Vytvoření projektu Azure AI v rámci centra vytvoří koncový bod pro volání vaší aplikace a nastaví aplikační služby pro přístup k prostředkům ve vašem tenantovi.
Připojení prostředku Azure OpenAI nebo prostředku Azure AI Services
Volba instalace základního nebo standardního agenta
Základní nastavení: Agenti používají víceklientských vyhledávacích a úložných prostředků plně spravovaných Microsoftem. Nemáte přehled ani kontrolu nad těmito podkladovými prostředky Azure.
Standardní nastavení: Agenti používají prostředky vyhledávání a úložiště ve vlastnictví zákazníka s jedním tenantem. Díky tomuto nastavení máte plnou kontrolu a přehled o těchto prostředcích, ale na základě využití se vám účtují náklady.
Poznámka:
K provedení standardního nebo základního agenta můžete použít následující automatizované šablony bicep. Základního agenta můžete vytvořit také pomocí portálu Azure AI Foundry. Azure AI Foundry v současné době nepodporuje standardní nastavení agenta.
[Volitelné] Výběr modelu v šabloně automatického nasazení
Model používaný vaším agentem můžete přizpůsobit úpravou parametrů modelu v šabloně automatického nasazení. Pokud chcete nasadit jiný model, musíte aktualizovat alespoň parametry modelName
a modelVersion
parametry.
Ve výchozím nastavení je šablona nasazení nakonfigurovaná s následujícími hodnotami:
Parametr modelu | Výchozí hodnota |
---|---|
modelName | gpt-4o-mini |
modelFormat | OpenAI (pro Azure OpenAI) |
modelVersion | 2024-07-18 |
modelSkuName | GlobalStandard |
modelLocation | eastus |
Důležité
Neměňte parametr modelFormat.
Šablony podporují pouze nasazení modelů Azure OpenAI. Informace o podporovaných modelech Azure OpenAI najdete v dokumentaci k podpoře modelů agenta Azure AI.
[Volitelné] Použití vlastních prostředků během instalace agenta
Poznámka:
Pokud používáte existující prostředek AI Services nebo Azure OpenAI, žádný model se nenasadí. Po dokončení instalace agenta můžete do prostředku nasadit model.
Pomocí existujících služeb AI, Azure OpenAI, AI Search a/nebo prostředku Azure Blob Storage zadejte úplné ID prostředku arm v souboru parametrů:
aiServiceAccountResourceId
aiSearchServiceResourceId
aiStorageAccountResourceId
Pokud chcete použít existující prostředek Azure OpenAI, musíte aktualizovat aiServiceAccountResourceId
aiServiceKind
parametry v souboru parametrů. Parametr aiServiceKind
by měl být nastaven na AzureOpenAI
hodnotu .
Další informace najdete v tématu použití vlastních prostředků.
Konfigurace a spuštění agenta
Komponenta | Popis |
---|---|
Agent | Vlastní AI, která ve spojení s nástroji používá modely AI. |
Nástroj | Nástroje pomáhají rozšířit schopnost agenta spolehlivě a přesně reagovat během konverzace. Například připojení k uživatelem definovaným znalostní báze k vytvoření modelu nebo povolení webového vyhledávání, aby poskytovalo aktuální informace. |
Vlákno | Relace konverzace mezi agentem a uživatelem. Vlákna ukládají zprávy a automaticky zpracovávají zkrácení tak, aby se vešel do kontextu modelu. |
Zpráva | Zpráva vytvořená agentem nebo uživatelem Zprávy můžou obsahovat text, obrázky a další soubory. Zprávy jsou uloženy jako seznam ve vlákně. |
Spustit | Aktivace agenta, který začne běžet na základě obsahu vlákna. Agent používá svoji konfiguraci a zprávy vlákna k provádění úloh voláním modelů a nástrojů. V rámci spuštění agent připojí zprávy do vlákna. |
Spustit krok | Podrobný seznamkrokůch Agent může během spuštění volat nástroje nebo vytvářet zprávy. Zkoumání kroků spuštění vám umožní pochopit, jak se agent dostává ke svým výsledkům. |
Spuštěním následujících příkazů nainstalujte balíčky Pythonu.
pip install azure-ai-projects
pip install azure-identity
pip install openai
Dále k ověření požadavků rozhraní API a spuštění programu použijte příkaz az login a přihlaste se k předplatnému Azure.
az login
K vytvoření a spuštění agenta použijte následující kód. Pokud chcete tento kód spustit, budete muset vytvořit připojovací řetězec pomocí informací z projektu. Tento řetězec je ve formátu:
<HostName>;<AzureSubscriptionId>;<ResourceGroup>;<ProjectName>
Tip
Připojovací řetězec najdete také v přehledu projektu na portálu Azure AI Foundry v části Project details>Project připojovací řetězec.
HostName
naleznete tak, že přejdete na a odeberete discovery_url
úvodní https://
a koncové /discovery
. Pokud chcete najít svůj příkaz rozhraní příkazového řádku, spusťte discovery_url
tento příkaz rozhraní příkazového řádku:
az ml workspace show -n {project_name} --resource-group {resource_group_name} --query discovery_url
Vaše připojovací řetězec může například vypadat nějak takto:
eastus.api.azureml.ms;12345678-abcd-1234-9fc6-62780b3d3e05;my-resource-group;my-project-name
Nastavte tuto připojovací řetězec jako proměnnou prostředí s názvem PROJECT_CONNECTION_STRING
.
import os, time
from azure.ai.projects import AIProjectClient
from azure.identity import DefaultAzureCredential
from openai import AzureOpenAI
with AIProjectClient.from_connection_string(
credential=DefaultAzureCredential(),
conn_str=os.environ["PROJECT_CONNECTION_STRING"],
) as project_client:
# Explicit type hinting for IntelliSense
client: AzureOpenAI = project_client.inference.get_azure_openai_client(
# The latest API version is 2024-10-01-preview
api_version = os.environ.get("AZURE_OPENAI_API_VERSION"),
)
with client:
agent = client.beta.assistants.create(
model="gpt-4o-mini", name="my-agent", instructions="You are a helpful agent"
)
print(f"Created agent, agent ID: {agent.id}")
thread = client.beta.threads.create()
print(f"Created thread, thread ID: {thread.id}")
message = client.beta.threads.messages.create(thread_id=thread.id, role="user", content="Hello, tell me a joke")
print(f"Created message, message ID: {message.id}")
run = client.beta.threads.runs.create(thread_id=thread.id, assistant_id=agent.id)
# Poll the run while run status is queued or in progress
while run.status in ["queued", "in_progress", "requires_action"]:
time.sleep(1) # Wait for a second
run = client.beta.threads.runs.retrieve(thread_id=thread.id, run_id=run.id)
print(f"Run status: {run.status}")
client.beta.assistants.delete(agent.id)
print("Deleted agent")
messages = client.beta.threads.messages.list(thread_id=thread.id)
print(f"Messages: {messages}")
| Referenční dokumentace | – Balíček zdrojového kódu | knihovny ukázek | knihovny (npm) |
Požadavky
- Předplatné Azure – Vytvořte si ho zdarma.
- Node.js LTS
- Ujistěte se, že máte přiřazenou roli RBAC pro vývojářeAzure AI na odpovídající úrovni.
- Nainstalujte Azure CLI a rozšíření strojového učení. Pokud už máte rozhraní příkazového řádku nainstalované, ujistěte se, že je aktualizované na nejnovější verzi.
Nastavení projektu Azure AI Hub a agenta
V následující části se dozvíte, jak nastavit požadované prostředky pro zahájení práce se službou agenta Azure AI:
Vytvoření centra Azure AI pro nastavení prostředí aplikace a prostředků Azure
Vytvoření projektu Azure AI v rámci centra vytvoří koncový bod pro volání vaší aplikace a nastaví aplikační služby pro přístup k prostředkům ve vašem tenantovi.
Připojení prostředku Azure OpenAI nebo prostředku Azure AI Services
Volba instalace základního nebo standardního agenta
Základní nastavení: Agenti používají víceklientských vyhledávacích a úložných prostředků plně spravovaných Microsoftem. Nemáte přehled ani kontrolu nad těmito podkladovými prostředky Azure.
Standardní nastavení: Agenti používají prostředky vyhledávání a úložiště ve vlastnictví zákazníka s jedním tenantem. Díky tomuto nastavení máte plnou kontrolu a přehled o těchto prostředcích, ale na základě využití se vám účtují náklady.
Poznámka:
K provedení standardního nebo základního agenta můžete použít následující automatizované šablony bicep. Základního agenta můžete vytvořit také pomocí portálu Azure AI Foundry. Azure AI Foundry v současné době nepodporuje standardní nastavení agenta.
[Volitelné] Výběr modelu v šabloně automatického nasazení
Model používaný vaším agentem můžete přizpůsobit úpravou parametrů modelu v šabloně automatického nasazení. Pokud chcete nasadit jiný model, musíte aktualizovat alespoň parametry modelName
a modelVersion
parametry.
Ve výchozím nastavení je šablona nasazení nakonfigurovaná s následujícími hodnotami:
Parametr modelu | Výchozí hodnota |
---|---|
modelName | gpt-4o-mini |
modelFormat | OpenAI (pro Azure OpenAI) |
modelVersion | 2024-07-18 |
modelSkuName | GlobalStandard |
modelLocation | eastus |
Důležité
Neměňte parametr modelFormat.
Šablony podporují pouze nasazení modelů Azure OpenAI. Informace o podporovaných modelech Azure OpenAI najdete v dokumentaci k podpoře modelů agenta Azure AI.
[Volitelné] Použití vlastních prostředků během instalace agenta
Poznámka:
Pokud používáte existující prostředek AI Services nebo Azure OpenAI, žádný model se nenasadí. Po dokončení instalace agenta můžete do prostředku nasadit model.
Pomocí existujících služeb AI, Azure OpenAI, AI Search a/nebo prostředku Azure Blob Storage zadejte úplné ID prostředku arm v souboru parametrů:
aiServiceAccountResourceId
aiSearchServiceResourceId
aiStorageAccountResourceId
Pokud chcete použít existující prostředek Azure OpenAI, musíte aktualizovat aiServiceAccountResourceId
aiServiceKind
parametry v souboru parametrů. Parametr aiServiceKind
by měl být nastaven na AzureOpenAI
hodnotu .
Další informace najdete v tématu použití vlastních prostředků.
Konfigurace a spuštění agenta
Komponenta | Popis |
---|---|
Agent | Vlastní AI, která ve spojení s nástroji používá modely AI. |
Nástroj | Nástroje pomáhají rozšířit schopnost agenta spolehlivě a přesně reagovat během konverzace. Například připojení k uživatelem definovaným znalostní báze k vytvoření modelu nebo povolení webového vyhledávání, aby poskytovalo aktuální informace. |
Vlákno | Relace konverzace mezi agentem a uživatelem. Vlákna ukládají zprávy a automaticky zpracovávají zkrácení tak, aby se vešel do kontextu modelu. |
Zpráva | Zpráva vytvořená agentem nebo uživatelem Zprávy můžou obsahovat text, obrázky a další soubory. Zprávy jsou uloženy jako seznam ve vlákně. |
Spustit | Aktivace agenta, který začne běžet na základě obsahu vlákna. Agent používá svoji konfiguraci a zprávy vlákna k provádění úloh voláním modelů a nástrojů. V rámci spuštění agent připojí zprávy do vlákna. |
Spustit krok | Podrobný seznamkrokůch Agent může během spuštění volat nástroje nebo vytvářet zprávy. Zkoumání kroků spuštění vám umožní pochopit, jak se agent dostává ke svým výsledkům. |
Spuštěním následujících příkazů nainstalujte balíčky npm.
npm install @azure/ai-projects
npm install @azure/identity
Dále k ověření požadavků rozhraní API a spuštění programu použijte příkaz az login a přihlaste se k předplatnému Azure.
az login
K vytvoření a spuštění agenta použijte následující kód. Pokud chcete tento kód spustit, budete muset vytvořit připojovací řetězec pomocí informací z projektu. Tento řetězec je ve formátu:
<HostName>;<AzureSubscriptionId>;<ResourceGroup>;<ProjectName>
Tip
Připojovací řetězec najdete také v přehledu projektu na portálu Azure AI Foundry v části Project details>Project připojovací řetězec.
HostName
naleznete tak, že přejdete na a odeberete discovery_url
úvodní https://
a koncové /discovery
. Pokud chcete najít svůj příkaz rozhraní příkazového řádku, spusťte discovery_url
tento příkaz rozhraní příkazového řádku:
az ml workspace show -n {project_name} --resource-group {resource_group_name} --query discovery_url
Vaše připojovací řetězec může například vypadat nějak takto:
eastus.api.azureml.ms;12345678-abcd-1234-9fc6-62780b3d3e05;my-resource-group;my-project-name
Nastavte tuto připojovací řetězec jako proměnnou prostředí s názvem PROJECT_CONNECTION_STRING
.
// index.js
import {
AIProjectsClient,
DoneEvent,
ErrorEvent,
isOutputOfType,
MessageStreamEvent,
RunStreamEvent,
ToolUtility,
} from "@azure/ai-projects";
import { DefaultAzureCredential } from "@azure/identity";
const connectionString =
process.env["AZURE_AI_PROJECTS_CONNECTION_STRING"] || "<project connection string>";
if (!connectionString) {
throw new Error("AZURE_AI_PROJECTS_CONNECTION_STRING must be set in the environment variables");
}
export async function main() {
const client = AIProjectsClient.fromConnectionString(
connectionString || "",
new DefaultAzureCredential(),
);
// Step 1 code interpreter tool
const codeInterpreterTool = ToolUtility.createCodeInterpreterTool();
// Step 2 an agent
const agent = await client.agents.createAgent("gpt-4o-mini", {
name: "my-agent",
instructions: "You are a helpful agent",
tools: [codeInterpreterTool.definition],
toolResources: codeInterpreterTool.resources,
});
// Step 3 a thread
const thread = await client.agents.createThread();
// Step 4 a message to thread
await client.agents.createMessage(
thread.id, {
role: "user",
content: "I need to solve the equation `3x + 11 = 14`. Can you help me?",
});
// Intermission is now correlated with thread
// Intermission messages will retrieve the message just added
// Step 5 the agent
const streamEventMessages = await client.agents.createRun(thread.id, agent.id).stream();
for await (const eventMessage of streamEventMessages) {
switch (eventMessage.event) {
case RunStreamEvent.ThreadRunCreated:
break;
case MessageStreamEvent.ThreadMessageDelta:
{
const messageDelta = eventMessage.data;
messageDelta.delta.content.forEach((contentPart) => {
if (contentPart.type === "text") {
const textContent = contentPart;
const textValue = textContent.text?.value || "No text";
}
});
}
break;
case RunStreamEvent.ThreadRunCompleted:
break;
case ErrorEvent.Error:
console.log(`An error occurred. Data ${eventMessage.data}`);
break;
case DoneEvent.Done:
break;
}
}
// 6. Print the messages from the agent
const messages = await client.agents.listMessages(thread.id);
// Messages iterate from oldest to newest
// messages[0] is the most recent
for (let i = messages.data.length - 1; i >= 0; i--) {
const m = messages.data[i];
if (isOutputOfType(m.content[0], "text")) {
const textContent = m.content[0];
console.log(`${textContent.text.value}`);
console.log(`---------------------------------`);
}
}
// 7. Delete the agent once done
await client.agents.deleteAgent(agent.id);
}
main().catch((err) => {
console.error("The sample encountered an error:", err);
});
Výstup obsahuje výzvu a odpovědi.
I need to solve the equation `3x + 11 = 14`. Can you help me?
---------------------------------
Sure! I can help you solve the equation \(3x + 11 = 14\).
To solve this equation, we need to isolate the variable \(x\). Let's go ahead and solve it.
---------------------------------
The solution to the equation \(3x + 11 = 14\) is \(x = 1\).
Therefore, the value of \(x\) that satisfies the equation is 1.
Let me know if you need help with anything else!
---------------------------------
| Referenční dokumentace | – Balíček zdrojového kódu | knihovny ukázek | knihovny (npm) |
Požadavky
- Předplatné Azure – Vytvořte si ho zdarma.
- Node.js LTS
- TypeScript 5.x
- Ujistěte se, že máte přiřazenou roli RBAC pro vývojářeAzure AI na odpovídající úrovni.
- Nainstalujte Azure CLI a rozšíření strojového učení. Pokud už máte rozhraní příkazového řádku nainstalované, ujistěte se, že je aktualizované na nejnovější verzi.
Nastavení projektu Azure AI Hub a agenta
V následující části se dozvíte, jak nastavit požadované prostředky pro zahájení práce se službou agenta Azure AI:
Vytvoření centra Azure AI pro nastavení prostředí aplikace a prostředků Azure
Vytvoření projektu Azure AI v rámci centra vytvoří koncový bod pro volání vaší aplikace a nastaví aplikační služby pro přístup k prostředkům ve vašem tenantovi.
Připojení prostředku Azure OpenAI nebo prostředku Azure AI Services
Volba instalace základního nebo standardního agenta
Základní nastavení: Agenti používají víceklientských vyhledávacích a úložných prostředků plně spravovaných Microsoftem. Nemáte přehled ani kontrolu nad těmito podkladovými prostředky Azure.
Standardní nastavení: Agenti používají prostředky vyhledávání a úložiště ve vlastnictví zákazníka s jedním tenantem. Díky tomuto nastavení máte plnou kontrolu a přehled o těchto prostředcích, ale na základě využití se vám účtují náklady.
Poznámka:
K provedení standardního nebo základního agenta můžete použít následující automatizované šablony bicep. Základního agenta můžete vytvořit také pomocí portálu Azure AI Foundry. Azure AI Foundry v současné době nepodporuje standardní nastavení agenta.
[Volitelné] Výběr modelu v šabloně automatického nasazení
Model používaný vaším agentem můžete přizpůsobit úpravou parametrů modelu v šabloně automatického nasazení. Pokud chcete nasadit jiný model, musíte aktualizovat alespoň parametry modelName
a modelVersion
parametry.
Ve výchozím nastavení je šablona nasazení nakonfigurovaná s následujícími hodnotami:
Parametr modelu | Výchozí hodnota |
---|---|
modelName | gpt-4o-mini |
modelFormat | OpenAI (pro Azure OpenAI) |
modelVersion | 2024-07-18 |
modelSkuName | GlobalStandard |
modelLocation | eastus |
Důležité
Neměňte parametr modelFormat.
Šablony podporují pouze nasazení modelů Azure OpenAI. Informace o podporovaných modelech Azure OpenAI najdete v dokumentaci k podpoře modelů agenta Azure AI.
[Volitelné] Použití vlastních prostředků během instalace agenta
Poznámka:
Pokud používáte existující prostředek AI Services nebo Azure OpenAI, žádný model se nenasadí. Po dokončení instalace agenta můžete do prostředku nasadit model.
Pomocí existujících služeb AI, Azure OpenAI, AI Search a/nebo prostředku Azure Blob Storage zadejte úplné ID prostředku arm v souboru parametrů:
aiServiceAccountResourceId
aiSearchServiceResourceId
aiStorageAccountResourceId
Pokud chcete použít existující prostředek Azure OpenAI, musíte aktualizovat aiServiceAccountResourceId
aiServiceKind
parametry v souboru parametrů. Parametr aiServiceKind
by měl být nastaven na AzureOpenAI
hodnotu .
Další informace najdete v tématu použití vlastních prostředků.
Konfigurace a spuštění agenta
Komponenta | Popis |
---|---|
Agent | Vlastní AI, která ve spojení s nástroji používá modely AI. |
Nástroj | Nástroje pomáhají rozšířit schopnost agenta spolehlivě a přesně reagovat během konverzace. Například připojení k uživatelem definovaným znalostní báze k vytvoření modelu nebo povolení webového vyhledávání, aby poskytovalo aktuální informace. |
Vlákno | Relace konverzace mezi agentem a uživatelem. Vlákna ukládají zprávy a automaticky zpracovávají zkrácení tak, aby se vešel do kontextu modelu. |
Zpráva | Zpráva vytvořená agentem nebo uživatelem Zprávy můžou obsahovat text, obrázky a další soubory. Zprávy jsou uloženy jako seznam ve vlákně. |
Spustit | Aktivace agenta, který začne běžet na základě obsahu vlákna. Agent používá svoji konfiguraci a zprávy vlákna k provádění úloh voláním modelů a nástrojů. V rámci spuštění agent připojí zprávy do vlákna. |
Spustit krok | Podrobný seznamkrokůch Agent může během spuštění volat nástroje nebo vytvářet zprávy. Zkoumání kroků spuštění vám umožní pochopit, jak se agent dostává ke svým výsledkům. |
Spuštěním následujících příkazů nainstalujte balíčky npm.
npm install @azure/ai-projects
npm install @azure/identity
Dále k ověření požadavků rozhraní API a spuštění programu použijte příkaz az login a přihlaste se k předplatnému Azure.
az login
K vytvoření a spuštění agenta použijte následující kód. Pokud chcete tento kód spustit, budete muset vytvořit připojovací řetězec pomocí informací z projektu. Tento řetězec je ve formátu:
<HostName>;<AzureSubscriptionId>;<ResourceGroup>;<ProjectName>
Tip
Připojovací řetězec najdete také v přehledu projektu na portálu Azure AI Foundry v části Project details>Project připojovací řetězec.
HostName
naleznete tak, že přejdete na a odeberete discovery_url
úvodní https://
a koncové /discovery
. Pokud chcete najít svůj příkaz rozhraní příkazového řádku, spusťte discovery_url
tento příkaz rozhraní příkazového řádku:
az ml workspace show -n {project_name} --resource-group {resource_group_name} --query discovery_url
Vaše připojovací řetězec může například vypadat nějak takto:
eastus.api.azureml.ms;12345678-abcd-1234-9fc6-62780b3d3e05;my-resource-group;my-project-name
Nastavte tuto připojovací řetězec jako proměnnou prostředí s názvem PROJECT_CONNECTION_STRING
.
// index.ts
import type {
MessageDeltaChunk,
MessageDeltaTextContent,
MessageTextContentOutput,
} from "@azure/ai-projects";
import {
AIProjectsClient,
DoneEvent,
ErrorEvent,
isOutputOfType,
MessageStreamEvent,
RunStreamEvent,
ToolUtility,
} from "@azure/ai-projects";
import { DefaultAzureCredential } from "@azure/identity";
const connectionString =
process.env["AZURE_AI_PROJECTS_CONNECTION_STRING"] || "<project connection string>";
if (!connectionString) {
throw new Error("AZURE_AI_PROJECTS_CONNECTION_STRING must be set in the environment variables");
}
export async function main(): Promise<void> {
const client = AIProjectsClient.fromConnectionString(
connectionString || "",
new DefaultAzureCredential(),
);
// Step 1: Create code interpreter tool
const codeInterpreterTool = ToolUtility.createCodeInterpreterTool();
// Step 2: Create an agent
const agent = await client.agents.createAgent("gpt-4o-mini", {
name: "my-agent",
instructions: "You are a helpful agent",
tools: [codeInterpreterTool.definition],
toolResources: codeInterpreterTool.resources,
});
// Step 3: Create a thread
const thread = await client.agents.createThread();
// Step 4: Add a message to thread
await client.agents.createMessage(
thread.id, {
role: "user",
content: "I need to solve the equation `3x + 11 = 14`. Can you help me?",
});
// Intermission: message is now correlated with thread
// Intermission: listing messages will retrieve the message just added
// Step 5: Run the agent
const streamEventMessages = await client.agents.createRun(thread.id, agent.id).stream();
for await (const eventMessage of streamEventMessages) {
switch (eventMessage.event) {
case RunStreamEvent.ThreadRunCreated:
break;
case MessageStreamEvent.ThreadMessageDelta:
{
const messageDelta = eventMessage.data as MessageDeltaChunk;
messageDelta.delta.content.forEach((contentPart) => {
if (contentPart.type === "text") {
const textContent = contentPart as MessageDeltaTextContent;
const textValue = textContent.text?.value || "No text";
}
});
}
break;
case RunStreamEvent.ThreadRunCompleted:
break;
case ErrorEvent.Error:
console.log(`An error occurred. Data ${eventMessage.data}`);
break;
case DoneEvent.Done:
break;
}
}
// 6. Print the messages from the agent
const messages = await client.agents.listMessages(thread.id);
// Messages iterate from oldest to newest
// messages[0] is the most recent
for (let i = messages.data.length - 1; i >= 0; i--) {
const m = messages.data[i];
if (isOutputOfType<MessageTextContentOutput>(m.content[0], "text")) {
const textContent = m.content[0] as MessageTextContentOutput;
console.log(`${textContent.text.value}`);
console.log(`---------------------------------`);
}
}
// 7. Delete the agent once done
await client.agents.deleteAgent(agent.id);
}
main().catch((err) => {
console.error("The sample encountered an error:", err);
});
Výstup obsahuje výzvu a odpovědi.
I need to solve the equation `3x + 11 = 14`. Can you help me?
---------------------------------
Sure! I can help you solve the equation \(3x + 11 = 14\).
To solve this equation, we need to isolate the variable \(x\). Let's go ahead and solve it.
---------------------------------
The solution to the equation \(3x + 11 = 14\) is \(x = 1\).
Therefore, the value of \(x\) that satisfies the equation is 1.
Let me know if you need help with anything else!
---------------------------------
Požadavky
- Předplatné Azure – Vytvořte si ho zdarma.
- Ujistěte se, že máte přiřazenou roli RBAC pro vývojářeAzure AI na odpovídající úrovni.
- K používání prostředku Azure AI Services potřebujete přiřazenou roli uživatele OpenAI služeb Cognitive Services.
- Nainstalujte Azure CLI a rozšíření strojového učení. Pokud už máte rozhraní příkazového řádku nainstalované, ujistěte se, že je aktualizované na nejnovější verzi.
Nastavení projektu Azure AI Hub a agenta
V následující části se dozvíte, jak nastavit požadované prostředky pro zahájení práce se službou agenta Azure AI:
Vytvoření centra Azure AI pro nastavení prostředí aplikace a prostředků Azure
Vytvoření projektu Azure AI v rámci centra vytvoří koncový bod pro volání vaší aplikace a nastaví aplikační služby pro přístup k prostředkům ve vašem tenantovi.
Připojení prostředku Azure OpenAI nebo prostředku Azure AI Services
Volba instalace základního nebo standardního agenta
Základní nastavení: Agenti používají víceklientských vyhledávacích a úložných prostředků plně spravovaných Microsoftem. Nemáte přehled ani kontrolu nad těmito podkladovými prostředky Azure.
Standardní nastavení: Agenti používají prostředky vyhledávání a úložiště ve vlastnictví zákazníka s jedním tenantem. Díky tomuto nastavení máte plnou kontrolu a přehled o těchto prostředcích, ale na základě využití se vám účtují náklady.
Poznámka:
K provedení standardního nebo základního agenta můžete použít následující automatizované šablony bicep. Základního agenta můžete vytvořit také pomocí portálu Azure AI Foundry. Azure AI Foundry v současné době nepodporuje standardní nastavení agenta.
[Volitelné] Výběr modelu v šabloně automatického nasazení
Model používaný vaším agentem můžete přizpůsobit úpravou parametrů modelu v šabloně automatického nasazení. Pokud chcete nasadit jiný model, musíte aktualizovat alespoň parametry modelName
a modelVersion
parametry.
Ve výchozím nastavení je šablona nasazení nakonfigurovaná s následujícími hodnotami:
Parametr modelu | Výchozí hodnota |
---|---|
modelName | gpt-4o-mini |
modelFormat | OpenAI (pro Azure OpenAI) |
modelVersion | 2024-07-18 |
modelSkuName | GlobalStandard |
modelLocation | eastus |
Důležité
Neměňte parametr modelFormat.
Šablony podporují pouze nasazení modelů Azure OpenAI. Informace o podporovaných modelech Azure OpenAI najdete v dokumentaci k podpoře modelů agenta Azure AI.
[Volitelné] Použití vlastních prostředků během instalace agenta
Poznámka:
Pokud používáte existující prostředek AI Services nebo Azure OpenAI, žádný model se nenasadí. Po dokončení instalace agenta můžete do prostředku nasadit model.
Pomocí existujících služeb AI, Azure OpenAI, AI Search a/nebo prostředku Azure Blob Storage zadejte úplné ID prostředku arm v souboru parametrů:
aiServiceAccountResourceId
aiSearchServiceResourceId
aiStorageAccountResourceId
Pokud chcete použít existující prostředek Azure OpenAI, musíte aktualizovat aiServiceAccountResourceId
aiServiceKind
parametry v souboru parametrů. Parametr aiServiceKind
by měl být nastaven na AzureOpenAI
hodnotu .
Další informace najdete v tématu použití vlastních prostředků.
Konfigurace a spuštění agenta
Komponenta | Popis |
---|---|
Agent | Vlastní AI, která ve spojení s nástroji používá modely AI. |
Nástroj | Nástroje pomáhají rozšířit schopnost agenta spolehlivě a přesně reagovat během konverzace. Například připojení k uživatelem definovaným znalostní báze k vytvoření modelu nebo povolení webového vyhledávání, aby poskytovalo aktuální informace. |
Vlákno | Relace konverzace mezi agentem a uživatelem. Vlákna ukládají zprávy a automaticky zpracovávají zkrácení tak, aby se vešel do kontextu modelu. |
Zpráva | Zpráva vytvořená agentem nebo uživatelem Zprávy můžou obsahovat text, obrázky a další soubory. Zprávy jsou uloženy jako seznam ve vlákně. |
Spustit | Aktivace agenta, který začne běžet na základě obsahu vlákna. Agent používá svoji konfiguraci a zprávy vlákna k provádění úloh voláním modelů a nástrojů. V rámci spuštění agent připojí zprávy do vlákna. |
Spustit krok | Podrobný seznamkrokůch Agent může během spuštění volat nástroje nebo vytvářet zprávy. Zkoumání kroků spuštění vám umožní pochopit, jak se agent dostává ke svým výsledkům. |
K ověření požadavků rozhraní API použijte příkaz az login a přihlaste se k předplatnému Azure.
az login
Dále budete muset načíst token ID Entra, který bude poskytovat jako autorizaci pro volání rozhraní API. Načtení tokenu pomocí příkazu rozhraní příkazového řádku:
az account get-access-token --resource 'https://ml.azure.com/' | jq -r .accessToken | tr -d '"'
Nastavte přístupový token jako proměnnou prostředí s názvem AZURE_AI_AGENTS_TOKEN
.
Pokud chcete úspěšně provést volání rozhraní REST API do služby Azure AI Agents Service, budete muset použít koncový bod, jak je znázorněno níže:
https://<HostName>/agents/v1.0/subscriptions/<AzureSubscriptionId>/resourceGroups/<ResourceGroup>/providers/Microsoft.MachineLearningServices/workspaces/<ProjectName>
HostName
naleznete tak, že přejdete na a odeberete discovery_url
úvodní https://
a koncové /discovery
. Pokud chcete najít svůj příkaz rozhraní příkazového řádku, spusťte discovery_url
tento příkaz rozhraní příkazového řádku:
az ml workspace show -n {project_name} --subscription {subscription_name} --resource-group {resource_group_name} --query discovery_url
Koncový bod může například vypadat nějak takto:
https://eastus.api.azureml.ms/agents/v1.0/subscriptions/12345678-abcd-1234-abcd-123456789000/resourceGroups/my-resource-group/providers/Microsoft.MachineLearningServices/workspaces/my-project-name
Nastavte tento koncový bod jako proměnnou prostředí s názvem AZURE_AI_AGENTS_ENDPOINT
.
Vytvořit agenta
Poznámka:
Ve službě Azure AI Agents Service parametr model
vyžaduje název nasazení modelu. Pokud se název nasazení modelu liší od základního názvu modelu, upravte kód na "model": "{your-custom-model-deployment-name}"
.
curl $AZURE_AI_AGENTS_ENDPOINT/assistants?api-version=2024-12-01-preview \
-H "Authorization: Bearer $AZURE_AI_AGENTS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"instructions": "You are a helpful agent.",
"name": "my-agent",
"tools": [{"type": "code_interpreter"}],
"model": "gpt-4o-mini"
}'
Vytvoření vlákna
curl $AZURE_AI_AGENTS_ENDPOINT/threads?api-version=2024-12-01-preview \
-H "Authorization: Bearer $AZURE_AI_AGENTS_TOKEN" \
-H "Content-Type: application/json" \
-d ''
Přidání otázky uživatele do vlákna
curl $AZURE_AI_AGENTS_ENDPOINT/threads/thread_abc123/messages?api-version=2024-12-01-preview \
-H "Authorization: Bearer $AZURE_AI_AGENTS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"role": "user",
"content": "I need to solve the equation `3x + 11 = 14`. Can you help me?"
}'
Spuštění vlákna
curl $AZURE_AI_AGENTS_ENDPOINT/threads/thread_abc123/runs?api-version=2024-12-01-preview \
-H "Authorization: Bearer $AZURE_AI_AGENTS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"assistant_id": "asst_abc123",
}'
Načtení stavu spuštění
curl $AZURE_AI_AGENTS_ENDPOINT/threads/thread_abc123/runs/run_abc123?api-version=2024-12-01-preview \
-H "Authorization: Bearer $AZURE_AI_AGENTS_TOKEN"
Načtení odpovědi agenta
curl $AZURE_AI_AGENTS_ENDPOINT/threads/thread_abc123/messages?api-version=2024-12-01-preview \
-H "Authorization: Bearer $AZURE_AI_AGENTS_TOKEN"