Nutzen Sie crewAI, um mit watsonx.ai multimodale Multi-Agent-Systeme für die Optimierung von Einzelhandelsregalen zu erstellen

Autor

Yohan Bensoussan

GenAI Architect @ IBM Build Lab

IBM

Anna Gutowska

AI Engineer, Developer Advocate

IBM

Stellen Sie sich vor, Sie könnten die Leistung Ihres Einzelhandelsgeschäfts mit nur einem Smartphone und der Leistungsfähigkeit von künstlicher Intelligenz (KI) verändern. Dies ist keine Zukunftsvision, sondern eine Realität, die kleine und mittelgroße Einzelhandelsgeschäfte noch heute umsetzen können! In diesem Tutorial werden wir einen spannenden Anwendungsfall aus der Praxis erkunden, bei dem Ladenbesitzer und -manager KI einsetzen können, um ihre Regalanordnung zu optimieren, den Umsatz zu steigern und die Customer Experience zu verbessern. Wir werden in diesem Projekt sowohl das neueste IBM® Granite-Modell als auch das Visionsmodell Llama 3.2 von Meta nutzen.

Die Auswirkungen von generativer KI auf den Einzelhandel

Mit dem Aufkommen der agentenbasierten generativen KI haben kleine und mittelständische Einzelhandelsgeschäfte nun Zugang zu Analysen und Empfehlungen auf Expertenniveau, die früher nur großen Unternehmen mit eigenen Data-Science-Teams vorbehalten waren. Diese Demokratisierung der KI-Technologie kann für Ihr lokales Lebensmittelgeschäft, Boutique oder regionale Kette bahnbrechend sein.

Das ist der Grund, warum dieser Ansatz so revolutionär ist:

  • Einfach: Alles, was Sie für den Start brauchen, ist ein einfaches Bild des Geschäftsbereichs.
  • Expertenwissen auf Abruf: Die KI-Agenten fungieren als Ihr persönliches Team von Experten im Einzelhandel, die Ihre Fläche und aktuelle Markttrends analysieren.
  • Umsetzbare Erkenntnisse: Sie erhalten einen detaillierten, praktischen Plan für die Umgestaltung Ihrer Regale, um Umsatz und Kundenzufriedenheit zu maximieren.
  • Kosteneffizient: Dieser Ansatz macht teure Berater oder komplexe Softwaresysteme überflüssig.
  • Anpassungsfähigkeit: Wenn sich die Markttrends ändern, können Sie den Aufbau Ihres Geschäfts schnell neu analysieren und anpassen, um immer einen Schritt voraus zu sein.

Lassen Sie uns Schritt für Schritt auf die technischen Details eingehen und sehen, wie diese KI-gestützte Optimierung des Einzelhandels funktioniert. Am Ende dieses Tutorials werden Sie genau wissen, wie Sie dieses System in Ihrem Einzelhandel implementieren und so möglicherweise Ihren Einzelhandel mit der Kraft von KI revolutionieren können.

Architekturschema eines multimodalen Agenten

Die Geschichte hinter der Lösung

Sarah ist Inhaberin eines lokalen Lebensmittelgeschäfts, die Schwierigkeiten hatte, mit größeren Ketten zu konkurrieren. Trotz ihrer besten Bemühungen bemerkte sie, dass sich bestimmte Produkte nicht so gut verkauften, wie sie sollten, während andere ständig ausverkauft waren. Eines Tages, als sie ihr Frischwarenregal zum dritten Mal in diesem Monat umräumte, fragte sie sich, ob es einen besseren Weg gab.

Hier kommt unsere KI-gestützte Lösung ins Spiel. Mit ihrem Smartphone und unserem intelligenten System war Sarah in der Lage, die Leistung ihres Geschäfts zu verbessern. Schauen wir uns an, wie man ein solches System aufbaut.

Frisches Bio-Gemüse und Obst im Supermarktregal Sarahs Regale

Was ist crewAI?

