MCPcopy Index your code
hub / github.com/NVIDIA-AI-Blueprints/retail-shopping-assistant

github.com/NVIDIA-AI-Blueprints/retail-shopping-assistant @v1.0.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.0.0 ↗ · + Follow
229 symbols 621 edges 41 files 84 documented · 37% updated 1d agov1.0.0 · 2025-09-03★ 752 open issues

Browse by type

Functions 159 Types & classes 48 Endpoints 22
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

🛍️ NVIDIA AI Blueprint: Retail Shopping Assistant

NVIDIA Logo

AI-powered retail shopping assistant with multi-agent architecture

License Python Docker GitHub Stars GitHub Issues GitHub last commit Contributors

📋 Table of Contents

Overview

The Retail Shopping Assistant is an AI-powered blueprint that provides a comprehensive interface for an intelligent retail shopping advisor. Built with LangGraph for agent orchestration, it features multi-agent architecture, real-time streaming responses, image-based search, and intelligent shopping cart management.

Key Features

  • 🤖 Intelligent Product Search: Find products using natural language or images
  • 🛒 Smart Cart Management: Add, remove, and manage shopping cart items
  • 🖼️ Visual Search: Upload images to find similar products
  • 💬 Conversational AI: Natural language interactions
  • 🔒 Content Safety: Built-in moderation and safety checks
  • Real-time Streaming: Live response generation
  • 📱 Responsive UI: Modern, mobile-friendly interface

Architecture

Shopping Assistant Diagram

The application follows a microservices architecture with specialized agents for different tasks: - Chain Server: Main API with LangGraph orchestration - Catalog Retriever: Product search and recommendations - Memory Retriever: User context and cart management - Guardrails: Content safety and moderation - UI: React-based frontend interface

For detailed architecture information, see Architecture Overview.

Get Started

Prerequisites

  • Docker: Version 20.10+ with Docker Compose plugin
  • NVIDIA NGC Account: For API access (Get API Key)
  • Hardware: 4x H100 GPUs (preferred) or 4x A100 GPUs (minimum) for local deployment, or cloud access

Quick Start

  1. Clone the repository: bash git clone https://github.com/NVIDIA-AI-Blueprints/retail-shopping-assistant.git cd retail-shopping-assistant

  2. Authenticate with NVIDIA Container Registry: bash docker login nvcr.io Use $oauthtoken as the username and your NGC API key as the password.

  3. Set up environment: bash export NGC_API_KEY=your_nvapi_key_here export LLM_API_KEY=$NGC_API_KEY export EMBED_API_KEY=$NGC_API_KEY export RAIL_API_KEY=$NGC_API_KEY export LOCAL_NIM_CACHE=~/.cache/nim mkdir -p "$LOCAL_NIM_CACHE" chmod a+w "$LOCAL_NIM_CACHE"

  4. Launch the application:

Option A: Local Deployment: ```bash # Start local NIMs (requires 4x H100 GPUs) docker compose -f docker-compose-nim-local.yaml up -d

# Build and launch the application docker compose -f docker-compose.yaml up -d --build ```

Option B: Cloud Deployment (no local GPUs required): ```bash # Configure to use NVIDIA API Catalog endpoints export CONFIG_OVERRIDE=config-build.yaml

# Build and launch the application docker compose -f docker-compose.yaml up -d --build ```

  1. Access the application: Open your browser to http://localhost:3000

  2. Stop the containers:

Option A: Local Deployment: bash docker compose -f docker-compose.yaml -f docker-compose-nim-local.yaml down

Option B: Cloud Deployment: bash docker compose -f docker-compose.yaml down

For detailed installation instructions, see Deployment Guide.

Deploy on NVIDIA Brev

For a streamlined cloud deployment experience, you can deploy the Retail Shopping Assistant on NVIDIA Brev using GPU Environment Templates (Launchables):

NVIDIA Brev Deployment Guide - Complete step-by-step instructions for deploying on Brev

Why Choose NVIDIA Brev?

  • One-Click Deployment: Pre-configured GPU environments with automatic setup
  • Managed Infrastructure: No need to manage servers or GPU clusters
  • Secure Access: Built-in secure tunneling for web interface access
  • Flexible Resources: Choose from H100, A100, and other GPU configurations
  • Cost-Effective: Pay only for actual usage time

The Brev deployment guide walks you through the entire process from creating a Launchable to accessing your fully functional retail shopping assistant.

Documentation

Contribution Guidelines

We welcome contributions! Please see our Contributing Guide for details on:

  • Development setup and environment configuration
  • Coding standards and best practices
  • Testing guidelines and examples
  • Pull request process and code review guidelines

Community

References

NVIDIA AI Blueprints

Technologies Used

  • LangGraph: Agent orchestration framework
  • FastAPI: Modern Python web framework
  • React: JavaScript library for building user interfaces
  • Milvus: Vector database for similarity search

Related Projects

License

GOVERNING TERMS: Use of the blueprint software and materials and NIM containers are governed by the NVIDIA Software License Agreement and Product-specific Terms for AI products; and the use of models is governed by the NVIDIA Community Model License.

ADDITIONAL INFORMATION: Llama 3.1 Community License Agreement for Llama 3.1 70B Instruct NIM, Llama 3.1 NemoGuard 8B - Content Safety and Llama 3.1 NemoGuard 8B - Topic Control models, built with Llama, (ii) MIT license for NV-EmbedQA-E5-v5.

This project will download and install additional third-party open source software projects. Review the license terms of these open source projects before use, found in License-3rd-party.txt.

Use of the product catalog data in the retail shopping assistant is governed by the terms of the NVIDIA Data License for Retail Shopping Assistant (15Aug2025).


Back to Top

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

Shape

Function 92
Method 67
Class 30
Route 22
Interface 18

Languages

Python73%
TypeScript27%

Modules by API surface

memory_retriever/src/main.py27 symbols
catalog_retriever/src/retriever.py20 symbols
ui/src/utils/index.ts16 symbols
ui/src/types/index.ts15 symbols
ui/src/components/chatbox/chatbox.tsx15 symbols
chain_server/src/main.py13 symbols
chain_server/src/agenttypes.py12 symbols
chain_server/src/graph.py10 symbols
guardrails/src/rails.py9 symbols
guardrails/src/main.py9 symbols
catalog_retriever/src/main.py9 symbols
guardrails/test/test_rails.py8 symbols

For agents

$ claude mcp add retail-shopping-assistant \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page