Verwenden des Azure KI-Modellinferenzendpunkts
Der Azure KI-Rückschlussdienst in Azure KI Services ermöglicht es Kunden, die leistungsstärksten Modelle von führenden Modellanbietern mit einem einzigen Endpunkt und Anmeldeinformationen zu nutzen. Dies bedeutet, dass Sie zwischen Modellen wechseln und diese aus Ihrer Anwendung nutzen können, ohne eine einzelne Codezeile zu ändern.
In diesem Artikel wird erläutert, wie Modelle innerhalb des Diensts organisiert werden und wie sie mithilfe des Rückschlussendpunkts aufgerufen werden.
Bereitstellungen
Der Azure KI-Modellinferenzdienst stellt Modelle mithilfe des Bereitstellungskonzepts zur Verfügung. Bereitstellungen sind eine Möglichkeit, einem Modell einen Namen unter bestimmten Konfigurationen zuzuweisen. Dann können Sie eine solche Modellkonfiguration aufrufen, indem Sie ihren Namen in Ihren Anforderungen angeben.
Bereitstellungserfassung:
- Ein Modellname
- Eine Modellversion
- Ein Bereitstellungs-/Kapazitätstyp1
- Eine Inhaltsfilterungskonfiguration1
- Eine Ratenbegrenzungskonfiguration1
1 Konfigurationen können je nach dem von Ihnen ausgewähltem Modell variieren.
Eine Azure KI Services-Ressource kann so viele Modellbereitstellungen aufweisen wie benötigt werden, und sie verursachen keine Kosten, es sei denn, Rückschlüsse werden für diese Modelle ausgeführt. Bereitstellungen sind Azure-Ressourcen und unterliegen daher Azure-Richtlinien.
Weitere Informationen zum Erstellen von Bereitstellungen finden Sie unter Hinzufügen und Konfigurieren von Modellbereitstellungen.
Azure KI-Rückschlussendpunkt
Der Azure KI-Rückschlussendpunkt ermöglicht es Kunden, einen einzelnen Endpunkt mit der gleichen Authentifizierung und demselben Schema zu verwenden, um Rückschlüsse für die bereitgestellten Modelle in der Ressource zu generieren. Dieser Endpunkt folgt der Azure KI-Modellinferenz-API, die von allen Modellen im Azure K-Modellinferenzdienst unterstützt wird.
Sie können die Endpunkt-URL und die Anmeldeinformationen im Abschnitt Übersicht sehen. Der Endpunkt hat in der Regel das Format https://<resource-name>.services.ai.azure.com/models
:
Sie können eine Verbindung mit dem Endpunkt herstellen, indem Sie das Azure KI Rückschluss-SDK verwenden:
Installieren Sie das Paket azure-ai-inference
mit Ihrem Paket-Manager, z. B. pip:
pip install azure-ai-inference>=1.0.0b5
Warnung
Azure KI Services-Ressource erfordert die Version azure-ai-inference>=1.0.0b5
für Python.
Anschließend können Sie das Paket verwenden, um das Modell zu nutzen. Das folgende Beispiel zeigt, wie Sie einen Client erstellen, um Chatvervollständigungen zu nutzen:
import os
from azure.ai.inference import ChatCompletionsClient
from azure.core.credentials import AzureKeyCredential
client = ChatCompletionsClient(
endpoint=os.environ["AZUREAI_ENDPOINT_URL"],
credential=AzureKeyCredential(os.environ["AZUREAI_ENDPOINT_KEY"]),
)
Erkunden Sie unsere Beispiele,und lesen Sie die API-Referenzdokumentation für die ersten Schritte.
Weitere Codebeispiele und Ressourcen finden Sie unter Unterstützte Sprachen und SDKs.
Routing
Der Rückschlussendpunkt leitet Anforderungen an eine bestimmte Bereitstellung weiter, indem er den Parameter name
innerhalb der Anforderung mit dem Namen der Bereitstellung abgleicht. Dies bedeutet, dass Bereitstellungen unter bestimmten Konfigurationen als Alias eines bestimmten Modells funktionieren. Diese Flexibilität ermöglicht es Ihnen, ein bestimmtes Modell mehrmals im Dienst bereitzustellen, aber bei Bedarf unter verschiedenen Konfigurationen.
Wenn Sie z. B. eine Bereitstellung mit dem Namen Mistral-large
erstellen, dann kann diese Bereitstellung aufgerufen werden als:
from azure.ai.inference.models import SystemMessage, UserMessage
response = client.complete(
messages=[
SystemMessage(content="You are a helpful assistant."),
UserMessage(content="Explain Riemann's conjecture in 1 paragraph"),
],
model="mistral-large"
)
print(response.choices[0].message.content)
Tipp
Beim Bereitstellungsrouting wird die Groß-/Kleinschreibung nicht beachtet.
Unterstützte Sprachen und SDKs
Alle im Azure KI-Modellinferenzdienst bereitgestellten Modelle unterstützen die Azure AI-Modellinferenz-API und die zugehörige Familie von SDKs, die in den folgenden Sprachen verfügbar sind:
Sprache | Dokumentation | Paket | Beispiele |
---|---|---|---|
C# | Referenz | azure-ai-inference (NuGet) | C#-Beispiele |
Java | Referenz | azure-ai-inference (Maven) | Java-Beispiele |
JavaScript | Referenz | @azure/ai-inference (npm) | JavaScript-Beispiele |
Python | Referenz | azure-ai-inference (PyPi) | Python-Beispiele |
Azure OpenAI-Rückschlussendpunkt
Azure OpenAI-Modelle unterstützen auch die Azure OpenAI-API. Diese API macht die vollständigen Funktionen von OpenAI-Modellen verfügbar und unterstützt zusätzliche Features wie Assistenten, Threads, Dateien und Batchrückschluss.
Jede OpenAI-Modellbereitstellung verfügt über ihre eigene URL, die mit dieser Bereitstellung unter dem Azure OpenAI-Rückschlussendpunkt verknüpft ist. Es kann jedoch derselbe Authentifizierungsmechanismus verwendet werden, um ihn zu nutzen. URLs liegen in der Regel im Format https://<resource-name>.openai.azure.com/openai/deployments/<model-deployment-name>
vor. Weitere Informationen finden Sie auf der Referenzseite für die Azure OpenAI-API
Jede Bereitstellung verfügt über eine URL, welche die Verkettung der Azure OpenAI-Basis-URL und der Route /deployments/<model-deployment-name>
ist.
Wichtig
Es gibt keinen Routingmechanismus für den Azure OpenAI-Endpunkt, da jede URL für jede Modellbereitstellung exklusiv ist.
Unterstützte Sprachen und SDKs
Der Azure OpenAI-Endpunkt wird vom OpenAI-SDK (AzureOpenAI
-Klasse) und von Azure OpenAI-SDKs unterstützt, die in mehreren Sprachen verfügbar sind:
Sprache | Quellcode | Paket | Beispiele |
---|---|---|---|
C# | Quellcode | Azure.AI.OpenAI (NuGet) | C#-Beispiele |
Go | Quellcode | azopenai (Go) | Go-Beispiele |
Java | Quellcode | azure-ai-openai (Maven) | Java-Beispiele |
JavaScript | Quellcode | @azure/openai (npm) | JavaScript-Beispiele |
Python | Quellcode | openai (PyPi) | Python-Beispiele |