Wir können CrewAI verwenden, ein Open-Source -Agenten-Framework, das Agenteninteraktionen in Crews orchestriert. Der Begriff „Crew“ bezieht sich auf Multiagentensysteme. Unser Team besteht aus einem Team von Agenten, die verschiedene Expertenrollen im Einzelhandel einnehmen und rund um die Uhr zur Verfügung stehen, wobei jeder sein eigenes Fachgebiet hat. Aufgaben können entweder direkt einem Agenten zugewiesen oder über den hierarchischen Prozess von crewAI bearbeitet werden, der bestimmte Rollen und Verfügbarkeiten bewertet.

Für Anfänger im Bereich crewAI empfehlen wir die Erläuterungen zu crewAI sowie die offiziellen Dokumentationen. Im offiziellen crewAI GitHub-Repository finden Sie auch Beispiele für Crews, die Aktienanalysen, Datenanalysen, RAG, LangGraph-Integration und vieles mehr durchführen.

Lernen Sie das KI-Team für den Einzelhandel kennen

Werfen wir einen Blick auf das Team von Agenten für den Einzelhandel, die wir in diesem Tutorial verwenden.

store_manager:
    role: Store Manager
    goal
        Analyze the shelves in the physical store and provide a detailed report
        to the market analyst to develop a detailed action plan with the insights.
    backstory
        As the Space Planner, you are responsible for examining the store's shelves,
        assessing product placement and optimizing space utilization.
        You have access to advanced tools for shelf visualization, which help you
        collect accurate data on the current arrangement of products.
        You are capable to translate market analysis into a plan for the store
        or specific shelf or department.

market_analyst:
    role: Market Trend Analyst
    goal
        Provide recommendations to rearrange the product arrangement based on market trends.
    backstory
        As the Market Analyst, you possess in-depth knowledge of market trends and consumer behavior.
        Your experience and keen sense of retail enable you to propose effective recommendations
        for specific shelves. You analyze reports provided by the Space Planner to suggest
        improvements that enhance sales and customer experience.

Arbeitsablauf für Aufgaben

Der Task-Workflow sieht wie folgt aus.

analyze_shelf:
    description:
        Use the Vision Tool to collect visual data and caption the current product arrangement.
        Conduct a thorough analysis of shelf {shelf} in the store.
        Prepare a detailed report highlighting the current layout, products,
        product placement and any observed issues.
        Ensure the report is detailed at the level of product names.
    expected_output:
        A comprehensive report on shelf {shelf}, including visual data,
        analysis of product placement, space utilization and any recommendations for improvement.
    agent: store_manager

provide_recommendations:
    description:
        Review the report on shelf {shelf} provided by the Store Manager.
        Utilize your knowledge of the retail market and internet to assess current trends
        relevant to the products in this shelf ({shelf}).
        Develop expert recommendations to optimize sales and customer satisfaction.
        Ensure the recommendations are detailed and includes details like product names.
    expected_output:
        A set of actionable recommendations for rearranging the {shelf} shelf,
        aligned with current market trends and consumer preferences.
    agent: market_analyst

create_action_plan:
    description:
        List the recommendations from the Market Analyst,
        then develop a detailed action plan for Store manager and Store buyer
        to implement the changes.
        Ensure the plan is practical and outlines the steps needed to rearrange
        the products effectively.
        Be smart and well explained.
        Give the explanation of your recommendations and the goal to achieve.
    expected_output:
        A detailed list of recommendation and action plan for rearranging and
        improving the {shelf} shelf according to market trends,
        including market analyst recommendations and translation into
        practical tasks for the Store manager and the Buyer.
    agent: store_manager

Schritte

Sie finden dieses Projekt auf Github.

Schritt 1. Einrichten Ihrer Umgebung

Zuerst müssen wir die Umgebung einrichten. Sie finden diese Schritte in der Markdown-Datei auf GitHub oder indem Sie hier folgen.

  • Sie brauchen Python >=3.10 <=3.13 als Installation in Ihrem System. Sie können Ihre Python-Version überprüfen, indem Sie den Befehl python3 --version verwenden.
  • Richten Sie eine virtuelle Umgebung ein, um Abhängigkeitskonflikte bei Python-Paketen zu vermeiden.
python3 -m venv myenv
source ./myenv/bin/activate
  • Klonen Sie das Repository mit https://github.com/IBM/ibmdotcom-tutorials.git als HTTPS-URL. Detaillierte Schritte zum Klonen eines Repository finden Sie in der GitHub-Dokumentation.

