Udostępnij za pomocą


Dokumentacja interfejsu API REST wnioskowania modelu AI platformy Azure

Wnioskowanie modelu sztucznej inteligencji platformy Azure to interfejs API, który uwidacznia wspólny zestaw możliwości dla podstawowych modeli i który może służyć deweloperom do korzystania z przewidywań z różnych zestawów modeli w jednolity i spójny sposób. Deweloperzy mogą rozmawiać z różnymi modelami wdrożonym w portalu usługi Azure AI Foundry bez zmieniania używanego kodu.

Korzyści

Podstawowe modele, takie jak modele językowe, rzeczywiście poczyniły niezwykłe postępy w ostatnich latach. Te postępy zrewolucjonizowały różne pola, w tym przetwarzanie języka naturalnego i przetwarzanie obrazów, a także włączyły aplikacje, takie jak czatboty, asystenty wirtualne i usługi tłumaczenia języka.

Chociaż podstawowe modele są excel w określonych domenach, nie mają one jednolitego zestawu możliwości. Niektóre modele są lepsze w konkretnym zadaniu, a nawet w ramach tego samego zadania, niektóre modele mogą podejść do problemu w jeden sposób, podczas gdy inne w innym. Deweloperzy mogą korzystać z tej różnorodności, przy użyciu odpowiedniego modelu dla odpowiedniego zadania, co pozwala im na:

  • Zwiększ wydajność w określonym zadaniu podrzędnym.
  • Używaj bardziej wydajnych modeli do prostszych zadań.
  • Używaj mniejszych modeli, które mogą działać szybciej w określonych zadaniach.
  • Tworzenie wielu modeli w celu opracowywania inteligentnych środowisk.

Jednolity sposób korzystania z podstawowych modeli umożliwia deweloperom realizowanie wszystkich tych korzyści bez poświęcania przenośności ani zmieniania bazowego kodu.

Obsługa zestawu SDK wnioskowania

Pakiet wnioskowania usługi Azure AI umożliwia korzystanie ze wszystkich modeli obsługujących interfejs API wnioskowania modelu sztucznej inteligencji platformy Azure i łatwe zmiany między nimi. Pakiet wnioskowania usługi Azure AI jest częścią zestawu AZURE AI Foundry SDK.

Język Dokumentacja Pakiet Przykłady
C# referencyjne azure-ai-inference (NuGet) przykłady języka C#
Jawa referencyjne azure-ai-inference (Maven) przykłady języka Java
JavaScript referencyjne @azure/wnioskowania (npm) przykłady języka JavaScript
Pyton referencyjne azure-ai-inference (PyPi) przykłady języka Python

Możliwości

W poniższej sekcji opisano niektóre możliwości uwidaczniane przez interfejs API:

Sposoby

Interfejs API wskazuje, w jaki sposób deweloperzy mogą korzystać z przewidywań dla następujących sposobów:

Rozszerzalności

Interfejs API wnioskowania modelu sztucznej inteligencji platformy Azure określa zestaw modalności i parametrów, które modele mogą subskrybować. Jednak niektóre modele mogą mieć dalsze możliwości, które wskazuje interfejs API. W takich przypadkach interfejs API umożliwia deweloperowi przekazanie ich jako dodatkowych parametrów w ładunku.

Ustawiając extra-parameters: pass-throughnagłówka , interfejs API podejmie próbę przekazania dowolnego nieznanego parametru bezpośrednio do modelu bazowego. Jeśli model może obsłużyć ten parametr, żądanie zostanie ukończone.

W poniższym przykładzie przedstawiono żądanie przekazujące parametr safe_prompt obsługiwany przez program Mistral-Large, który nie jest określony w interfejsie API wnioskowania modelu AI platformy Azure.

żądania

POST /chat/completions?api-version=2025-04-01
Authorization: Bearer <bearer-token>
Content-Type: application/json
extra-parameters: pass-through
{
    "messages": [
    {
        "role": "system",
        "content": "You are a helpful assistant"
    },
    {
        "role": "user",
        "content": "Explain Riemann's conjecture in 1 paragraph"
    }
    ],
    "temperature": 0,
    "top_p": 1,
    "response_format": { "type": "text" },
    "safe_prompt": true
}

Nuta

