Ecommerce ops · Production

Canva builds a CLIP-inspired multilingual deep learning model to suggest keywords for template creators

The problem

Newer creators on Canva's marketplace struggled to identify appropriate keywords for their templates, and all keywords needed to work across multiple languages to serve a global user base, while standard classification models could not support an open-ended keyword vocabulary.

First attempt

Using binary cross entropy loss (as in standard CLIP training) led to very poor results, because far more negative labels than positive samples caused the loss to focus on pushing vectors apart rather than pulling relevant keywords closer.

Workflow diagram · grounded in source
1
Creator template text input
trigger
“the input being the text content of a template while the outputs being the actual keywords”
2
Template content embedding
ai_action
“Title and text content embedding model: this is also a multi-lingual sentence transformer that converts the title and text content in a template into an embedding”
3
Keyword embedding
ai_action
“Keyword embedding model: this is a multi-lingual sentence transformer that converts a suggested keyword into an embedding”
4
Similarity matrix computation
ai_action
“The red cells are multiplied together to create a similarity matrix. Each entry in the matrix is a value between 0 and 1”
5
Keyword suggestions served
output
“During inference, we take the 1000 most popular keywords per language and serve the 10 highest probability keywords. We further threshold these keywords to ensure only the highest quality keywords are suggested.”
Reported outcome

The model is currently serving thousands of Canva creators, providing keyword suggestions across multiple languages with support for an effectively unlimited keyword vocabulary.

Reported metrics
Creators currently servedthousands of creators
Reported stack
multilingual sentence transformersCLIPPyTorch
Source
https://www.canva.dev/blog/engineering/deep-learning-for-infinite-multi-lingual-keywords/
Read source ↗

Frequently asked questions

What did this team achieve with this AI workflow?

The model is currently serving thousands of Canva creators, providing keyword suggestions across multiple languages with support for an effectively unlimited keyword vocabulary.

What tools did this team use?

multilingual sentence transformers, CLIP, PyTorch.

What results were reported?

Creators currently served: thousands of creators (source-reported, not independently verified).

What failed first in this deployment?

Using binary cross entropy loss (as in standard CLIP training) led to very poor results, because far more negative labels than positive samples caused the loss to focus on pushing vectors apart rather than pulling rel…

How is this ecommerce ops AI workflow structured?

Creator template text input → Template content embedding → Keyword embedding → Similarity matrix computation → Keyword suggestions served.