Die Projektstruktur des Verzeichnissescrew-ai-projects sollte wie folgt aussehen:

src/my_retail_advisor/

├── config/
│ ├── agents.yaml # Agent configurations
│ └── tasks.yaml # Task definitions
├── tool/
│ ├── custom_tool.py # Custom crewAI tool implementations
│ └── tool_helper.py # Vision helper functions
├── crew.py # Crew orchestration
└── main.py # Application entry point

Schritt 2. Fordern Sie die watsonx API-Anmeldedaten an

  1.  Melden Sie sich bei watsonx.ai mit Ihrem IBM Cloud-Konto an.
  2. Erstellen Sie ein watsonx.ai-Projekt. Notieren Sie sich Ihre Projekt-ID unter Projekt > Verwalten > Allgemein > Projekt-ID. Sie benötigen diese ID für dieses Tutorial.
  3. Erstellen Sie eine Instanz des watsonx.ai Runtime Service (wählen Sie den Lite-Plan, der eine kostenlose Instanz ist).
  4. Generieren eines watsonx API-Schlüssels.
  5. Verknüpfen Sie den watsonx.ai Runtime Service mit dem Projekt, das Sie in watsonx.ai erstellt haben.

Schritt 3. Erhalten Sie die Serper API-Anmeldeinformationen

Generieren und notieren Sie Ihren kostenlosen Serper-API- Schlüssel. Serper ist eine API für die Google-Suche, die wir in diesem Projekt verwenden werden.

Schritt 4. Installieren Sie CrewAI und legen Sie Ihre Zugangsdaten fest

Wir müssen das crewAI-Framework für dieses Tutorial installieren und unsere watsonx.ai-Anmeldedaten festlegen, die wir in Schritt 2 generiert haben.

Führen Sie den folgenden Befehl in Ihrem Terminal aus, um crewAI zu installieren:

%pip install 'crewai[tools]'

 

In einer separaten .env -Datei auf der gleichen Verzeichnisebene wie die .env_sample -Datei legen Sie Ihre Anmeldedaten wie folgt als Zeichenfolgen fest:

WATSONX_APIKEY=your_watson_api_key_here
WATSONX_PROJECT_ID=your_watsonx_project_id_here
WATSONX_URL=your_endpoint (e.g. "https://us-south.ml.cloud.ibm.com")
SERPER_API_KEY=your_serper_api_key_here

Schritt 5. Personalisieren Sie die Crew (optional)

CrewAI kann so konfiguriert werden, dass es ein beliebiges Open Source Large Language Model (LLM) verwendet. LLMs können über Ollama und mehrere andere APIs wie IBM® watsonx und OpenAI verbunden werden. Benutzer können auch vorkonfigurierte Tools nutzen, die über das crewAI-Toolkit sowie die LangChain-Tools verfügbar sind.

Unser benutzerdefiniertes visuelles Such-Tool wird durch das llama-3-2-90b-vision-instruct Modell mit watsonx.ai unterstützt. Hier ist ein Einblick in das benutzerdefinierte Vision-Tool im Tool-Verzeichnis.

# tool/custom_tool.py
from crewai.tools import BaseTool
from my_retail_advisor.tools.tool_helper import Helper

class VisionTool(BaseTool):
name: str = "Vision Tool"
description: str = "Analyzes a default picture to collect visual data."

def _run(self) -> str:
# Relative path to the shelf.jpg image from the working crew-ai/my_retail_advisor directory
image_path = 'images/shelf.jpg'

# Simulating image-to-text conversion
products_in_image = Helper.image2text(image_path)
return products_in_image

Es gibt viele Möglichkeiten, Ihr Team anzupassen:

  • Ändern Sie src/my_retail_advisor/config/agents.yaml, um Ihre Agenten zu definieren.
  • Ändern Sie src/my_retail_advisor/config/tasks.yaml,  um Ihre Aufgaben zu definieren.
  • Ändern Sie src/my_retail_advisor/crew.py , um Ihre eigene Logik, Werkzeuge und spezifische Argumente hinzuzufügen.
  • Ändern Sie src/my_retail_advisor/main.py, um benutzerdefinierte Eingaben für Ihre Agenten und Aufgaben hinzuzufügen.
  • Ändern Sie src/my_retail_advisor/tool/custom_tool.py, um benutzerdefinierte Tools für Ihre Agenten und Aufgaben hinzuzufügen.
  • Ändern Sie src/my_retail_advisor/tool/tool_helper.py, um das benutzerdefinierte Vision-Tool basierend auf dem multimodalen Llama-Modell zu ändern.
  • Ersetzen Sie images/shelf.jpg mit einem eigenen Bild.

