Imageklassifizierung in Azure

azure-ai-foundry-sdk
Azure Blob Storage
Azure Cosmos DB
Azure Event Grid
Azure-Funktionen

Lösungsideen

In diesem Artikel wird eine Lösungsidee beschrieben. Ihr Cloudarchitekt kann diese Anleitung verwenden, um die Hauptkomponenten für eine typische Implementierung dieser Architektur zu visualisieren. Verwenden Sie diesen Artikel als Ausgangspunkt, um eine gut durchdachte Lösung zu entwerfen, die den spezifischen Anforderungen Ihrer Workload entspricht.

Mithilfe von Azure-Diensten wie Azure AI Content Understanding und Azure Functions können Sie einer Web- oder mobilen Anwendung Bildklassifizierung und Metadatenextraktion hinzufügen, ohne Server zu verwalten oder eigene Modelle zu trainieren. Diese Lösungsidee zielt auf die Bildklassifizierung und -kategorisierung ab. Wenn Sie andere KI-Anforderungen benötigen, lesen Sie die umfassenderen Foundry Tools und Microsoft FoundryKataloge.

Architektur

Diagramm einer Architektur, die für Bildklassifizierungsaufgaben verwendet wird.

Laden Sie eine Visio-Datei dieser Lösungsidee herunter.

Datenfluss

In diesem Szenario werden die Back-End-Komponenten einer Web- oder mobilen Anwendung behandelt. Daten fließen wie folgt durch das Szenario:

  1. Neue Dateien (Bilduploads), die in Blob Storage hinzugefügt werden, lösen ein Ereignis in Azure Event Grid aus. Der Upload wird von einer Web- oder mobilen Anwendung koordiniert, oder Bilder werden direkt in Blob Storage hochgeladen.
  2. Ereignisraster sendet eine Benachrichtigung, die eine Azure-Funktion auslöst.
  3. Die Funktion ruft Content Understanding auf, um das neu hochgeladene Bild anhand eines definierten Analyseschemas zu analysieren. Inhaltsverständnis greift über eine zeitlich begrenzte SAS-URL oder ein entsprechendes temporäres Zugriffstoken auf das Bild zu, das von der Funktion in der Anforderung mitgeteilt wird und nur Lesezugriff für den Ziel-Blob ermöglicht.
  4. Die Funktion speichert die strukturierte Ausgabe, die Content Understanding zusammen mit Bildmetadaten zurückgibt, in Azure Cosmos DB für NoSQL.
  5. Das Web oder mobiles Front-End nutzt die Ergebnisse. Dieser Datenfluss gibt die Klassifizierungsausgabe und -metadaten zurück; es gibt nicht die ursprünglichen Bildbytes zurück.

Komponenten

  • Content Understanding ist eine Microsoft Foundry-Funktion, die generative KI verwendet, um benutzerdefinierte strukturierte Ausgabe aus Dokumenten, Bildern, Videos und Audio zu extrahieren. In dieser Architektur analysiert es jedes hochgeladene Bild anhand eines Analyseschemas , das die kategorien, Attribute und Bezeichnungen definiert, die zurückgegeben werden sollen (z. B. Produkttyp, Farbe, Fehlerklasse). Die Ausgabe ist JSON, die direkt dem Datenmodell Ihrer Anwendung zugeordnet wird.

  • Azure Functions ist eine serverlose Computeplattform. In dieser Architektur stellt Azure Functions die Back-End-API und die Ereignisverarbeitungsebene für hochgeladene Bilder bereit. Die Funktion koordiniert den Workflow. Es ruft "Content Understanding" auf, verarbeitet die Antwort und schreibt das Ergebnis in die Datenbank. Diese Architektur verwendet den Flex-Verbrauchsplan , um die Integration virtueller Netzwerke, die Auswahl des Speichers der Instanz und die schnelle Skalierung zu unterstützen.

  • Azure Event Grid ist ein verwalteter Ereignisroutingdienst, der ein Veröffentlichungsabonnentmodell verwendet. In dieser Architektur sendet ein Event Grid-Thema auf dem Speicherkonto ein Microsoft.Storage.BlobCreated-Ereignis, wenn ein neues Bild hochgeladen wird, und übermittelt es an die Funktion.

  • Azure Blob Storage ist ein Objektspeicher für unstrukturierte Daten. In dieser Architektur werden alle hochgeladenen Bilder und alle statischen Objekte gespeichert, die die Webanwendung bedient. Blob Storage ist die verlässliche Quelle für eingehende Bilder.

  • Azure Cosmos DB für NoSQL ist eine verwaltete NoSQL-Datenbank. In dieser Architektur werden die Metadaten für jedes Bild gespeichert, einschließlich der strukturierten Ausgabe, die Content Understanding zurückgibt.

