MAISON CODE .
/ AI · Search · Vectors · Innovation

Incrustaciones de vectores: creación de un motor de búsqueda visual

Cómo implementar la funcionalidad 'Buscar por imagen' usando OpenAI CLIP y una base de datos vectorial (Pinecone) en Shopify.

AB
Alex B.
Incrustaciones de vectores: creación de un motor de búsqueda visual

La búsqueda de texto es defectuosa. Si escribo “Vestido rojo fluido de verano”, estoy adivinando las palabras clave que utilizó el comerciante. La búsqueda visual permite a un usuario subir una foto (de Instagram o Pinterest) y decir: “Encuéntrame algo como esto”.

La Tecnología: Vectores

Las computadoras no ven imágenes. Ven números. Usamos un Modelo de incrustación multimodal (como OpenAI CLIP) para convertir imágenes en una lista de números (Vectores). Sorprendentemente, imágenes similares tienen vectores matemáticamente similares.

gráfico TD
    UserImage[Imagen cargada por el usuario] -->|Llamada API| Incrustador[OpenAI CLIP]
    Incrustador -->|Devoluciones| VectorA[Vector: [0.1, 0.9, 0.3...]]
    
    Catálogo[Catálogo de Shopify] -->|Pre-Proceso| Piña[Piña Vector DB]
    
    VectorA -->|Consultar vecino más cercano| piña
    Piña -->|Devoluciones Top 5| Coincidencias[SKU coincidentes]
    Coincidencias -->|Renderizar| Cuadrícula[Cuadrícula de productos]

Guía de implementación

Ejecutamos un script para procesar todas las imágenes del producto.

importar {incrustar} desde 'openai';
importar {piña} desde './db';

función asíncrona indexProduct(producto) {
  incrustación constante = espera incrustar (producto.imagen.url);
  aguarde piña.upsert({
    identificación: producto.id,
    vector: incrustación,
    metadatos: {identificador: producto.identificador}
  });
}

Paso 2: el componente de la interfaz de usuario

Agregamos un ícono de “Cámara” a la barra de búsqueda. Cuando se selecciona un archivo:

  1. Subir al almacenamiento temporal.
  2. Pase la URL a nuestra Ruta API.
  3. Realice la Búsqueda de Vectores.
  4. Redirigir a /search?visual_id=xyz.

Caso de uso: descubrimiento de réplicas

Un usuario ve un bolso de diseñador de 5.000 dólares. No pueden permitírselo. Suben la foto a tu tienda (que vende accesorios asequibles). Su motor encuentra la coincidencia más cercana en su catálogo ($200). Conversión instantánea.

Rendimiento

La búsqueda de vectores es increíblemente rápida (O (log n)). Podemos buscar 100.000 SKU en <50 ms. Se siente mágico para el usuario.


¿Listo para innovar?

La búsqueda de texto estándar es aburrida. La búsqueda visual es atractiva. Contrate a nuestros arquitectos.