Schritt 6. Führen Sie das System aus

Stellen Sie sicher, dass Sie sich im richtigen Arbeitsverzeichnis dieses Projekts befinden. Sie können Verzeichnisse ändern, indem Sie den folgenden Befehl in Ihrem Terminal ausführen.

cd crew-ai-projects/my_retail_advisor

Führen Sie diesen Befehl im Stammordner Ihres Projekts aus, um Ihr Team von KI-Agenten zu starten und mit der Ausführung der Aufgaben zu beginnen. Beachten Sie, dass das Team möglicherweise einige Minuten läuft, bevor es ein endgültiges Ergebnis anzeigt.

crewai run

Dieser Befehl initialisiert die themy-Einzelhandel-Berater Crew, stellt die Agenten zusammen und weist ihnen die Aufgaben zu, wie sie in Ihrer Konfiguration definiert sind. In diesem unveränderten Beispiel wird Granite auf watsonx.ai verwendet, um einen Bericht zu erstellen.md Datei mit der Ausgabe. CrewAI kann JSON, Pydantic-Modelle und unaufbereitete Zeichenfolgen als Ausgabe zurückgeben. Hier ist ein Beispiel für die Ausgabe produziert vom Team.

Beispielausgabe:

Aktionsplan zur Neugestaltung und Verbesserung des Gemüseregals

Ziel:
Eine visuell ansprechende und organisierte Obst- und Gemüseabteilung schaffen, die beliebtesten Gemüsesorten präsentiert, den Umsatz steigert und die Kundenzufriedenheit verbessert.

Empfehlungen des Marktanalysten:

  1. Schaffen Sie einen Mittelpunkt mit einer farbenfrohen und auffälligen Präsentation der beliebtesten Gemüsesorten.
  2. Verwenden Sie verschiedene Farben, Texturen und Höhen, um visuelle Akzente zu setzen.
  3. Gruppieren Sie ähnliche Gemüsesorten in Gruppen.
  4. Erwägen Sie die Verwendung von Körben, Mülleimern oder anderen Containern, um eine natürliche und erdige Wirkung zu schaffen.
  5. Verwenden Sie Beleuchtung, um bestimmte Produkte oder Sonderangebote hervorzuheben.
    ...

Aktionsplan für Filialleiter und Filialeinkäufer:

...

Schritt 1: Brennpunkt-Anzeige

  • Filialleiter: Legen Sie einen Schwerpunktbereich im Regal für das beliebteste Gemüse (Tomaten, Kartoffeln, Zwiebeln, Salat, Karotten, Paprika, Gurken und Sellerie) fest.
  • Speicher Käufer: Sorgen Sie für einen ausreichenden Bestand an diesem Gemüse, um eine volle und ansprechende Auslage zu gewährleisten.
  • Team: Ordnen Sie das Gemüse optisch ansprechend an und achten Sie dabei auf eine Vielfalt an Farben, Texturen und Höhen.

...

Schritt 4: Thematische Darstellungen und zusätzliche Funktionen

  • Geschäftsleiter: Planen und implementieren Sie themenbezogene Präsentationen (z. B. beim Sommergrillen oder mit festlichem Thema), um Kunden anzusprechen und ähnliche Produkte zu bewerben.
  • Store Käufer: Sorgen Sie für einen ausreichenden Bestand an themenbezogenen Displaymaterialien und ähnlichen Produkten.
  • Team: Verwenden Sie Gemüseregale oder -stände, um zusätzliche Ausstellungsfläche zu schaffen und eine visuell ansprechende Präsentation zu kreieren.

Zusammenfassung

