ExecutionProviderCatalog Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt Methoden zum Ermitteln, Abrufen und Registrieren von KI-Ausführungsanbietern (EPs) für die Verwendung mit der ONNX-Runtime bereit.
ExecutionProviderCatalog behandelt die Komplexität der Paketverwaltung und Hardwareauswahl, und es ist der Einstiegspunkt für Ihre App, um über die Windows ML-Runtime auf hardwareoptimierte Machine Learning-Beschleunigung zuzugreifen.
public ref class ExecutionProviderCatalog sealed
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Windows.AI.MachineLearning.MachineLearningContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ExecutionProviderCatalog final
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Windows.AI.MachineLearning.MachineLearningContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class ExecutionProviderCatalog
Public NotInheritable Class ExecutionProviderCatalog
- Vererbung
- Attribute
Beispiele
// Get the default catalog
var catalog = Microsoft.Windows.AI.MachineLearning.ExecutionProviderCatalog.GetDefault();
// Ensure and register all compatible execution providers
await catalog.EnsureAndRegisterCertifiedAsync();
// Use ONNX Runtime directly for inference (using Microsoft.ML.OnnxRuntime namespace)
// Get the default catalog
winrt::Microsoft::Windows::AI::MachineLearning::ExecutionProviderCatalog catalog =
winrt::Microsoft::Windows::AI::MachineLearning::ExecutionProviderCatalog::GetDefault();
// Ensure and register all compatible execution providers
catalog.EnsureAndRegisterCertifiedAsync().get();
// Use ONNX Runtime C API directly for inference
import winui3.microsoft.windows.ai.machinelearning as winml
# Get the default catalog
catalog = winml.ExecutionProviderCatalog.get_default()
# DO NOT call winml's register methods in Python. Those will not work for the onnxruntime Python environment.
# Instead, register execution providers following this pattern:
providers = catalog.find_all_providers()
for provider in providers:
provider.ensure_ready_async().get()
ort.register_execution_provider_library(provider.name, provider.library_path)
Methoden
| Name | Beschreibung |
|---|---|
| EnsureAndRegisterCertifiedAsync() |
Stellt Methoden zum Ermitteln, Abrufen und Registrieren von KI-Ausführungsanbietern (EPs) für die Verwendung mit der ONNX-Runtime bereit. ExecutionProviderCatalog behandelt die Komplexität der Paketverwaltung und Hardwareauswahl, und es ist der Einstiegspunkt für Ihre App, um über die Windows ML-Runtime auf hardwareoptimierte Machine Learning-Beschleunigung zuzugreifen. |
| FindAllProviders() |
Ruft eine Auflistung aller Ausführungsanbieter ab, die mit der aktuellen Hardware kompatibel sind. |
| GetDefault() |
Ruft die standardmäßige ExecutionProviderCatalog-Instanz ab, die Zugriff auf alle Ausführungsanbieter im System ermöglicht. |
| RegisterCertifiedAsync() |
Registriert alle kompatiblen Ausführungsanbieter bei der ONNX-Runtime, ohne sicherzustellen, dass sie bereit sind. Dadurch werden nur Anbieter registriert, die bereits auf dem Computer vorhanden sind, sodass die potenziell langen Downloadzeiten vermieden werden, die möglicherweise von EnsureAndRegisterCertifiedAsync benötigt werden. |