Alternativen

  • Azure Machine Learning AutoML für Bilder trainiert benutzerdefinierte Bildklassifizierungs- und Objekterkennungsmodelle aus Ihren bezeichneten Daten mithilfe klassischer maschineller Lerntechniken. Wählen Sie AutoML aus, wenn Sie über ein beschriftetes Dataset verfügen und ein deterministisches, bereitstellungsfähiges Modell für schmale Domänen (z. B. Herstellungsfehlererkennung oder medizinische Bildgebung) benötigen, bei denen generative Ansätze nicht passen. AutoML ist der Pfad, den Microsoft für Kunden empfiehlt, von Custom Vision zu migrieren, wenn sie ein klassisches ML-Modell beibehalten möchten.

  • Microsoft Foundry vision-unterstützte Modelle ermöglichen es Anwendern, multimodale Modelle (GPT-4.1, GPT-4o und Phi-4 multimodal) direkt aufzurufen oder zu optimieren. Wählen Sie diesen Pfad aus, wenn Sie eine präzise Kontrolle über die Eingabeaufforderung und das Modell benötigen, ihre eigenen Daten optimieren oder visuelle Frageantworten und bildbasierten Chat anstelle einer strukturierten Extraktion benötigen.

  • Azure KI-Suche indiziert die Metadaten, sodass Benutzer Bilder nach Tag, Beschriftung oder anderen Attributen abfragen und filtern können. Das KI-Anreicherungs-Skillset kann Visionen und generative KI-Dienste aufrufen und die Ergebnisse direkt in einen Suchindex ohne separate Funktion schreiben.

  • Azure Logic Apps passt, wenn Sie keine Echtzeitreaktion für Uploads benötigen. Ein Workflow, der auf einem Serien- oder Gleitfenstertrigger ausgeführt wird, kann neue Blobs abrufen und Inhaltsverständnis im Batch aufrufen.

  • Azure Document Intelligence extrahiert Bilder, die in Dokumente über das layoutmodell eingebettet sind, sodass Sie die nachgelagerte Klassifizierung für diese eingebetteten Abbildungen ausführen können. Verwenden Sie benutzerdefinierte Klassifizierungsmodelle , wenn Eingabedateien mehrere Dokumenttypen enthalten und sie vor der weiteren Verarbeitung identifizieren müssen.

Szenario-Details

Dieses Szenario gilt für Unternehmen, die Bilder im großen Maßstab verarbeiten und strukturierte Metadaten wie Tags, Beschriftungen oder Kategoriebeschriftungen an jedes Bild anfügen möchten, ohne dass sie trainieren und eigene Modelle verwenden.

Typische Anwendungen umfassen das Klassifizieren von Bildern auf einer Modewebsite, das Analysieren von Fotos für Versicherungsansprüche und das Extrahieren von Kontext aus Spielfotos. Für die interne Entwicklung benötigt man üblicherweise Fachwissen in Computer Vision, Trainingsdaten und Management des Modelllebenszyklus. Die Architektur in diesem Artikel ersetzt die Arbeit mit verwalteten Azure-Diensten.

Potenzielle Anwendungsfälle

Diese Lösung gilt für Einzelhandel, E-Commerce, Spiele, Finanzen und Versicherungen. Zu den gängigen Anwendungsfällen gehören:

  • Markieren von Bildern auf einer Einzelhandels- oder Modewebsite. Verkäufer laden Produktfotos hoch. Inhaltsverständnis gibt die Tags, Beschriftungen und Attribute zurück, die Sie im Analyseschema definieren. Die Plattform verwendet sie zum automatischen Ausfüllen von Eintragsfeldern, zum Steuern der visuellen Suche und zur Reduzierung des manuellen Taggingaufwands.

  • Kategorisieren von Produkten in einem E-Commerce-Katalog. Ein Content-Understanding-Analyzer weist Kategorien- und Unterkategorien-Metadaten zu (zum Beispiel Schuhwerk bis hin zu Laufschuhen) und bestimmt visuelle Attribute wie Farbe und Material. Käufer erhalten genauere Such- und Filterfunktionen, und Verkäufer verbringen weniger Zeit mit der Korrektur von Kategorien.

  • Klassifizieren von Telemetrie aus Screenshots des Spiels. Streamingplattformen klassifizieren einen Stream falsch, wenn ein Ersteller vergessen hat, den Titel nach dem Wechseln von Spielen zu aktualisieren. Eine Funktion, die regelmäßige Screenshots klassifiziert, kann die Änderung erkennen und die Datenstrommetadaten aktualisieren. Verwenden Sie für schmale Domänen, bei denen die generative Klassifizierung unterläuft, AutoML für Bilder, um einen deterministischen Klassifizierer zu trainieren.

  • Weiterleiten von Versicherungsansprüchen Fotos. Inhaltsverständnis identifiziert Fahrzeugschäden, Schäden durch Naturkatastrophen oder Immobilienart anhand von Schadensfotos. Die Metadaten leiten den Anspruch an die richtige Anpassungswarteschlange weiter und verkürzen die Einstufungszeit.

