Diese Lösung enthält ein serverloses Backend und eine ReactJS-Frontend-Anwendung, die Produktbeschreibungen aus Bildern und Texteingaben erstellt und Produktbeschreibungen mithilfe des neuen verwalteten generativen KI-Dienstes Amazon Bedrock verbessert und übersetzt.
Einzelhandelsunternehmen verfügen oft über viele tausend oder Millionen von Produkten, die alle genaue und wirksame Beschreibungen erfordern. Einzelhändler verfügen häufig über vorhandene Metadaten oder Bilder für diese Produkte, die als Eingaben für generative KI-Modelle bereitgestellt werden können, um den Prozess der Produktbeschreibungserstellung erheblich zu beschleunigen.
Sie sind für die Kosten der AWS-Dienste verantwortlich, die Sie während der Ausführung dieser Anleitung nutzen. Ab November 2023 betragen die Kosten für die Ausführung dieser Anleitung mit den Standardeinstellungen im Osten der USA (Nord-Virginia) etwa 86 US-Dollar pro Monat für die Verarbeitung von 1.000 Produkten pro Monat.
Diese Anleitung umfasst die AWS-Dienste Rekognition, Bedrock, Cognito, Lambda, API Gateway und CloudWatch mit folgenden Kosten:
Konservativ (mit einem Fehler auf der Seite der Überschätzung) wird diese Lösung 1000 Mal pro Monat zum Generieren von Produktbeschreibungen auf der Grundlage von Eingabebildern verwendet (einschließlich der Erstellung von Übersetzungen ins Spanische, Deutsche und Französische) und im schlimmsten Fall von 30 Sekunden pro Lambda-Funktionsaufruf ausgegangen 1000 Ein-/Ausgabe-Tokens für alle Anrufe an Claude Instant- und Jurassic-Modelle, die Kosten würden ungefähr wie folgt betragen:
Sie müssen alle Voraussetzungen auf Ihrem lokalen Computer installieren:
cdk
-Befehl) wie hier dokumentiert. Sie müssen cdk bootstrap
auch ausführen, wenn Sie das CDK noch nicht wie hier beschrieben in Ihrem Konto verwendet haben. HINWEIS: Docker muss installiert sein und ausgeführt werden . Sie können sicherstellen, dass der Docker-Daemon ausgeführt wird, indem Sie sicherstellen, dass ein Befehl wie docker ps
fehlerfrei ausgeführt wird. Wenn keine Container ausgeführt werden, sollte docker ps
eine leere Liste von Containern wie diese zurückgeben:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
Erstellen Sie eine EC2-Umgebung in AWS Cloud9, starten Sie die EC2-Instanz in einem öffentlichen Subnetz und notieren Sie sich ihre öffentliche IPv4-Adresse (#cloud9_ec2_ip).
Ändern Sie die Größe des EBS-Volumes, das die Umgebung (in Schritt 1 erstellt) verwendet, auf mindestens 20 GB. Standardmäßig sind 10 GB für t2.micro im Lieferumfang enthalten.
Klonen Sie das Repo:
git clone https://github.com/aws-solutions-library-samples/guidance-for-generating-product-descriptions-with-bedrock.git
cd in den Repo-Ordner:
cd guidance-for-generating-product-descriptions-with-bedrock
(Optional) Erstellen Sie eine neue Python-Virtualenv für projektspezifische Abhängigkeiten:
python -m venv .env && source .env/bin/activate
CDK-Abhängigkeiten installieren:
pip install -r deployment/requirements.txt
Bootstrapping für AWS CDK, falls noch nicht geschehen:
cd deployment && cdk bootstrap
Stellen Sie das Backend bereit:
cd deployment && cdk deploy
cd zurück zum Projektstamm:
cd ..
Erstellen Sie einen ersten Cognito-Benutzer:
deployment/create-user.sh <>
Aktualisieren Sie config.js
mit den entsprechenden Werten aus den CDK-Stack-Ausgaben. Dies kann automatisch durch Ausführen erfolgen
deployment/update-config.sh
Frontend-Abhängigkeiten installieren:
cd source/frontend && npm install
Führen Sie die Beispiel-Client-App aus und notieren Sie die Portnummer (#web_port), auf die das Webpack lauscht, z. B. 8080.
npm start
Öffnen Sie die in Schritt 1 erstellten Sicherheitsgruppen des EC2, fügen Sie eine Eingangsregel hinzu, die benutzerdefiniertes TCP, Portbereich #web_port, Quelle „Meine IP“ zulässt, und speichern Sie dann die Regeln.
Die Bereitstellung sollte erfolgreich sein, wenn alle oben genannten Befehle ohne Fehler ausgeführt werden. Sie können die erstellten Backend-Ressourcen durchsuchen, indem Sie in der AWS-Konsole zum CloudFormation-Dienst navigieren, den Stack mit dem Namen LambdaStack
suchen und seine Ressourcen durchsuchen.
Sie können die Demo-Web-App ausprobieren, indem Sie die folgenden Schritte ausführen:
Weitere Ressourcen zur Verwendung von Amazon Bedrock finden Sie auf der Bedrock-Produktseite.
Die bereitgestellte Infrastruktur kann durch Ausführen des folgenden Befehls gelöscht werden:
cd deployment && cdk destroy
Zusätzliche Überlegungen und Einschränkungen