pinterest

PinLanding: Turn Billions of Products into Instant Shopping Collections with Multimodal AI (opens in new tab)

PinLanding is a production pipeline for turning billions of products into searchable shopping collections using multimodal AI. Rather than relying mainly on historical queries or manual curation, it derives structured product attributes from images and metadata, then aligns those attributes with real user search behavior. The system combines multimodal LLMs, embedding-based consolidation, a CLIP-style classifier, and distributed infrastructure to produce scalable, precise shopping feeds.

Understanding Shopping Intent

  • Pinterest analyzes search history, autocomplete use, filters, and browsing paths to estimate shopping demand.
  • Existing systems handle high-volume queries such as “black cocktail dress” well, but provide weaker coverage for:
    • Long-tail queries
    • Conversational requests
    • Contextual intents such as “what to wear for an Italian summer vacation”
  • The analysis identifies:
    • Product areas with strong demand but poor collection coverage
    • Important attribute dimensions, including color, occasion, style, fit, price, and brand
  • The goal is to expand and improve collection coverage, not replace query understanding.

Generating and Curating Shopping Topics

  • Each product is represented by an image plus metadata such as title, description, merchant tags, and price.
  • A vision-language model generates normalized key-value attributes rather than free-form descriptions.
  • Raw model output has high recall but produces:
    • Excessively specific attributes
    • Near-duplicates such as “boho,” “bohemian,” and “boho-chic”
    • Sparse attributes that apply to very few products
  • PinLanding builds a compact vocabulary through:
    • Frequency filtering to remove rarely useful attributes
    • Embedding-based clustering to merge semantically similar terms
    • Manual and LLM-assisted review
  • An LLM judge evaluates generated topics for semantic coherence, realistic shopping intent, and alignment with natural search phrasing.

Scalable Attribute Assignment

  • Running the vision-language model over every product is too expensive and operationally fragile.
  • PinLanding trains a CLIP-inspired dual encoder:
    • One encoder embeds product images and text
    • Another embeds attribute phrases
    • Matching product-attribute pairs are trained as positives, while mismatches are negatives
  • A bidirectional contrastive loss aligns related products and attributes.
  • At inference, products and attributes are embedded once, and attributes are assigned when similarity exceeds a calibrated threshold.
  • This produces fewer distinct attributes while increasing the average number assigned to each product, creating a denser and more consistent attribute graph.

Distributed Feed Construction

  • Ray handles large-scale batch inference across millions of products and topics.
  • The pipeline separates:
    • CPU-based image and metadata loading, tokenization, and serialization
    • GPU-based classifier inference
  • Streaming allows preprocessing and inference to overlap, while heterogeneous CPU and GPU clusters can scale independently.
  • The classifier pipeline reportedly completes in about 12 hours using eight NVIDIA A100 GPUs, at an estimated cost of roughly $500 per training run.
  • Feed construction uses approximate-nearest-neighbor techniques and strict attribute matching.
  • Topics are represented as attribute tuples, such as:
    • Category: dress
    • Color: yellow
    • Season: summer
    • Occasion: party
  • Apache Spark computes topic-product relevance using shared attributes and confidence weights, with partitioning and overlap filters reducing unnecessary candidate comparisons.

The core recommendation is to combine user-behavior signals with content-first multimodal modeling. This approach can expand shopping coverage into conversational and long-tail intents while remaining practical through attribute consolidation, contrastive retrieval, and distributed inference.