Wartość domyślna dla extra-parameters jest error, która zwraca błąd, jeśli dodatkowy parametr jest wskazywany w ładunku. Alternatywnie możesz ustawić extra-parameters: drop, aby usunąć dowolny nieznany parametr w żądaniu. Użyj tej funkcji w przypadku wysyłania żądań z dodatkowymi parametrami, które wiesz, że model nie będzie obsługiwany, ale mimo to chcesz, aby żądanie zostało ukończone. Typowy przykład wskazuje seed parametru.

Modele z różnymi zestawami możliwości

Interfejs API wnioskowania modelu AI platformy Azure wskazuje ogólny zestaw możliwości, ale każdy z modeli może zdecydować się na ich zaimplementowanie. W tych przypadkach zwracany jest określony błąd, w którym model nie może obsługiwać określonego parametru.

Poniższy przykład przedstawia odpowiedź na żądanie ukończenia czatu wskazującą parametr reponse_format i prosząc o odpowiedź w formacie JSON. W tym przykładzie, ponieważ model nie obsługuje takiej możliwości, zwracany jest błąd 422 do użytkownika.

żądania

POST /chat/completions?api-version=2025-04-01
Authorization: Bearer <bearer-token>
Content-Type: application/json
{
    "messages": [
    {
        "role": "system",
        "content": "You are a helpful assistant"
    },
    {
        "role": "user",
        "content": "Explain Riemann's conjecture in 1 paragraph"
    }
    ],
    "temperature": 0,
    "top_p": 1,
    "response_format": { "type": "json_object" },
}

odpowiedzi

{
    "status": 422,
    "code": "parameter_not_supported",
    "detail": {
        "loc": [ "body", "response_format" ],
        "input": "json_object"
    },
    "message": "One of the parameters contain invalid values."
}

Napiwek

Możesz sprawdzić details.loc właściwości, aby zrozumieć lokalizację parametru przestępczego i details.input, aby zobaczyć wartość przekazaną w żądaniu.

Bezpieczeństwo zawartości

Interfejs API wnioskowania modelu AI platformy Azure obsługuje bezpieczeństwo zawartości usługi Azure AI. W przypadku korzystania z wdrożeń z bezpieczeństwem zawartości sztucznej inteligencji platformy Azure dane wejściowe i wyjściowe przechodzą przez zespół modeli klasyfikacji mających na celu wykrywanie i zapobieganie wyjściu szkodliwej zawartości. System filtrowania zawartości (wersja zapoznawcza) wykrywa i podejmuje działania dotyczące określonych kategorii potencjalnie szkodliwej zawartości zarówno w monitach wejściowych, jak i w przypadku uzupełniania danych wyjściowych.

Poniższy przykład przedstawia odpowiedź na żądanie ukończenia czatu, które wyzwoliło bezpieczeństwo zawartości.

żądania

POST /chat/completions?api-version=2025-04-01
Authorization: Bearer <bearer-token>
Content-Type: application/json
{
    "messages": [
    {
        "role": "system",
        "content": "You are a helpful assistant"
    },
    {
        "role": "user",
        "content": "Chopping tomatoes and cutting them into cubes or wedges are great ways to practice your knife skills."
    }
    ],
    "temperature": 0,
    "top_p": 1,
}

odpowiedzi

{
    "status": 400,
    "code": "content_filter",
    "message": "The response was filtered",
    "param": "messages",
    "type": null
}

Wprowadzenie

Interfejs API wnioskowania modelu AI platformy Azure jest dostępny w zasobach usług Azure AI Services. Możesz rozpocząć pracę w taki sam sposób, jak każdy inny produkt platformy Azure, w którym utworzyć i skonfigurować zasób dla wnioskowania modelu AI platformy Azurelub wystąpienia usługi w ramach subskrypcji platformy Azure. W razie potrzeby można utworzyć dowolną liczbę zasobów i skonfigurować je niezależnie, jeśli masz wiele zespołów z różnymi wymaganiami.

Po utworzeniu zasobu usług Azure AI Services należy wdrożyć model, zanim będzie można rozpocząć wykonywanie wywołań interfejsu API. Domyślnie nie są dostępne żadne modele, dzięki czemu można kontrolować, od których modeli zacząć. Zobacz samouczek Tworzenie pierwszego wdrożenia modelu w wnioskowaniu modelu AI platformy Azure.