Imageklassifizierung in Azure

Foundry Tools
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 Inhaltsverständnis 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 Microsoft Foundry- und Foundry Tools-Kataloge.

Architektur

Diagramm, das eine intelligente Bildverarbeitungspipeline zeigt, die Azure Dienste verwendet.

Laden Sie eine Visio-Datei dieser Architektur herunter.

Datenfluss

In diesem Szenario werden die Back-End-Komponenten einer Web- oder mobilen Anwendung behandelt. Der folgende Datenfluss entspricht der vorherigen Abbildung:

  1. Ein Benutzer lädt ein Bild direkt oder mithilfe einer Web- oder mobilen Anwendung in Azure Blob Storage hoch. Der Upload löst ein Ereignis in Azure Event Grid aus.

  2. Ereignisraster sendet eine Benachrichtigung an Azure Functions, um das hochgeladene Bild zu verarbeiten.

  3. Die Funktion generiert eine zeitlich begrenzte URL mit Shared Access Signature nach dem Prinzip der geringsten Rechte, die auf das Zielblob beschränkt ist, und übergibt sie an Content Understanding. Inhaltsverständnis verwendet diese URL, um direkt von Blob Storage aus auf das Bild zuzugreifen, und analysiert es dann mithilfe eines vorgefertigten Analyzers.

  4. Die Funktion speichert die strukturierte Ausgabe, die Content Understanding zusammen mit Bildmetadaten zurückgibt, in Azure Cosmos DB für NoSQL.

  5. Eine Web- oder mobile Anwendung empfängt die Ergebnisse. Dieser Datenfluss gibt die Klassifizierungsausgabe und Metadaten zurück, aber nicht die ursprüngliche Bilddatei.

Komponenten

  • Das Inhaltsverständnis ist ein Foundry Tool, das generative KI verwendet, um benutzerdefinierte strukturierte Ausgabe aus Dokumenten, Bildern, Videos und Audio zu extrahieren. In dieser Architektur analysiert Content Understanding jedes hochgeladene Bild mithilfe eines vordefinierten Analyzers , der die zurückgegebenen Kategorien, Attribute und Bezeichnungen definiert, z. B. Produkttyp, Farbe oder 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

  • AutoML in Azure Machine Learning unterstützt Computer-Vision-Aufgaben. Sie können benutzerdefinierte Bildklassifizierungs- und Objekterkennungsmodelle aus ihren bezeichneten Daten mit klassischen maschinellen Lerntechniken trainieren. Wählen Sie AutoML aus, wenn Sie über ein beschriftetes Dataset verfügen und ein deterministisches, bereitstellungsfähiges Modell für schmale Domänen benötigen, in denen generative Ansätze nicht passen. Beispiele hierfür sind die Herstellungsfehlererkennung oder medizinische Bildgebung. Microsoft empfiehlt AutoML für Kunden, die von Azure KI Custom Vision migrieren, die ein klassisches Machine Learning-Modell beibehalten möchten.

  • Vision-fähige Modelle in Foundry ermöglichen es Ihnen, 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 mit einem wiederkehrenden Trigger oder dem Trigger „Gleitendes Fenster” ausgeführt wird, kann neue Blobs abfragen und Content Understanding als Batch aufrufen.

  • Azure Document Intelligence extrahiert Bilder, die mithilfe des Layoutmodells in Dokumente eingebettet sind, sodass Sie nachgeschaltete Klassifizierungen für eingebettete 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. Die Einrichtung dieser Funktion erfordert traditionell Kenntnisse in Computervision, Schulungsdaten und Modelllebenszyklus-Management. 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 in der Analyse definieren. Die Plattform verwendet die zurückgegebenen Metadaten zum automatischen Ausfüllen von Eintragsfeldern, zum Steuern der visuellen Suche und zum Verringern des manuellen Taggingaufwands.

  • Kategorisieren von Produkten in einem E-Commerce-Katalog. Eine Inhaltsverständnisanalyse weist Kategorie- und Unterkategoriemetadaten wie Schuhe und Laufschuhe sowie visuelle Attribute wie Farbe und Material zu. 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 Fotos für Versicherungsansprüche. 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 bilden die Säulen des Azure Well-Architected Framework, einer Reihe von Leitprinzipien, die Sie zur Verbesserung der Qualität eines Workloads verwenden können. Weitere Informationen finden Sie unter Well-Architected Framework.

Security

Sicherheit bietet Schutz vor absichtlichen Angriffen und dem 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 für die Verarbeitung durch eine Cloudlösung als geeignet erachten. Lokale oder Offline-Bildverarbeitung wird nicht unterstützt.

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 den Analyzer im Inhaltsverständnis auf die Felder, die die Anwendung tatsächlich verwendet. Jedes zusätzliche Feld erhöht die Tokennutzung und die Kosten pro Anruf. Die aktuellen Preise finden Sie unter Foundry-Preise.

  • Verwenden Sie für Azure Functions den Flex-Verbrauchsplan, um Spitzen in ereignisgesteuerten Workloads zu behandeln. Der Plan skaliert auf null und wird für aktive Instanzen pro Sekunde abgerechnet.

  • Bewerten Sie für Cosmos DB den serverlosen oder Autoskalierungsdurchsatz, wenn der Datenverkehr ungleichmäßig ist. Serverless eignet sich für Workloads mit geringem Datenaufkommen sowie für Entwicklungs- und Testworkloads, während sich Autoscaling für Produktionsumgebungen mit schwankender Last eignet.

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 Funktionen, Event Grid und Foundry-Diagnosen an einen freigegebenen Log Analytics-Arbeitsbereich, und verwenden Sie Application Insights für verteiltes Tracing über den gesamten Ablauf vom Upload bis zum Ergebnis.

  • 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.

  • Versionieren Sie Content Understanding-Analyzer-Schemata als Code und stellen Sie sie über dieselbe Pipeline bereit, 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.

Hauptautor:

Andere Mitwirkende:

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

Nächste Schritte

Anleitungen zu Lernpfaden finden Sie unter: