Gunakan crewAI untuk membangun sistem multi-agen multimodal untuk optimasi rak retail dengan watsonx.ai

Penulis

Yohan Bensoussan

GenAI Architect @ IBM Build Lab

IBM

Anna Gutowska

AI Engineer, Developer Advocate

IBM

Bayangkan mengubah kinerja toko retail Anda hanya dengan smartphone dan kekuatan kecerdasan buatan (AI). Ini bukan skenario masa depan yang jauh—ini adalah kenyataan yang dapat diterapkan oleh toko retail kecil dan menengah hari ini! Dalam tutorial ini, kita akan menjelajahi contoh penggunaan dunia nyata yang menarik di mana pemilik dan manajer toko dapat menggunakan AI untuk mengoptimalkan pengaturan rak mereka, meningkatkan penjualan, dan meningkatkan pengalaman pelanggan. Kami akan memanfaatkan model IBM® Granite terbaru dalam proyek ini serta model visi Llama 3.2 Meta.

Dampak AI generatif pada retail

Dengan munculnya AI generatif berbasis agen, toko retail kecil dan menengah sekarang memiliki akses ke analisis pakar dan rekomendasi yang dulunya merupakan domain perusahaan besar dengan tim ilmu data khusus. Demokratisasi teknologi AI ini dapat menjadi terobosan besar bagi toko kelontong lokal Anda, toko butik, atau jaringan ritel regional.

Inilah yang membuat pendekatan ini begitu revolusioner:

  • Kesederhanaan: Yang Anda butuhkan untuk memulai adalah gambar sederhana dari lorong toko Anda.
  • Keahlian sesuai permintaan: Agen AI bertindak sebagai tim pakar retail pribadi Anda, menganalisis ruangan Anda dan tren pasar terkini.
  • Insight yang dapat ditindaklanjuti: Anda akan menerima rencana detail dan praktis untuk mengatur ulang rak-rak Anda guna memaksimalkan penjualan dan kepuasan pelanggan.
  • Hemat biaya: Pendekatan ini menghilangkan kebutuhan akan konsultan mahal atau sistem perangkat lunak yang kompleks.
  • Kemampuan beradaptasi: Seiring dengan perubahan tren pasar, Anda dapat dengan cepat menganalisis ulang dan menyesuaikan tata letak toko Anda untuk tetap unggul di pasar.

Mari selami detail teknis dan lihat bagaimana pengoptimalan retail yang didukung AI ini bekerja, langkah demi langkah. Pada akhir tutorial ini, Anda akan memiliki pemahaman yang jelas tentang bagaimana menerapkan sistem ini di toko Anda sendiri, yang berpotensi merevolusi ruang retail Anda dengan kekuatan AI.

Skema arsitektur agen multimodal

Cerita di balik solusi

Sarah adalah pemilik toko kelontong lokal yang berjuang untuk bersaing dengan jaringan bisnis yang lebih besar. Meskipun telah berusaha sebaik mungkin, dia menyadari bahwa beberapa produk tidak terjual sebaik yang seharusnya, sementara stok produk lain selalu habis. Suatu hari, saat sedang merapikan rak sayuran segar untuk ketiga kalinya dalam sebulan, dia bertanya-tanya apakah ada cara yang lebih baik.

Di situlah solusi kami yang didukung AI masuk. Dengan hanya menggunakan smartphone dan sistem cerdas kami, Sarah mampu mengubah kinerja toko. Mari selami cara membangun sistem seperti itu.

Sayuran dan buah organik segar di rak di supermarket Rak Sarah

Apa itu crewAI?

Kita dapat menggunakan crewAI, kerangka kerja agen sumber terbuka yang mengatur interaksi agen dalam crew. Istilah "crew" mengacu pada sistem multiagen. Crew kita adalah tim agen yang berperan sebagai pakar retail yang tersedia 24x, masing-masing dengan spesialisasi mereka sendiri. Tugas dapat langsung diberikan kepada agen atau ditangani melalui proses hierarkis crewAI yang mengevaluasi peran spesifik dan ketersediaan.

Untuk pemula crewAI, lihat penjelasan crewAI bersama dengan dokumen resmi. Di repositori resmi crewAI GitHub, Anda juga dapat menemukan contoh crew yang melakukan analisis stok, analisis data, RAG, integrasi LangGraph, dan lainnya.

Inilah tim retail AI

Mari kita lihat tim pakar retail yang akan kita gunakan dalam tutorial ini.

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.

Alur kerja tugas

Alur kerja tugas adalah sebagai berikut.

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

Langkah

Anda dapat menemukan proyek ini di Github.

Langkah 1. Siapkan lingkungan kerja Anda

Pertama-tama kita perlu mengatur lingkungan kita. Anda dapat menemukan langkah-langkah ini di file Markdown di GitHub atau dengan mengikuti di sini.

  • Pastikan Python >=3.10 <=3.13 diinstal pada sistem Anda. Anda dapat memeriksa versi Python Anda menggunakan perintah python3 --version .
  • Siapkan lingkungan virtual untuk menghindari konflik dependensi paket Python.
python3 -m venv myenv
source ./myenv/bin/activate
  • Kloning repositori menggunakan https://github.com/IBM/ibmdotcom-tutorials.git sebagai URL HTTPS. Untuk langkah-langkah terperinci tentang cara membuat kloning repositori, lihat dokumentasi GitHub.

Struktur direktoricrew-ai-projects harus seperti berikut:

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

Langkah 2. Dapatkan kredensial watsonx API

  1.  Masuk ke watsonx.ai menggunakan akun IBM Cloud Anda.
  2. Buat proyek watsonx.ai. Catat ID proyek Anda di project > Manage > General > Project ID. Anda akan memerlukan ID ini untuk tutorial ini.
  3. Buat instance layanan waktu proses watsonx.ai (pilih paket Lite, yang merupakan instance gratis).
  4. Buat  kunci API watsonx.
  5. Tautkan layanan Waktu proses watsonx.ai ke proyek yang Anda buat di watsonx.ai.

Langkah 3. Dapatkan kredensial Serper API

Buat dan catat kunci Serper API gratis Anda. Serper adalah Google Search API yang akan kita gunakan dalam proyek ini.

Langkah 4. Instal crewAI dan atur kredensial Anda

Kita perlu menginstal kerangka kerja crewAI untuk tutorial ini dan menyiapkan kredensial watsonx.ai yang telah kita buat dalam langkah 2.

Untuk menginstal crewAI, jalankan perintah berikut di terminal Anda.

%pip install 'crewai[tools]'

 

Dalam file .env  terpisah pada tingkat direktori yang sama dengan file .env_sample , atur kredensial Anda sebagai string seperti:

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

Langkah 5. Sesuaikan crew (opsional)

crewAI dapat dikonfigurasi untuk menggunakan model bahasa besar sumber (LLM) terbuka. LLM dapat dihubungkan melalui Ollama dan beberapa API lainnya seperti IBM watsonx dan OpenAI. Pengguna juga dapat memanfaatkan alat yang dibangun sebelumnya yang tersedia melalui toolkit crewAI serta LangChain Tools.

Alat pencarian visual khusus kami didukung oleh llama-3-2-90b-vision-instruct model menggunakan watsonx.ai. Berikut ini adalah tampilan alat visi khusus di direktori alat.

# 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

Ada banyak cara Anda dapat menyesuaikan crew Anda:

  • Ubah src/my_retail_advisor/config/agents.yaml untuk mendefinisikan agen Anda.
  • Ubah src/my_retail_advisor/config/tasks.yaml  untuk menentukan tugas Anda.
  • Ubah src/my_retail_advisor/crew.py untuk menambahkan logika, alat, dan arg spesifik Anda sendiri.
  • Ubah src/my_retail_advisor/main.py untuk menambahkan input khusus untuk agen dan tugas Anda.
  • Ubah src/my_retail_advisor/tool/custom_tool.py untuk menambahkan alat khusus untuk agen dan tugas Anda.
  • Ubah src/my_retail_advisor/tool/tool_helper.py untuk mengubah alat visi khusus berdasarkan model Llama multimodal.
  • Ganti images/shelf.jpg dengan gambar Anda sendiri.

Langkah 6. Jalankan sistem

Pastikan Anda berada di direktori kerja yang tepat dari proyek ini. Anda dapat mengubah direktori dengan menjalankan perintah berikut di terminal Anda.

cd crew-ai-projects/my_retail_advisor

Untuk memulai crew agen AI Anda dan memulai eksekusi tugas, jalankan perintah ini dari folder root proyek Anda. Catatan, crew dapat berjalan selama beberapa menit sebelum menampilkan hasil akhir.

crewai run

Perintah ini menginisialisasi themy-retail-advisor, mengumpulkan agen-agen, dan memberi mereka tugas-tugas sesuai dengan konfigurasi yang Anda tentukan. Contoh ini, tidak dimodifikasi, akan menggunakan Granite di watsonx.ai untuk membuat file report.md dengan output. crewAI dapat menampilkan JSON, model Pydantic, dan string mentah sebagai output. Berikut adalah contoh output yang dihasilkan oleh crew.

Contoh output:

Rencana Aksi untuk Menata Ulang dan Memperbaiki Rak Sayuran

Tujuan:
Untuk menciptakan bagian produk segar yang menarik secara visual dan tertata dengan baik, menampilkan sayuran terpopuler, meningkatkan penjualan, dan meningkatkan kepuasan pelanggan.

Rekomendasi dari Analis Pasar:

  1. Buat titik fokus dengan tampilan sayuran paling populer yang penuh warna dan menarik.
  2. Gunakan berbagai warna, tekstur, dan ketinggian untuk menciptakan daya tarik visual.
  3. Kelompokkan sayuran serupa bersama-sama.
  4. Pertimbangkan untuk menggunakan keranjang, kotak, atau wadah lain untuk menambahkan nuansa alami dan bersahaja.
  5. Gunakan pencahayaan untuk menyoroti produk atau promosi tertentu.
    ...

