Prompts para comparar varias imágenes
Compare dos o más imágenes: diferencias, similitudes y cambios a lo largo del tiempo.
Prompts para comparar varias imágenes es una lección gratuita de AI Prompt Engineering en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de AI Prompt Engineering, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de AI Prompt Engineering incluye 4 lecciones en total.
Prompts con varias imágenes
Los modelos de visión pueden procesar varias imágenes en una sola llamada a la API. Esto permite realizar tareas de comparación muy útiles:
- Análisis del antes y el después (fotos de productos, renovaciones de habitaciones, imágenes médicas)
- Comparación de variantes de productos (opciones de color, comparaciones de tamaño)
- Comparación de calidad (selección de la mejor foto para una publicación)
- Detección de cambios (dos versiones de un documento, dos imágenes con marcas de tiempo)
Los prompts con varias imágenes requieren una estructura cuidadosa para que el modelo sepa cuál es cada imagen y qué relación debe analizar.
Envío de varias imágenes en una llamada
La API acepta varias imágenes como una lista de elementos de contenido. Etiquete cada imagen explícitamente:
import anthropic, base64
client = anthropic.Anthropic(api_key='YOUR_API_KEY')
def compare_images(image_path_1, image_path_2, comparison_prompt):
def encode(path):
with open(path, 'rb') as f:
return base64.standard_b64encode(f.read()).decode('utf-8')
r = client.messages.create(
model='claude-opus-4-5', max_tokens=600,
messages=[{'role': 'user', 'content': [
{'type': 'text', 'text': 'IMAGE 1:'},
{'type': 'image', 'source': {'type': 'base64', 'media_type': 'image/jpeg', 'data': encode(image_path_1)}},
{'type': 'text', 'text': 'IMAGE 2:'},
{'type': 'image', 'source': {'type': 'base64', 'media_type': 'image/jpeg', 'data': encode(image_path_2)}},
{'type': 'text', 'text': comparison_prompt}
]}]
)
return r.content[0].text
print('Multi-image comparison function defined.')Prompt para comparar dos productos
Comparación de dos imágenes de productos para una aplicación dirigida a consumidores:
product_comparison_prompt = '''
Compare the two product images above (Image 1 and Image 2).
Analyze each of the following dimensions:
1. SIMILARITIES: What features, design elements, or characteristics do both products share?
2. DIFFERENCES: What are the key visual differences? Focus on:
- Color and finish
- Size and proportions (estimate if possible)
- Design style (minimalist, ornate, modern, traditional)
- Materials (if discernible)
- Quality indicators
3. QUALITY ASSESSMENT: Which image appears to show a higher-quality product, and why?
Rate each product 1-10 for apparent quality.
4. USE CASE: Based on appearance alone, which product seems better suited for:
a) Professional/office use
b) Home/casual use
Return your response in this format exactly.
'''
print(product_comparison_prompt)Comparación del antes y el después
Los prompts de antes y después deben establecer explícitamente cuál es cada imagen y cuál es el contexto de la transformación:
before_after_prompt = '''
You are looking at two images: a BEFORE image (Image 1) and an AFTER image (Image 2).
Analyze the transformation:
1. WHAT CHANGED: List all visible changes from Before to After
2. WHAT STAYED THE SAME: List elements that are unchanged
3. QUALITY IMPROVEMENT: Rate the improvement on a scale of 1-10 (1=no improvement, 10=dramatic improvement)
4. REMAINING ISSUES: What could still be improved that the transformation did not address?
Context: This is a [CONTEXT_PLACEHOLDER] before/after comparison.
Return JSON:
{
"changes": ["string"],
"unchanged": ["string"],
"improvement_score": 1-10,
"remaining_issues": ["string"],
"summary": "one sentence summary"
}
'''
# Use contexts: room renovation, product refurbishment, skin care treatment, document cleanup
print('Before/after prompt with JSON output defined.')Selección de la mejor foto
Selección de la mejor foto entre varias opciones; resulta útil para flujos de trabajo de comercio electrónico, redes sociales y publicación:
import anthropic, base64, json
client = anthropic.Anthropic(api_key='YOUR_API_KEY')
def select_best_photo(image_paths, use_case='e-commerce product listing'):
def encode(path):
with open(path, 'rb') as f:
return base64.standard_b64encode(f.read()).decode('utf-8')
content = []
for i, path in enumerate(image_paths):
content.append({'type': 'text', 'text': f'IMAGE {i+1}:'})
content.append({'type': 'image', 'source': {'type': 'base64', 'media_type': 'image/jpeg', 'data': encode(path)}})
prompt = f'''
You have received {len(image_paths)} images. Select the best one for: {use_case}
Evaluate each on: lighting, composition, clarity, and suitability for the use case.
Return JSON: {{"best_image": 1-{len(image_paths)}, "score_breakdown": [{{"image_id": int, "score": 1-10, "reason": str}}]}}
'''
content.append({'type': 'text', 'text': prompt})
r = client.messages.create(model='claude-opus-4-5', max_tokens=300, messages=[{'role': 'user', 'content': content}])
return json.loads(r.content[0].text)
print('Photo selection function defined.')Prompt de detección de cambios
Detección de cambios específicos entre dos versiones de la misma imagen; resulta útil para el control de versiones de documentos, la revisión de diseños de interfaz y la supervisión:
change_detection_prompt = '''
Compare Image 1 (version A) with Image 2 (version B) of the same item.
Identify ALL changes, no matter how small.
For each change:
- Describe what changed
- Where in the image the change occurs (use quadrant: top-left, top-right, bottom-left, bottom-right, center)
- Classify the change: addition, removal, modification, movement
Return JSON:
{
"total_changes": int,
"changes": [
{
"description": str,
"location": str,
"type": "addition|removal|modification|movement"
}
],
"is_significant_change": true | false
}
If the images appear identical, return: {"total_changes": 0, "changes": [], "is_significant_change": false}
'''
print(change_detection_prompt)Comparación de diseños A/B
Comparación objetiva de dos variantes de diseño; resulta útil para tomar decisiones de UI/UX y definir la dirección creativa:
design_comparison_prompt = '''
You are an experienced UX designer reviewing two design variants (Image 1 = Design A, Image 2 = Design B).
Evaluate both designs on:
1. VISUAL HIERARCHY: Which design guides the eye more effectively? Why?
2. READABILITY: Which has better text legibility and information density?
3. BRAND CONSISTENCY: Which feels more professional and polished?
4. USABILITY: Which would be easier for a new user to navigate?
5. EMOTIONAL IMPACT: Which creates a stronger positive first impression?
For each dimension, declare a winner (A or B) and explain in one sentence.
Final verdict: Return JSON:
{
"winner": "A|B|tie",
"dimension_winners": {"visual_hierarchy": str, "readability": str, "brand": str, "usability": str, "emotional": str},
"winning_reasons": [str],
"recommendation": str
}
'''
print('Design comparison prompt defined.')Puntuación de similitud estructurada
Para procesos automatizados, genere puntuaciones numéricas de similitud entre imágenes:
similarity_prompt = '''
Compare these two images and provide a structured similarity analysis.
Return JSON:
{
"overall_similarity": 0.0-1.0,
"dimensions": {
"subject_match": 0.0-1.0,
"color_match": 0.0-1.0,
"composition_match": 0.0-1.0,
"style_match": 0.0-1.0
},
"key_differences": [str],
"are_same_item": true | false | "cannot_determine"
}
Scoring: 1.0 = identical, 0.0 = completely different.
'''
import json
def similarity_score(image_path_1, image_path_2):
result_text = compare_images(image_path_1, image_path_2, similarity_prompt)
return json.loads(result_text)
print('Similarity scoring function defined.')
print('Use case: duplicate detection, product matching, visual search.')Gestión de más de dos imágenes
Para tres o más imágenes, estructure el prompt de modo que gestione la complejidad adicional:
def multi_image_prompt(n_images):
image_labels = ', '.join(f'Image {i+1}' for i in range(n_images))
return f'''
You have received {n_images} images: {image_labels}.
Rank all {n_images} images from best to worst for use as a product hero image.
For each image, provide:
- Rank (1=best)
- Score 1-10
- Key strengths
- Key weaknesses
Return JSON:
{{
"ranking": [
{{"rank": int, "image_id": int, "score": int, "strengths": [str], "weaknesses": [str]}}
],
"recommended_image": int
}}
'''
# Works for 3, 4, or 5 images
print(multi_image_prompt(3)[:300])Errores habituales en los prompts con varias imágenes
Errores habituales al trabajar con varias imágenes y cómo evitarlos:
- Sin etiquetas para las imágenes: el modelo puede confundir cuál es cada imagen; etiquételas siempre con el texto IMAGE 1: antes de cada imagen
- Sin marco de comparación: pedir una comparación sin especificar las dimensiones produce una salida poco enfocada; indique exactamente qué debe compararse
- Falta de contexto: los prompts de antes y después necesitan el contexto de la transformación (la renovación de una habitación, no solo dos fotos de habitaciones)
- Demasiadas imágenes: la calidad disminuye con 6 o más imágenes; procéselas en lotes de 2 a 4
- Olvidar la salida JSON: una comparación en prosa es difícil de analizar; solicite siempre JSON estructurado para los procesos automatizados
Análisis temporal de una secuencia de imágenes
Cuando las imágenes representan una secuencia temporal (revisiones semanales, progreso de una construcción, seguimientos médicos), el prompt de comparación debe analizar explícitamente la evolución a lo largo del tiempo:
temporal_prompt = '''
You are analyzing a sequence of images taken over time.
Image 1 = earliest, Image 2 = most recent.
Analyze the progression:
1. PROGRESS: What improvements or changes occurred from earliest to most recent?
2. REGRESSION: Any deterioration or negative changes?
3. RATE: Is the rate of change faster, slower, or as expected?
4. TRAJECTORY: Based on the trend, what is the likely state in the next period?
Return JSON:
{
"progress": [str],
"regression": [str],
"change_rate": "faster|on_track|slower|stalled",
"trajectory": str,
"next_period_prediction": str
}
'''
print("Temporal sequence analysis prompt defined.")
print("Use cases: fitness progress, construction tracking, medical imaging follow-up.")Comprobación rápida
¿Cuál es el elemento estructural más importante que debe incluirse en un prompt de comparación de varias imágenes?
Comparación de varias imágenes — Conclusiones clave
Los prompts de comparación de varias imágenes permiten realizar análisis visuales muy útiles:
- Etiquete siempre las imágenes explícitamente con texto antes de cada imagen en el array de contenido
- Especifique las dimensiones de la comparación — jerarquía visual, calidad o similitud — en lugar de solicitar una comparación genérica
- Los prompts de antes y después necesitan el contexto de la transformación (qué tipo de cambio ocurrió)
- Use una salida JSON estructurada para los procesos automatizados: puntuaciones de similitud, listas ordenadas y detección de cambios
- La comparación de productos, la selección de fotos de calidad y la revisión de diseños A/B son casos de uso de gran valor
- Limite los lotes a un máximo de 2 a 4 imágenes; la calidad disminuye cuando se incluyen más
- Los prompts de detección de cambios deben clasificar cada cambio por tipo: adición, eliminación, modificación o movimiento
Preguntas frecuentes
¿La lección «Prompts para comparar varias imágenes» es gratis?
Sí — el texto completo de «Prompts para comparar varias imágenes» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de AI Prompt Engineering, actualiza a CoddyKit PRO. El curso de AI Prompt Engineering incluye 4 lecciones en total.
¿Qué aprenderé en «Prompts para comparar varias imágenes»?
Compare dos o más imágenes: diferencias, similitudes y cambios a lo largo del tiempo. Practicas AI Prompt Engineering con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar AI Prompt Engineering?
No se requiere experiencia previa. AI Prompt Engineering en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.
¿Cuánto tiempo toma la lección «Prompts para comparar varias imágenes»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de AI Prompt Engineering?
Sí. Cada lección de AI Prompt Engineering incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Prompts para describir y subtitular imágenes
- Respuesta a preguntas visuales
- Prompts para comparar varias imágenes
- Prompts para OCR y análisis de documentos