Wie in der Beispielausgabe zu sehen ist, ist das Multiagentensystem in der Lage, den sequenziellen Prozess der Eingabeverarbeitung, des Werkzeugaufrufs und der Formulierung von Ergebnissen auszuführen.

Erinnern Sie sich an Sarahs Problem mit dem Frischwarengang? Hier sehen Sie, wie das System ihr geholfen hat:

  1. Visuelle Analyse: Sarah hat mit ihrem Smartphone ein Foto von ihrem Gemüseregal gemacht. Der Filialleiter-Agent hat das Bild analysiert und festgestellt, dass die Regale sehr voll sind und aufgeräumt werden müssen.
  2. Marktforschung: Der Marktanalyseagent nutzte die aktuellen Markttrends für den Gemüseverkauf und die Kundenpräferenzen, um umsetzbare Empfehlungen für die Umgestaltung des Gemüseregals zu erstellen.
  3. Aktionsplan: Auf der Grundlage dieser Erkenntnisse erhielt Sarah einen detaillierten Plan mit Anweisungen:
    • Erstellen Sie eine farbenfrohe und auffällige Auslagen
    • Verwenden Sie Körbe oder Behälter, um der Auslage mehr Natürlichkeit zu verleihen.
    • Gestalten Sie eine Auslage nach einem Motto, z. B. ein Sommer-BBQ oder Urlaub, um Kunden mit passenden Produkten zu begeistern.
    • Schaffen Sie Platz zwischen den verschiedenen Gemüsesorten, um sie übersichtlicher zu gestalten.
    • Die Beleuchtung verbessern.

Zusammenfassend lässt sich sagen, dass diemy-retail-advisor -Crew aus mehreren KI-Agenten mit jeweils eigenen Rollen, Zielen und Tools besteht. Diese Agenten arbeiten gemeinsam an einer Reihe von Aufgaben, die in config/tasks.yaml definiert sind, indem sie ihre kollektiven Fähigkeiten nutzen, um komplexe Ziele zu erreichen. Die config/agents.yaml- Datei beschreibt die Funktionen und Konfigurationen jedes Agenten in Ihrer Crew.

Mit KI-gestützten Tools wie diesem können kleine und mittlere Einzelhändler ihre Entscheidungsfindung vereinfachen. Genau wie Sarah können Sie die Leistung Ihres Geschäfts mit einer Technologie verbessern, die zugänglich, erschwinglich und effektiv ist. Diese Architektur eröffnet auch andere KI-Möglichkeiten in verschiedenen Bereichen, wie z. B. Produktdesign und verbesserte Customer Experience. Ihre Flexibilität macht sie über den Einzelhandel hinaus wertvoll und ermöglicht es Unternehmen, innovativ zu sein und bei industriespezifischen Aufgaben herausragende Leistungen zu erbringen.

Weiterführende Lösungen
Entwicklung von IBM KI-Agenten 

Ermöglichen Sie Entwicklern die Erstellung, Bereitstellung und Überwachung von KI-Agenten mit dem IBM watsonx.ai Studio.

watsonx.ai erkunden
IBM KI-Agenten und -Assistenten

Erzielen Sie bahnbrechende Produktivität mit einem der branchenweit umfassendsten Funktionenpakete, das Unternehmen bei der Erstellung, Anpassung und Verwaltung von KI-Agenten und KI-Assistenten unterstützt. 

Erkunden Sie KI-Agenten
IBM Granite

Erzielen Sie Kosteneinsparungen von über 90 % mit den kleineren und offenen Modellen von Granite, die auf Entwicklereffizienz ausgelegt sind. Diese auf Unternehmen abgestimmten Modelle bieten eine herausragende Leistung bei Sicherheitsbenchmarks und in einem breiten Spektrum von Unternehmensaufgaben von Cybersicherheit bis RAG.

Granite erkunden
Machen Sie den nächsten Schritt

Automatisieren Sie Ihre komplexen Workflows und erzielen Sie bahnbrechende Produktivität mit einem der branchenweit umfassendsten Funktionspakete, das Unternehmen bei der Erstellung, Anpassung und Verwaltung von KI-Agenten und KI-Assistenten unterstützt. 

watsonx.ai Agentenentwicklung erkunden Entdecken Sie watsonx Orchestrate