Ein Blick hinter die Kulissen
Wir nennen ihn liebevoll Nerd-Content - die spannenden, komplexen Themen, für die unsere Entwickler brennen - Features, die wir entwickelt, Erkenntnisse, die wir gewonnen oder Besonderheiten, die wir entdeckt haben. Viel Spaß beim Lesen!
Unsere Expertise liegt nicht nur darin, Magnolia zu implementieren, sondern es an die spezifischen Bedürfnisse unserer Kunden anzupassen und kontinuierlich weiterzuentwickeln. Diese Flexibilität ermöglicht es uns, innovative und effiziente Anwendungen zu schaffen, die unseren Kunden langfristig Mehrwert bieten."
Markus Hesper, Gesellschafter dev5310
GPT4 Image Recognizer innerhalb der Magnolia DXP
Verstärkung von Magnolias Bilderkennung mit AI
Das DEV5310 GPT-4 Vision Image Recognition Modul baut auf dem Magnolia CMS Image Recognition Modul auf und erweitert dessen Funktionalitäten durch die Integration mit dem GPT-4 Vision Modell von OpenAI. Das GPT-4 Vision Modell bietet eine verbesserte Genauigkeit und eine erweiterte Wissensbasis, die eine umfassende Bilderkennung ermöglicht.
Das Set-up
Bevor Sie mit dem dev5310-gpt4-vision-image-recognition Modul loslegen, müssen Sie sicherstellen, dass das Image Recognition Modul des Magnolia CMS installiert wurde. Dies dient als Basis, auf der das neue Modul funktioniert.
Sobald dies erledigt ist, müssen Sie, wie bei jedem typischen Modul-Setup, die Abhängigkeit dev5310-gpt4-vision-image-recognition in die Maven pom.xml-Datei aufnehmen. Anschließend wird Magnolia CMS so konfiguriert, dass es das neue Modul als zentralen Dienst für alle Bilderkennungsanforderungen erkennt.
Nutzung von OpenAIs Vision-Modell
Eines der Highlights des dev5310 GPT-4 Vision Image Recognition Moduls ist die Implementierung von OpenAIs GPT-4 Vision Modell. Das Modul kommuniziert nahtlos mit dem KI-Modell, um die eingegebenen Bilder mit relevanten Etiketten zu versehen. Für diese Interaktion mit OpenAI ist jedoch ein API-Schlüssel erforderlich, und die hier gebotene Flexibilität ist lobenswert. Egal, ob Sie den API-Schlüssel in einer Umgebungsvariablen, direkt in der Modulkonfiguration oder über die Magnolia-Passwörter-App speichern möchten – das Modul ist so konzipiert, dass es alle diese Methoden unterstützt. Es gewährleistet einen schlanken Einrichtungsprozess, unabhängig von der gewählten Methode.
Fazit
Zusammenfassend lässt sich sagen, dass das dev5310 GPT-4 Vision Image Recognition Modul eine bedeutende Erweiterung der in Magnolia CMS eingebauten Funktionalitäten darstellt. Durch die Integration mit der Leistung von OpenAIs GPT-4 bringt das Modul automatisierte und präzise Bilderkennung auf Ihre CMS-Plattform. Es ist einfach einzurichten, leicht zu konfigurieren und erweitert effektiv Ihre Bilderkennungsfähigkeiten. Machen Sie sich bereit, die Leistungsfähigkeit der KI-gestützten Bilderkennung wie nie zuvor zu entdecken!
Die dev5310Gpt4ImageRecogniser-Klasse
In der Welt der künstlichen Intelligenz dreht sich eines der Trendthemen um die Bilderkennung. Genauer gesagt, um das Modell, das OpenAI unter dem Namen GPT-4 Vision zur öffentlichen Nutzung bereitgestellt hat. In diesem Artikel soll die Klasse Dev5310Gpt4ImageRecogniser vorgestellt werden, die dieses Modell für die Bilderkennung nutzt.
Wie funktioniert der dev5310Gpt4ImageRecogniser?
Der dev5310Gpt4ImageRecogniser implementiert die ImageRecogniser-Schnittstelle. Wie der Name schon sagt, hat ein ImageRecogniser die Aufgabe, Bilder zu interpretieren und ihre Kennzeichnungen (Tags) zurückzugeben. In dieser speziellen Implementierung übernimmt das GPT-4 Vision-Modell diese Arbeit.
java public class Dev5310Gpt4ImageRecogniser implements ImageRecogniser { ... }
Die Klasse verwendet einen JSON-String API_MESSAGE_BODY_TEMPLATE, um die Nutzlast für die OpenAI-API zu definieren. Die Nutzdaten enthalten Anweisungen für den Assistenten und ein zu taggendes Bild. Das Bild wird in Base64 kodiert und zusammen mit einer Anfrage zum Taggen des Bildes an den OpenAI-Bilderkennungsassistenten gesendet.
Eine Instanz von Dev5310OpenAICredentialsProvider wird in der Klasse eingerichtet, die für das Abrufen der erforderlichen Anmeldeinformationen für die Interaktion mit dem OpenAI-Dienst verantwortlich ist.
Bilderkennungsmethode
Die Kernfunktionalität von Dev5310Gpt4ImageRecogniser ist in seiner Erkennungsmethode gekapselt:
java @Override public Collection recognise(final byte[] imageBytes) {...}
Diese Funktion nimmt als Eingabe ein Byte-Array, das ein Bild darstellt, ruft die OpenAI-API auf und gibt eine Sammlung von ImageLabel-Objekten zurück, die die Tags für das erkannte Bild darstellen. ImageLabel"-Objekte sind im Wesentlichen Darstellungen der erkannten Beschriftungen des Bildes.
Falls der OpenAI-Dienst mit einem anderen HTTP-Statuscode als 200 antwortet, wird die Erkennung übersprungen und der Fehler protokolliert. Wenn die Antwort erfolgreich ist, wird ein GptResponse-Objekt erstellt, die Antwort geparst, in Tags umgewandelt und als Sammlung von ImageLabel-Objekten zurückgegeben.
Ergänzende Funktionalitäten
Neben der Erkennungsmethode verfügt die Klasse über mehrere Hilfsmethoden, die alle der Verarbeitung und Vorbereitung der Bilddaten dienen:
_
getBodyImageInfo: Führt vorläufige Bildprüfungen durch - ob das Bild erkannt wird, seinen Typ, seine Größe, seinen MIME-Typ - und erzeugt den Nachrichtentext für die OpenAI-API.
_
getBodyImageIO: Erzeugt eine base64-Darstellung des angegebenen Formats und der Abmessungen des Bildes.
_
scaleImageToFit: Diese Funktion wird verwendet, um die Größe des Bildes unter Beibehaltung des ursprünglichen Seitenverhältnisses zu ändern.
Diese Klasse bietet ein Beispiel für die Interaktion mit Bilderkennungsmodellen wie GPT-4 Vision, das von OpenAI bereitgestellt wird. Sie ist unkompliziert und bietet eine elegante Möglichkeit, mit einer Bildverarbeitungs-API zu kommunizieren, Bilder zu verarbeiten und ihre Bezeichnungen zurückzugeben.