Überlegungen

Diese Überlegungen implementieren die Säulen des Azure Well-Architected Framework, einer Reihe von Leitsätzen, die Sie verwenden können, um die Qualität einer Arbeitsauslastung zu verbessern.

Security

Sicherheit bietet Sicherheitsmaßnahmen gegen bewusste Angriffe und den Missbrauch Ihrer wertvollen Daten und Systeme. Weitere Informationen finden Sie unter Entwurfsprüfliste für die Sicherheit.

  • Verwenden Sie verwaltete Identitäten für die Function App, um sich bei Blob Storage, Azure Cosmos DB und der Microsoft Foundry-Ressource zu authentifizieren, die Content Understanding bereitstellt. Vermeiden Sie das Speichern von Verbindungszeichenfolgen oder API-Schlüsseln in den App-Einstellungen.
  • Beschränken Sie die Foundry-Ressource und Cosmos DB auf private Endpunkte , und deaktivieren Sie den öffentlichen Netzwerkzugriff, wenn die Workload in einem virtuellen Netzwerk ausgeführt wird. Der Flex-Verbrauchsplan unterstützt die Integration des virtuellen Netzwerks.
  • Überprüfen Sie hochgeladene Bilder, bevor Sie den Vision-Dienst aufrufen. Erzwingen Sie Inhaltstyp- und Größenbeschränkungen an der Uploadgrenze, suchen Sie nach Schadsoftware und speichern Sie Uploads in einem Container, den öffentliche Benutzer nicht direkt lesen können.
  • Diese Architektur eignet sich nur für Bilder, die Sie als geeignet erachten, um durch eine Cloud-Lösung verarbeitet zu werden, während die lokale/offline Bildverarbeitung nicht unterstützt wird.

Kostenoptimierung

Die Kostenoptimierung konzentriert sich auf Möglichkeiten, unnötige Ausgaben zu reduzieren und die betriebliche Effizienz zu verbessern. Weitere Informationen finden Sie unter Design Review-Checkliste für die Kostenoptimierung.

  • Beschränken Sie das Analyseschema im Inhaltsverständnis auf die Felder, die die Anwendung tatsächlich verwendet. Jedes zusätzliche Feld erhöht die Tokennutzung und die Kosten pro Aufruf. Überprüfen Sie Microsoft Foundry-Preise auf die aktuellen Tarife.
  • Verwenden Sie für Azure Functions den Flex-Verbrauchsplan für unregelmäßige ereignisgesteuerte Workloads. Es skaliert auf null und rechnet pro Sekunde für aktive Instanzen ab.
  • Bewerten Sie für Azure Cosmos DB serverless oder automatische Skalierung des Durchsatzes, wenn der Datenverkehr unregelmäßig ist. Serverless eignet sich für geringen Datenverkehr und Entwicklungs-/Testworkloads; Autoscale eignet sich für die Produktion bei variabler Last.

Betriebliche Effizienz

Operational Excellence deckt die Betriebsprozesse ab, mit denen eine Anwendung bereitgestellt und in der Produktion ausgeführt wird. Weitere Informationen finden Sie in der Checkliste zur Designüberprüfung für operationale Exzellenz.

  • Senden Sie die Diagnosen von Azure Functions, Event Grid und Microsoft Foundry an einen freigegebenen Log Analytics-Arbeitsbereich und verwenden Sie Application Insights für die verteilte Ablaufverfolgung im Upload-bis-Ergebnis-Fluss.
  • Konfigurieren Sie ein Dead-Letter-Ziel für Event Grid, sodass Ereignisse, die die Funktion nicht verarbeiten kann, in einem separaten Blob-Container für die Wiedergabe landen können.
  • Schema-Analysierer für Versionierungsinhalte als Code verstehen und durch dieselbe Pipeline bereitstellen, die auch die Funktion bereitstellt. Behandeln Sie Schemaänderungen als bruchbrechende Änderungen für nachgeschaltete Verbraucher.

Contributors

Dieser Artikel wird von Microsoft gepflegt. Die folgenden Mitwirkenden haben diesen Artikel geschrieben.

Hauptautoren:

Andere Mitwirkende:

Um nicht öffentliche LinkedIn-Profile zu sehen, melden Sie sich bei LinkedIn an.

Nächste Schritte

Anleitungen zu Lernpfaden finden Sie unter: