Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Zasób foundry zapewnia ujednolicony dostęp do modeli, agentów i narzędzi. W tym artykule wyjaśniono, który zestaw SDK i punkt końcowy mają być używane w danym scenariuszu.
Pakiet Foundry SDK to zestaw SDK cienkiego klienta, który udostępnia wszystkie interfejsy API projektu Foundry za pośrednictwem jednego punktu końcowego projektu. Zestawy SDK wyższego poziomu są oparte na nim — na przykład pakiet Platformy agentów foundry zależy od zestawu SDK usługi Foundry w celu uzyskania dostępu do modeli, narzędzi i konfiguracji projektu.
| SDK | Do czego to służy | Punkt końcowy |
|---|---|---|
| Foundry SDK | Pakiet SDK cienkiego klienta dla wszystkich interfejsów API projektu Foundry. Dostęp do modeli i narzędzi platformy foundry (wyszukiwanie plików, interpreter kodu, wyszukiwanie w Internecie, pamięć, SharePoint, WorkIQ, Fabric IQ, MCP). | https://<resource-name>.services.ai.azure.com/api/projects/<project-name> |
| Struktura agenta | Ujednolicona orkiestracja wielu agentów dla hostowanych agentów i systemów z wieloma agentami, dostępnych w języku C#/.NET i Python. Pakiet foundry wymaga pakietu SDK platformy Foundry do uzyskiwania dostępu do projektu. |
Interfejs API odpowiedzi w punkcie końcowym projektu za pośrednictwem polecenia FoundryChatClient. |
| OpenAI SDK | Pełny zakres interfejsu API OpenAI, w tym osadzenia i modele Foundry oferowane przez platformę Azure za pośrednictwem funkcji Chat Completions. Najniższe opóźnienia i maksymalna zgodność z OpenAI. | https://<resource-name>.openai.azure.com/openai/v1 |
| SDK Anthropic | Modele Anthropic Claude wdrożone w Foundry. | https://<resource-name>.services.ai.azure.com/anthropic |
| SDK-i dla narzędzi Foundry | Wstępnie przygotowane rozwiązania (Wizja, Mowa, Bezpieczeństwo treści i inne). | Punkty końcowe specyficzne dla narzędzi. |
Wybierz zestaw SDK:
- Używanie zestawu SDK usługi Foundry podczas kompilowania aplikacji z agentami, ocenami lub funkcjami specyficznymi dla rozwiązania Foundry
- Użyj Agent Framework do hostowanych agentów lub systemów wieloagentowych w kodzie za pomocą interfejsu Responses API w językach C#/.NET lub Python
- Użyj OpenAI SDK, gdy wymagana jest maksymalna zgodność z OpenAI lub najniższe opóźnienia, podczas generowania osadzeń albo przy korzystaniu z modeli oferowanych przez platformę Azure za pośrednictwem usługi Chat Completions
- Użyj zestawu SDK Anthropic podczas pracy z modelami Anthropic Claude wdrożonym w narzędziu Foundry
- Używanie zestawów SDK narzędzi Foundry podczas pracy z określonymi usługami sztucznej inteligencji (przetwarzanie obrazów, mowa, język itp.)
Uwaga
Typy zasobów: Zasób foundry zawiera wszystkie punkty końcowe wymienione wcześniej. Zasób Azure OpenAI udostępnia tylko punkt końcowy /openai/v1.
Authentication: Przykłady w tym miejscu używają Microsoft Entra ID (DefaultAzureCredential). Klucze interfejsu API działają w systemie /openai/v1. Przekaż klucz jako api_key zamiast dostawcy tokenu.
Wymagania wstępne
-
Konto Azure z aktywną subskrypcją. Jeśli go nie masz, utwórz konto free Azure, które obejmuje subskrypcję bezpłatnej wersji próbnej.
Miej rolę RBAC platformy Azure wymaganą do wykonania zadania w możliwie najwęższym zakresie:
Użytkownik foundry w projekcie Foundry na potrzeby codziennego programowania.
Ważne
Niedawno zmieniono nazwy ról RBAC w usłudze Foundry. Użytkownik Foundry, właściciel Foundry, właściciel konta Foundry i menedżer projektu Foundry były wcześniej nazywane odpowiednio użytkownikiem Azure AI, właścicielem Azure AI, właścicielem konta Azure AI i menedżerem projektu Azure AI. Poprzednie nazwy mogą być nadal widoczne w niektórych miejscach, podczas gdy zmiana nazwy jest wdrażana. Identyfikatory ról i uprawnienia podstawowe są niezmienione przez zmianę nazwy.
Foundry Project Manager w projekcie Foundry do zarządzania istniejącym projektem i jego połączeniami.
Właściciel konta usługi Foundry w zasobie usługi Foundry do tworzenia projektów lub zarządzania zasobami na poziomie konta. Przypisz tę rolę do docelowej grupy zasobów tylko wtedy, gdy musisz utworzyć zasób Foundry.
Aktywuj przypisanie grupy zasobów w trybie just-in-time za pomocą usługi Microsoft Entra Privileged Identity Management (PIM), a po zakończeniu aprowizacji je dezaktywuj. Codzienni deweloperzy i użytkownicy środowiska uruchomieniowego nie potrzebują tego podwyższonego przypisania.
Aby uzyskać szczegółowe informacje na temat uprawnień poszczególnych ról, zobacz Kontrola dostępu oparta na rolach w Microsoft Foundry.
Zainstaluj wymagane środowiska uruchomieniowe języka, narzędzia globalne i rozszerzenia programu VS Code zgodnie z opisem w temacie Przygotowywanie środowiska projektowego.
Weryfikowanie wymagań wstępnych
Przed kontynuowaniem potwierdź, że każde sprawdzenie zwraca określony wynik:
Upewnij się, że Azure CLI używa zamierzonej subskrypcji i dzierżawy:
az account show --query "{subscription:name, tenant:tenantId}" --output tablePolecenie kończy się pomyślnie i wyświetla oczekiwaną subskrypcję oraz dzierżawcę.
Upewnij się, że lokalne poświadczenie może zażądać tokenu dostępu Foundry bez wyświetlania tokenu:
az account get-access-token --resource https://ai.azure.com --query expiresOn --output tsvPolecenie zostanie pomyślnie zakończone i wyświetli czas wygaśnięcia tokenu. Jeśli się to nie powiedzie, uruchom
az loginprzy użyciu tożsamości, która ma wymaganą rolę usługi Foundry.Upewnij się, że masz wymaganą rolę RBAC w portalu Azure w sekcji zasób Foundry>Kontrola dostępu (IAM).
- Uruchom
python --version. Polecenie kończy się pomyślnie i zgłasza wersję Python 3.9 lub nowszą.
- Uruchom
node --version. Polecenie kończy się pomyślnie i zgłasza wersję Node.js 22 lub nowszą.
- Uruchom
dotnet --version. Polecenie kończy się pomyślnie i zgłasza wersję .NET 8 lub nowszą.
- Uruchom
java --version. Polecenie kończy się pomyślnie i zgłasza wersję Java 17 lub nowszą.
Upewnij się, że punkt końcowy projektu ma następujący format:
https://<resource-name>.services.ai.azure.com/api/projects/<project-name>.Potwierdź, że wdrożenie
gpt-5-minijest gotowe:az cognitiveservices account deployment show \ --name <resource-name> \ --resource-group <resource-group> \ --deployment-name gpt-5-mini \ --query properties.provisioningState \ --output tsvPolecenie zwraca wartość
Succeeded. Użyj wdrożonej nazwy w przykładach kodu, jeśli wdrożenie ma inną nazwę.
Foundry SDK
Foundry SDK to SDK lekkiego klienta, które umożliwia dostęp do wszystkich interfejsów API projektu Foundry za pośrednictwem pojedynczego punktu końcowego projektu:
https://<resource-name>.services.ai.azure.com/api/projects/<project-name>
Jest to podstawa innych zestawów SDK obsługujących rozwiązania Foundry. Na przykład pakiet Agent Framework foundry ma zależność od pakietu SDK Foundry i używa go do uzyskiwania dostępu do funkcji Foundry — podczas korzystania z FoundryChatClient nie musisz samodzielnie konfigurować punktu końcowego projektu ani klienta zgodnego z OpenAI.
Uwaga
Jeśli twoja organizacja używa niestandardowej poddomeny, zastąp ciąg <resource-name> ciągiem <your-custom-subdomain> w adresie URL punktu końcowego.
Takie podejście upraszcza konfigurację aplikacji. Zamiast zarządzać wieloma punktami końcowymi, należy je skonfigurować.
Instalowanie zestawu SDK usługi Foundry
| Wersja zestawu SDK | Wersja portalu | Stan | pakiet Python |
|---|---|---|---|
| 2.x | Odlewnia (nowa) | Stabilne | azure-ai-projects>=2.0.0 |
| 1.x | Foundry (wersja klasyczna) | Stabilne | azure-ai-projects==1.0.0 |
Biblioteka klienta projektów sztucznej inteligencji Azure dla Python to ujednolicona biblioteka umożliwiająca jednoczesne używanie wielu bibliotek klienckich przez połączenie z pojedynczym punktem końcowym projektu.
Uruchom to polecenie, aby zainstalować pakiety dla projektów Foundry.
pip install "azure-ai-projects>=2.0.0"
| Wersja zestawu SDK | Wersja portalu | Stan | pakiet Java |
|---|---|---|---|
| 2.0.0 | Odlewnia (nowa) | Stabilne | azure-ai-projectsazure-ai-agents |
| Wersja zestawu SDK | Wersja portalu | Stan | Pakiet JavaScript |
|---|---|---|---|
| 2.4.0 | Odlewnia (nowa) | Stabilne | @azure/ai-projects |
| 1.0.1 | Wersja klasyczna usługi Foundry | Stabilne | @azure/ai-projects |
Użyj Node.js 22 lub nowszej z wersją @azure/ai-projects 2.4.0.
| Wersja zestawu SDK | Wersja portalu | Stan | pakiet .NET |
|---|---|---|---|
| 2.0.0 (GA, wersja ogólnodostępna) | Odlewnia (nowa) | Stabilne | Azure.AI.ProjectsAzure.AI.Projects.AgentsAzure.AI.Extensions.OpenAI |
| 1.1.0 (ogólna dostępność) | Wersja klasyczna usługi Foundry | Stabilne | Azure.AI.Projects |
Ważne
Nie instaluj Azure.AI.Projects.OpenAI (wersja zapoznawcza) obok Azure.AI.Extensions.OpenAI (GA). Oba pakiety definiują te same typy w różnych przestrzeniach nazw, co powoduje błędy związane z niejednoznacznością odniesień. Używaj tylko Azure.AI.Extensions.OpenAI w scenariuszach agenta.
Biblioteka klienta Azure AI Projects dla Java to ujednolicona biblioteka, która umożliwia używanie wielu bibliotek klienckich razem przez połączenie z pojedynczym punktem końcowym projektu.
Dodaj te zależności do pliku Maven pom.xml w projektach Foundry.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-projects</artifactId>
<version>2.2.0</version>
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-agents</artifactId>
<version>2.2.0</version>
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-identity</artifactId>
<version>1.18.4</version>
</dependency>
Biblioteka kliencka projektów sztucznej inteligencji Azure dla języka JavaScript to ujednolicona biblioteka umożliwiająca używanie wielu bibliotek klienckich razem przez połączenie z pojedynczym punktem końcowym projektu.
Uruchom to polecenie, aby zainstalować pakiety JavaScript dla projektów foundry.
npm install @azure/ai-projects @azure/identity
Biblioteka kliencka projektów sztucznej inteligencji Azure dla .NET to ujednolicona biblioteka umożliwiająca używanie wielu bibliotek klienckich razem przez połączenie z pojedynczym punktem końcowym projektu.
Uruchom te polecenia, aby dodać wymagane pakiety do projektu .NET.
dotnet add package Azure.AI.Projects
dotnet add package Azure.AI.Projects.Agents
dotnet add package Azure.AI.Extensions.OpenAI
dotnet add package Azure.Identity
Wykonaj pierwsze wywołanie zestawu SDK usługi Foundry
Zestaw SDK uwidacznia dwa typy klientów, ponieważ narzędzia Foundry i OpenAI mają różne kształty interfejsu API:
- Project client — używany w operacjach natywnych Foundry, gdzie OpenAI nie ma odpowiednika. Przykłady: wyświetlanie listy połączeń, pobieranie właściwości projektu, włączanie śledzenia.
-
Klient zgodny z interfejsem OpenAI — służy do obsługi funkcji rozwiązania Foundry, która opiera się na pojęciach dotyczących interfejsu OpenAI. Interfejs API odpowiedzi, agenci, oceny i dostrajanie, wszystkie korzystają ze wzorców żądań/odpowiedzi charakterystycznych dla OpenAI. Ten klient jest przeznaczony do interfejsu API Responses w punkcie końcowym projektu, który zapewnia dostęp do modeli Foundry oferowanych przez Azure, innych modeli z katalogu oraz narzędzi platformy. Te narzędzia obejmują wyszukiwanie plików, interpreter kodu, wyszukiwanie w Internecie, pamięć, SharePoint, WorkIQ, Fabric IQ i serwery MCP. Punkt końcowy projektu obsługuje ten ruch na
/openaitrasie.
Większość aplikacji używa obu klientów. Użyj klienta projektu do instalacji i konfiguracji, a następnie użyj klienta zgodnego z platformą OpenAI do uruchamiania agentów, ocen i wywoływania modeli.
from azure.ai.projects import AIProjectClient
from azure.identity import DefaultAzureCredential
project_endpoint = (
"https://<resource-name>.services.ai.azure.com/api/projects/<project-name>"
)
project = AIProjectClient(
endpoint=project_endpoint,
credential=DefaultAzureCredential(),
)
openai = project.get_openai_client()
response = openai.responses.create(
model="gpt-5-mini",
input="What is the size of France in square miles?",
)
print(f"Response output: {response.output_text}")
Response output: <model response>
Odwołanie: klasa AIProjectClient
import com.azure.ai.agents.AgentsClientBuilder;
import com.azure.ai.agents.AgentsServiceVersion;
import com.azure.ai.agents.ResponsesClient;
import com.azure.identity.DefaultAzureCredentialBuilder;
import com.openai.models.responses.Response;
import com.openai.models.responses.ResponseCreateParams;
String projectEndpoint =
"https://<resource-name>.services.ai.azure.com/api/projects/<project-name>";
ResponsesClient responsesClient = new AgentsClientBuilder()
.credential(new DefaultAzureCredentialBuilder().build())
.endpoint(projectEndpoint)
.serviceVersion(AgentsServiceVersion.getLatest())
.buildResponsesClient();
Response response = responsesClient.getResponseService().create(
ResponseCreateParams.builder()
.model("gpt-5-mini")
.input("What is the size of France in square miles?")
.build());
response.output().forEach(item -> item.message().ifPresent(message ->
message.content().forEach(content -> content.outputText().ifPresent(text ->
System.out.println("Response output: " + text.text())))));
Response output: <model response>
Dokumentacja: CreateResponse.java
import { DefaultAzureCredential } from "@azure/identity";
import { AIProjectClient } from "@azure/ai-projects";
const projectEndpoint =
"https://<resource-name>.services.ai.azure.com/api/projects/<project-name>";
const project = new AIProjectClient(
projectEndpoint,
new DefaultAzureCredential(),
);
const openai = project.getOpenAIClient();
const response = await openai.responses.create({
model: "gpt-5-mini",
input: "What is the size of France in square miles?",
});
console.log(`Response output: ${response.output_text}`);
Response output: <model response>
Dokumentacja: klasa AIProjectClient
using Azure.AI.Projects;
using Azure.AI.Extensions.OpenAI;
using Azure.Identity;
string projectEndpoint =
"https://<resource-name>.services.ai.azure.com/api/projects/<project-name>";
AIProjectClient projectClient = new(
endpoint: new Uri(projectEndpoint),
tokenProvider: new DefaultAzureCredential());
ProjectResponsesClient responseClient = projectClient.ProjectOpenAIClient
.GetProjectResponsesClientForModel("gpt-5-mini");
ResponseResult response = responseClient.CreateResponse(
"What is the size of France in square miles?");
Console.WriteLine($"Response output: {response.GetOutputText()}");
Response output: <model response>
Dokumentacja: klasa AIProjectClient
Eksplorowanie możliwości zestawu SDK usługi Foundry
- Access Foundry Models w tym Azure OpenAI
- Korzystanie z usługi agenta programu Foundry
- Uruchamianie ewaluacji wsadowych
- Włączanie śledzenia aplikacji
- Dopasowanie modelu
- Uzyskiwanie punktów końcowych i kluczy dla narzędzi Foundry Tools, lokalnej aranżacji i nie tylko
Rozwiązywanie problemów
Błędy uwierzytelniania
Jeśli zobaczysz DefaultAzureCredential failed to retrieve a token:
Zweryfikuj, czy Azure CLI jest uwierzytelniony:
az account show az login # if not logged inSprawdź przypisanie roli RBAC:
Upewnij się, że masz co najmniej rolę użytkownika usługi Foundry w projekcie Foundry
Ważne
Niedawno zmieniono nazwy ról RBAC w usłudze Foundry. Użytkownik Foundry, właściciel Foundry, właściciel konta Foundry i menedżer projektu Foundry były wcześniej nazywane odpowiednio użytkownikiem Azure AI, właścicielem Azure AI, właścicielem konta Azure AI i menedżerem projektu Azure AI. Poprzednie nazwy mogą być nadal widoczne w niektórych miejscach, podczas gdy zmiana nazwy jest wdrażana. Identyfikatory ról i uprawnienia podstawowe są niezmienione przez zmianę nazwy.
Zobacz Przypisywanie ról w Azure
W przypadku tożsamości zarządzanej w środowisku produkcyjnym:
- Upewnij się, że tożsamość zarządzana ma przypisaną odpowiednią rolę
- Zobacz Konfigurowanie tożsamości zarządzanych
Błędy konfiguracji punktu końcowego
Jeśli widzisz wartość Connection refused lub 404 Not Found:
- Sprawdzanie, czy nazwy zasobów i projektów są zgodne z rzeczywistym wdrożeniem
-
Sprawdź format adresu URL punktu końcowego: powinien mieć wartość
https://<resource-name>.services.ai.azure.com/api/projects/<project-name> -
W przypadku domen podrzędnych niestandardowych: zastąp
<resource-name>element niestandardową poddomeną
Niezgodność wersji zestawu SDK
Jeśli przykłady kodu kończą się błędem związanym z AttributeError lub ModuleNotFoundError:
Sprawdź wersję zestawu SDK:
pip show azure-ai-projects # Python npm list @azure/ai-projects # JavaScript dotnet list package # .NETZainstaluj ponownie z poprawnymi flagami wersji: Zobacz polecenia instalacji w każdej sekcji języka powyżej
OpenAI SDK
Użyj zestawu OPENAI SDK, jeśli chcesz uzyskać pełną powierzchnię interfejsu API OpenAI, najlepsze opóźnienie i maksymalną zgodność z istniejącymi klientami openAI. Ten punkt końcowy bezpośrednio udostępnia interfejs API Responses w usłudze Azure OpenAI oraz zapewnia dostęp do modeli Azure OpenAI i modeli sprzedawanych przez platformę Azure, w tym osadzania, uzupełnień czatu i generowania obrazów. Nie zapewnia dostępu do funkcji specyficznych dla platformy Foundry, takich jak agenci, ewaluacje czy narzędzia platformy dostępne wyłącznie w Foundry. Aby skorzystać z tych funkcji, użyj interfejsu Responses API w punkcie końcowym projektu za pomocą pakietu Foundry SDK.
Wskazówka
Użyj punktu końcowego zestawu OpenAI SDK do generowania osadzania. Obecnie punkt końcowy projektu wykorzystywany przez SDK Foundry nie obsługuje żądań osadzania.
Poniższy fragment kodu pokazuje, jak bezpośrednio używać punktu końcowego Azure OpenAI /openai/v1.
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
from openai import OpenAI
token_provider = get_bearer_token_provider(
DefaultAzureCredential(), "https://ai.azure.com/.default"
)
openai_endpoint = "https://<resource-name>.openai.azure.com/openai/v1/"
openai = OpenAI(
base_url=openai_endpoint,
api_key=token_provider,
)
response = openai.responses.create(
model="gpt-5-mini",
input="What is the size of France in square miles?",
)
print(f"Response output: {response.output_text}")
Response output: <model response>
Odwołanie: obsługiwane języki programowania usługi Azure OpenAI
Poniższy fragment kodu pokazuje, jak bezpośrednio używać punktu końcowego Azure OpenAI /openai/v1.
import com.azure.identity.AuthenticationUtil;
import com.azure.identity.DefaultAzureCredentialBuilder;
import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.credential.BearerTokenCredential;
import com.openai.models.responses.Response;
import com.openai.models.responses.ResponseCreateParams;
String openAIEndpoint = "https://<resource-name>.openai.azure.com/openai/v1";
OpenAIClient openAIClient = OpenAIOkHttpClient.builder()
.baseUrl(openAIEndpoint)
.credential(BearerTokenCredential.create(
AuthenticationUtil.getBearerTokenSupplier(
new DefaultAzureCredentialBuilder().build(),
"https://ai.azure.com/.default")))
.build();
Response response = openAIClient.responses().create(
ResponseCreateParams.builder()
.model("gpt-5-mini")
.input("What is the size of France in square miles?")
.build());
response.output().forEach(item -> item.message().ifPresent(message ->
message.content().forEach(content -> content.outputText().ifPresent(text ->
System.out.println("Response output: " + text.text())))));
Response output: <model response>
Odwołanie: obsługiwane języki programowania usługi Azure OpenAI
import {
DefaultAzureCredential,
getBearerTokenProvider,
} from "@azure/identity";
import OpenAI from "openai";
const openAIEndpoint = "https://<resource-name>.openai.azure.com/openai/v1";
const tokenProvider = getBearerTokenProvider(
new DefaultAzureCredential(),
"https://ai.azure.com/.default",
);
const openai = new OpenAI({ baseURL: openAIEndpoint, apiKey: tokenProvider });
const response = await openai.responses.create({
model: "gpt-5-mini",
input: "What is the size of France in square miles?",
});
console.log(`Response output: ${response.output_text}`);
Response output: <model response>
Odwołanie: obsługiwane języki programowania usługi Azure OpenAI
Uruchom to polecenie, aby dodać bibliotekę klienta OpenAI do projektu platformy .NET.
dotnet add package OpenAI
Gdy się to uda, interfejs wiersza polecenia platformy .NET potwierdza, że zainstalowano pakiet OpenAI.
Ten fragment kodu konfiguruje DefaultAzureCredential, kompiluje OpenAIClientOptions i tworzy element ResponsesClient dla punktu końcowego Azure OpenAI v1.
using Azure.Identity;
using OpenAI;
using OpenAI.Responses;
using System.ClientModel.Primitives;
#pragma warning disable OPENAI001
const string openAIEndpoint =
"https://<resource-name>.openai.azure.com/openai/v1/";
BearerTokenPolicy tokenPolicy = new(
new DefaultAzureCredential(),
"https://ai.azure.com/.default");
OpenAIClient openAIClient = new(
authenticationPolicy: tokenPolicy,
options: new OpenAIClientOptions()
{
Endpoint = new(openAIEndpoint),
});
ResponsesClient responsesClient = openAIClient.GetResponsesClient();
CreateResponseOptions options = new()
{
Model = "gpt-5-mini",
InputItems =
{
ResponseItem.CreateUserMessageItem(
"What is the size of France in square miles?")
},
};
var response = responsesClient.CreateResponse(options);
Console.WriteLine($"Response output: {response.Value.GetOutputText()}");
#pragma warning restore OPENAI001
Response output: <model response>
Odwołanie: obsługiwane języki programowania usługi Azure OpenAI
Zestaw SDK antropotyczny
Użyj zestawu SDK Anthropic do pracy z modelami Anthropic Claude wdrożonymi we Foundry. Modele Claude korzystają z oddzielnego punktu końcowego /anthropic i interfejsu Anthropic Messages API, a nie punktu końcowego zgodnego z OpenAI.
Punkt końcowy usługi Anthropic dodaje /anthropic do adresu URL zasobu:
https://<resource-name>.services.ai.azure.com/anthropic
Interfejs API komunikatów jest dostępny pod adresem:
https://<resource-name>.services.ai.azure.com/anthropic/v1/messages
from anthropic import AnthropicFoundry
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
token_provider = get_bearer_token_provider(
DefaultAzureCredential(), "https://ai.azure.com/.default"
)
client = AnthropicFoundry(
azure_ad_token_provider=token_provider,
base_url="https://<resource-name>.services.ai.azure.com/anthropic",
)
message = client.messages.create(
model="claude-sonnet-4-6", # Replace with your deployment name
messages=[
{"role": "user", "content": "What are 3 things to visit in Seattle?"}
],
max_tokens=1048,
)
print(f"Response output: {message.content[0].text}")
Response output: <model response>
Zestaw SDK Anthropic nie udostępnia natywnego klienta języka C#. Użyj interfejsu API REST z elementem HttpClient , aby wywołać modele Claude'a.
using System.Net.Http.Headers;
using System.Text;
using System.Text.Json;
using Azure.Identity;
string endpoint =
"https://<resource-name>.services.ai.azure.com/anthropic/v1/messages";
var credential = new DefaultAzureCredential();
var token = await credential.GetTokenAsync(
new Azure.Core.TokenRequestContext(["https://ai.azure.com/.default"]));
using var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Authorization =
new AuthenticationHeaderValue("Bearer", token.Token);
httpClient.DefaultRequestHeaders.Add("anthropic-version", "2023-06-01");
var requestBody = new
{
model = "claude-sonnet-4-6",
messages = new[]
{
new { role = "user", content = "Name three Seattle attractions." }
},
max_tokens = 1048
};
var response = await httpClient.PostAsync(
endpoint,
new StringContent(
JsonSerializer.Serialize(requestBody), Encoding.UTF8,
"application/json"));
string result = await response.Content.ReadAsStringAsync();
Console.WriteLine(result);
<JSON response body containing the model response>
import AnthropicFoundry from "@anthropic-ai/foundry-sdk";
import {
DefaultAzureCredential,
getBearerTokenProvider,
} from "@azure/identity";
const tokenProvider = getBearerTokenProvider(
new DefaultAzureCredential(),
"https://ai.azure.com/.default",
);
const client = new AnthropicFoundry({
azureADTokenProvider: tokenProvider,
baseURL: "https://<resource-name>.services.ai.azure.com/anthropic",
apiVersion: "2023-06-01",
});
const message = await client.messages.create({
model: "claude-sonnet-4-6", // Replace with your deployment name
messages: [
{ role: "user", content: "What are 3 things to visit in Seattle?" },
],
max_tokens: 1048,
});
console.log(`Response output: ${message.content[0].text}`);
Response output: <model response>
Zestaw SDK Anthropic nie udostępnia natywnego klienta Java. Użyj interfejsu API REST z elementem HttpClient , aby wywołać modele Claude'a.
import com.azure.identity.DefaultAzureCredentialBuilder;
import com.azure.core.credential.TokenRequestContext;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
String endpoint =
"https://<resource-name>.services.ai.azure.com/anthropic/v1/messages";
var credential = new DefaultAzureCredentialBuilder().build();
var token = credential.getToken(new TokenRequestContext()
.addScopes("https://ai.azure.com/.default")).block();
String requestBody = """
{"model": "claude-sonnet-4-6",
"messages": [{"role": "user",
"content": "What are 3 things to visit in Seattle?"}],
"max_tokens": 1048}
""";
HttpClient httpClient = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(endpoint))
.header("Authorization", "Bearer " + token.getToken())
.header("Content-Type", "application/json")
.header("anthropic-version", "2023-06-01")
.POST(HttpRequest.BodyPublishers.ofString(requestBody))
.build();
HttpResponse<String> response = httpClient.send(
request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
<JSON response body containing the model response>
Aby uzyskać więcej informacji, zobacz Użyj modele Anthropic Claude w Microsoft Foundry.
Struktura agenta
Microsoft Agent Framework to zestaw SDK typu open source dla języka C#/.NET i Python, który zapewnia ujednoliconą aranżację wielu agentów i spójne abstrakcje do tworzenia agentów i systemów wielo agentów. To zalecana warstwa orkiestracji dla hostowanych agentów w Foundry.
- Jeśli wcześniej użyto rozwiązania AutoGen lub Semantic Kernel do orkiestracji wielu agentów (koordynowanie wielu agentów do współpracy w zadaniach), rozważ użycie struktury agenta jako podstawowej warstwy aranżacji. Pomaga uniknąć łączenia wielu zestawów SDK orkiestracji, które umożliwiają rozwiązywanie podobnych zadań koordynacji, które mogą dodawać sprzeczne abstrakcji i zależności.
- Jeśli masz już znaczącą ilość istniejącego kodu orkiestracji, polegasz na funkcjach specyficznych dla produktu lub masz złożone wymagania migracyjne, oceń te wymagania przed przejściem na platformę Agent Framework.
Uruchom swój kod jako hostowany agent
Głównym rozwiązaniem dla agentów opartych na kodzie w usłudze Foundry są agenci hostowani. Napisz agenta w środowisku Agent Framework, spakuj go jako obraz kontenera lub plik ZIP z kodem źródłowym i pozwól usłudze Foundry uruchomić go, korzystając z zarządzanego punktu końcowego, automatycznego skalowania w izolowanych mikromaszynach wirtualnych, dedykowanej tożsamości agenta Microsoft Entra, stanu utrzymywanego na poziomie sesji oraz kompleksowego monitorowania.
Agenci hostowani są zalecanym rozwiązaniem, gdy potrzebujesz zarządzanego przez usługę Foundry punktu końcowego dostępnego pod adresem sieciowym, który mogą wywoływać inne aplikacje lub agenci. Zobacz Wdrażanie pierwszego hostowanego agenta.
Twórz agentów w kodzie poza Foundry za pomocą interfejsu API Responses
Jeśli uruchamiasz agenta poza Foundry — we własnym procesie lub infrastrukturze — możesz także użyć Agent Framework, aby bezpośrednio wywoływać interfejs Responses API w ramach punktu końcowego projektu. Agent Framework łączy się za pośrednictwem dostawcy FoundryChatClient, który obsługuje:
{project_endpoint}/openai/v1/responses
Przejście przez punkt końcowy projektu — zamiast punktu końcowego openAI na poziomie zasobu — daje agentowi:
- Modele Foundry z katalogu (Azure OpenAI i bezpośrednie modele Foundry) za pośrednictwem jednego interfejsu API.
- Narzędzia platformy wykraczające poza zestaw narzędzi OpenAI, w tym wyszukiwanie plików, interpreter kodu, pamięć, wyszukiwanie w Internecie, serwery MCP, SharePoint, WorkIQ i Fabric IQ.
- Dane objęte zakresem projektu, uwierzytelnianie narzędzi On-Behalf-Of (OBO) oraz śledzenie, filtry treści i konfiguracja tożsamości projektu.
To podejście stanowi uzupełnienie hostowanych agentów, a nie alternatywę — ten sam kod Agent Framework może już dziś wywoływać Responses API z poziomu własnego procesu, a później zostać udostępniony jako hostowany agent, gdy zechcesz korzystać z punktu końcowego zarządzanego przez Foundry. Zobacz Szybki start: tworzenie agentów za pomocą Responses API.
Aby zobaczyć pełne porównanie typów agentów i opcji hostowania, zobacz Czym jest usługa Microsoft Foundry Agent Service?.
Zestawy SDK narzędzi Foundry
Narzędzia Foundry Tools (dawniej usługi Azure AI) to gotowe rozwiązania punktowe z dedykowanymi zestawami SDK. Użyj następujących punktów końcowych do pracy z narzędziami Foundry Tools.
Którego punktu końcowego należy użyć?
Wybierz punkt końcowy w zależności od potrzeb:
Użyj punktu końcowego usług sztucznej inteligencji Azure, aby uzyskać dostęp do przetwarzanie obrazów, bezpieczeństwa zawartości, analizy dokumentów, języka, tłumaczenia i narzędzi foundry tokenów.
Punkt końcowy narzędzi Foundry: https://<your-resource-name>.cognitiveservices.azure.com/
Uwaga
Punkty końcowe używają nazwy twojego zasobu lub niestandardowej poddomeny. Jeśli twoja organizacja skonfigurowała niestandardową poddomenę, zamień your-resource-name na your-custom-subdomain we wszystkich przykładach punktów końcowych.
Jeśli obciążenia korzystają z wycofywanych funkcji Język platformy Azure AI — na przykład analizy tonacji, wyodrębniania kluczowych fraz, podsumowania, linkowania encji, CLU lub CQA — zaplanuj migrację do alternatyw oferowanych przez Microsoft Foundry. W przypadku nowego programowania rozważ użycie zestawu SDK rozwiązania Foundry lub punktu końcowego zgodnego z interfejsem OpenAI zgodnie z opisem we wcześniejszej sekcji tego artykułu. Zobacz Migrate from Language Studio to Microsoft Foundry.
W przypadku narzędzi usługi Speech and Translation Foundry użyj punktów końcowych w poniższych tabelach. Zastąp elementy zastępcze informacjami o zasobie.
Punkty końcowe mowy
| Narzędzie odlewnicze | Punkt końcowy |
|---|---|
| Zamiana mowy na tekst (Standardowa) | https://<YOUR-RESOURCE-REGION>.stt.speech.microsoft.com |
| Syntezator mowy (neuronowy) | https://<YOUR-RESOURCE-REGION>.tts.speech.microsoft.com |
| głos niestandardowy | https://<YOUR-RESOURCE-NAME>.cognitiveservices.azure.com/ |
Punkty końcowe tłumaczenia
| Narzędzie odlewnicze | Punkt końcowy |
|---|---|
| Tłumaczenie tekstu | https://api.cognitive.microsofttranslator.com/ |
| Tłumaczenie dokumentu | https://<YOUR-RESOURCE-NAME>.cognitiveservices.azure.com/ |
Punkty końcowe języka
| Narzędzie odlewnicze | Punkt końcowy |
|---|---|
| Analiza tekstu | https://<YOUR-RESOURCE-NAME>.cognitiveservices.azure.com |
Ważne
20 marca 2027 r. program Azure Language Studio zostanie wycofany i zmigrowany do usługi Microsoft Foundry. Wszystkie możliwości i przyszłe ulepszenia będą dostępne w usłudze Microsoft Foundry.
31 marca 2029 r. następujące możliwości języka Azure zostaną wycofane (koniec wsparcia). Przed tą datą użytkownicy powinni migrować istniejące obciążenia i dołączać nowe projekty do modeli Microsoft Foundry w celu zwiększenia zrozumienia języka naturalnego i uproszczonej integracji aplikacji:
- wyodrębnianie kluczowych fraz
- Analiza sentymentu i pozyskiwanie opinii
- Niestandardowa klasyfikacja tekstu
- Zrozumienie Języka Konwersacyjnego (CLU)
- Niestandardowe odpowiadanie na pytania (CQA)
- Przepływ pracy orkiestracji
- Podsumowanie (wyodrębnianie i abstrakcja w przypadku dokumentów i konwersacji)
- Łączenie jednostek
Podstawowe funkcje z ciągłą obsługą: Wykrywanie Języka, Wykrywanie PII, analiza tekstu dla Zdrowia, Wstępnie Utworzone NER i Niestandardowe NER.
Aby uzyskać opcje migracji, zobacz Migrate from Language Studio to Microsoft Foundry.