Rencana Tindakan untuk Manajer Toko dan Pembeli Toko:

...

Langkah 1: Tampilan Titik Fokus

  • Manajer Toko: Tentukan area fokus di rak untuk sayuran yang paling laris (tomat, kentang, bawang merah, selada, wortel, cabai, mentimun, dan seledri).
  • Pembeli Toko: Pastikan stok sayuran ini cukup untuk mempertahankan tampilan yang penuh dan menarik.
  • Tim: Atur sayuran dengan cara yang menarik secara visual, menggunakan berbagai warna, tekstur, dan ketinggian.

...

Langkah 4: Tampilan Bertema dan Fitur Tambahan

  • Manajer Toko: Rencanakan dan implementasikan tampilan bertema (misalnya, BBQ musim panas atau bertema liburan) untuk menarik pelanggan dan mempromosikan produk terkait.
  • Pembeli Toko: Pastikan stok bahan tampilan bertema dan produk terkait yang cukup.
  • Tim: Gunakan rak atau dudukan sayuran untuk menambahkan ruang tampilan ekstra dan membuat tampilan yang menarik secara visual.

Kesimpulan

Seperti yang terlihat pada output sampel, sistem multiagen mampu menjalankan proses berurutan berupa pemrosesan input, pemanggilan alat, dan merumuskan temuan.

Ingat masalah lorong produk segar Sarah? Inilah cara sistem membantunya:

  1. Analisis visual: Sarah mengambil foto lorong sayur dengan smartphone-nya. Agen manajer toko menganalisis gambar dan memperhatikan bahwa rak-rak padat dan membutuhkan pemeliharaan.
  2. Penelitian pasar: Agen analis pasar menggunakan tren pasar terkini untuk penjualan sayuran dan preferensi pelanggan untuk membuat rekomendasi yang dapat ditindaklanjuti untuk mengatur ulang rak sayuran.
  3. Rencana tindakan: Berdasarkan insight ini, Sarah menerima rencana terperinci termasuk instruksi untuk:
    • Membuat tampilan yang penuh warna dan menarik
    • Menggunakan keranjang atau kotak untuk menambahkan nuansa alami pada tampilan.
    • Tambahkan tampilan bertema, seperti BBQ musim panas atau tampilan bertema liburan, untuk melibatkan pelanggan dalam produk terkait.
    • Menciptakan ruang di antara berbagai jenis sayuran agar rapi.
    • Meningkatkan pencahayaan.

Singkatnya, Crewmy-retail-advisor terdiri dari beberapa agen AI, masing-masing dengan peran, tujuan, dan alat yang unik. Agen-agen ini berkolaborasi dalam serangkaian tugas, yang didefinisikan dalam config/tasks.yaml memanfaatkan keterampilan kolektif agen untuk mencapai tujuan yang kompleks. File config/agents.yaml menguraikan kemampuan dan konfigurasi setiap agen di crew Anda.

Dengan alat yang didukung AI seperti ini, peretail kecil dan menengah dapat merampingkan proses pengambilan keputusan mereka. Sama seperti Sarah, Anda juga dapat meningkatkan kinerja toko Anda dengan teknologi yang mudah diakses, terjangkau, dan efektif. Arsitektur ini juga membuka peluang AI lainnya di berbagai bidang, seperti desain produk dan pengalaman pelanggan yang ditingkatkan. Kekuatan fleksibilitasnya membuatnya sangat berharga di luar sektor retail, memberdayakan bisnis untuk berinovasi dan unggul dalam tugas-tugas spesifik industri.

Solusi terkait
Pengembangan agen AI IBM 

Bantu pengembang untuk membangun, menerapkan, dan memantau agen AI dengan studio IBM watsonx.ai.

Jelajahi watsonx.ai
Agen AI dan asisten IBM

Ciptakan produktivitas inovatif dengan salah satu rangkaian kemampuan paling komprehensif di industri untuk membantu bisnis membangun, menyesuaikan, dan mengelola agen dan asisten AI. 

Jelajahi agen AI
IBM Granite

Raih penghematan biaya lebih dari 90% dengan model Granite yang lebih kecil dan terbuka, yang dirancang untuk efisiensi pengembang. Model yang sesuai dengan kebutuhan perusahaan ini memberikan kinerja luar biasa terhadap tolok ukur keamanan dan di berbagai tugas perusahaan, mulai dari keamanan siber hingga RAG.

Jelajahi Granite
Ambil langkah selanjutnya

Otomatisasi alur kerja yang kompleks dan ciptakan produktivitas inovatif dengan salah satu rangkaian kemampuan paling komprehensif di industri untuk membantu bisnis membangun, menyesuaikan, dan mengelola agen dan asisten AI. 

Jelajahi pengembangan agen watsonx.ai Temukan watsonx Orchestrate