Marqo Ecommerce Embedding Models

Marqo has introduced new models designed for ecommerce applications. These models, Marqo Ecommerce B and Marqo Ecommerce L, are great at creating multimodal product embeddings from images and text. They perform better than existing solutions like Amazon Titan''s Multimodal Embedding and open-source models such as ViT SO400M 14 SigLIP.
Key Features
Marqo''s models were tested on two datasets: marqo ecommerce hard and marqo ecommerce easy. These datasets included product images and text, with the ''hard'' dataset being more extensive and realistic. The models were evaluated on three key tasks.
- GoogleShopping Text2Image: Using product titles to search for product images.
- GoogleShopping Category2Image: Using product categories as queries to search for product images.
- AmazonProducts Text2Image: Using product titles to search for product images from Amazon data.
The Marqo Ecommerce models consistently outperformed other models in metrics like Mean Reciprocal Rank (MRR) and normalized Discounted Cumulative Gain (nDCG@10).
Benefits
Marqo''s models offer several advantages for ecommerce platforms.
They give faster, more accurate searches. Better search results mean a better user experience and higher conversion rates.
Customers see highly relevant products immediately, increasing satisfaction and repeat business.
More accurate product suggestions help customers discover new products and increase upselling and cross-selling opportunities.
Use Cases
Marqo''s models can be used on Marqo Cloud or Hugging Face. Here’s how to set up and use these models.
Marqo Ecommerce B
import marqo
api_key = "your_api_key"
mq = marqo.Client("https://api.marqo.ai", api_key=api_key)
settings = {
"type": "unstructured",
"model": "Marqo/marqo-ecommerce-embeddings-B",
"modelProperties": {
"name": "hf-hub:Marqo/marqo-ecommerce-embeddings-B",
"dimensions": 768,
"type": "open_clip"
},
"treatUrlsAndPointersAsImages": True
}
mq.create_index("marqo-ecommerce-b", settings_dict=settings)
Marqo Ecommerce L
import marqo
api_key = "your_api_key"
mq = marqo.Client("https://api.marqo.ai", api_key=api_key)
settings = {
"type": "unstructured",
"model": "Marqo/marqo-ecommerce-embeddings-L",
"modelProperties": {
"name": "hf-hub:Marqo/marqo-ecommerce-embeddings-L",
"dimensions": 1024,
"type": "open_clip"
},
"treatUrlsAndPointersAsImages": True
}
mq.create_index("marqo-ecommerce-l", settings_dict=settings)
To build an ecommerce search application using Marqo''s models, follow these steps.
- Set Up Your Marqo Index: Initialize the Marqo client, configure the API key, and define the index settings.
- Add Documents to the Index: Load and prepare product data, format it for Marqo, and add documents in batches.
- Build the User Interface: Create a user-friendly interface with Gradio for entering queries and viewing search results.
- Deploy on Hugging Face Spaces: Optionally deploy the application on Hugging Face Spaces for broader accessibility.
Marqo Cloud provides an end-to-end solution for fine-tuning and deploying embedding models. Using Marqtune, models can be fine-tuned to rank search results based on semantic relevance and custom ranking systems. This process involves.
- Setting Up: Install Marqtune and obtain the API key.
- Preparing the Dataset: Download and prepare a multimodal dataset.
- Fine-Tuning the Model: Fine-tune a pre-trained model using the prepared dataset.
- Deploying the Model: Deploy the fine-tuned model on Marqo Cloud and create an index for search and recommendations.