返回 Skill 列表
extension
分类: 内容与媒体无需 API Key

Product Photo Generation

使用each::sense API生成用于电子商务、市场营销和产品目录的专业产品摄影

person作者: jakexiaohubgithub

Product Photo Generation

Generate professional product photography with the each::sense API. Create e-commerce ready images, lifestyle shots, and studio-quality product visuals for any item.

Overview

The each::sense API enables generation of high-quality product photography suitable for:

  • E-commerce product shots - Clean, professional images for online stores
  • Lifestyle context images - Products shown in real-world settings
  • White background photography - Standard catalog and marketplace images
  • Studio lighting setups - Professional lighting for premium product presentation
  • Marketing visuals - Eye-catching images for ads and promotions

You can also provide your own product images via image_urls to place your actual products into professionally styled scenes.

Quick Start

curl -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Generate a professional product photo of a minimalist ceramic coffee mug on a white background with soft studio lighting"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'

Product Photo Styles

| Style | Description | Best For | |-------|-------------|----------| | White Background | Clean, isolated product on pure white | E-commerce, marketplaces, catalogs | | Lifestyle | Product in real-world context or environment | Social media, brand storytelling | | Flat Lay | Top-down view with arranged props | Fashion, food, accessories | | In-Context | Product being used or in its natural setting | Marketing campaigns, ads | | Hero Shot | Dramatic lighting and angles for impact | Homepage banners, featured products | | Detail Shot | Close-up focusing on texture and craftsmanship | Luxury goods, handmade items |

Use Case Examples

White Background Product Shot

Standard e-commerce product photography with clean white background.

curl -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Professional product photo of a stainless steel water bottle on pure white background, centered composition, soft box lighting from above and sides, no shadows, e-commerce style, 4K quality"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'

Lifestyle Context Shot

Product shown in an aspirational real-world setting.

curl -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Lifestyle product photography of premium wireless headphones on a modern wooden desk, morning light through window, MacBook and coffee cup in soft focus background, warm and inviting atmosphere"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'

Flat Lay Composition

Top-down arrangement with complementary props.

curl -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Flat lay product photography of a leather wallet, arranged with sunglasses, car keys, and a fountain pen on marble surface, overhead shot, even lighting, editorial style composition"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'

Hero Shot with Dramatic Lighting

High-impact product image for marketing materials.

curl -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Hero shot of a luxury perfume bottle, dramatic side lighting creating elegant shadows, dark moody background with subtle gradient, glass reflections and caustics, premium advertising quality"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'

Detail/Macro Shot

Close-up focusing on product texture and craftsmanship.

curl -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Macro detail shot of handcrafted leather bag stitching, extreme close-up showing texture and quality of leather grain, shallow depth of field, warm directional lighting highlighting craftsmanship"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'

In-Use/Action Shot

Product being actively used or demonstrated.

curl -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Action product shot of running shoes in motion, dynamic angle showing flexibility, slight motion blur on background, athletic track setting, energetic and sporty atmosphere"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'

Seasonal/Themed Shot

Product styled for specific season or holiday.

curl -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Holiday themed product photo of a scented candle surrounded by pine branches, dried oranges, and cinnamon sticks, warm cozy lighting, festive winter atmosphere, gift-ready presentation"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'

Size Comparison Shot

Product shown with reference objects for scale.

curl -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Product scale photo of a compact Bluetooth speaker next to a smartphone and coffee cup for size reference, clean white background, even lighting, showing portable dimensions clearly"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'

Packaging Shot

Product with its packaging for unboxing experience.

curl -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Product and packaging photo of premium skincare bottle emerging from elegant black box, tissue paper visible, unboxing moment, luxury presentation, soft lighting on neutral background"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'

Using Your Own Product Images

Provide actual product photos via image_urls to place your products into professionally styled scenes.

curl -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Place this product in a modern kitchen setting, morning light, marble countertop, lifestyle photography style"}],
    "model": "eachsense/beta",
    "stream": true,
    "image_urls": ["https://example.com/my-product.jpg"],
    "mode": "max"
  }'

Product with Custom Background

curl -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Put this product on a pure white background with professional studio lighting, remove existing background, e-commerce ready"}],
    "model": "eachsense/beta",
    "stream": true,
    "image_urls": ["https://example.com/raw-product-photo.jpg"],
    "mode": "max"
  }'

Best Practices for Product Photography

Lighting Guidelines

  • Soft box lighting - Even illumination for e-commerce shots
  • Rim lighting - Creates separation from background
  • Natural window light - Warm, authentic lifestyle feel
  • Dramatic side lighting - Adds depth and premium look
  • Diffused overhead - Minimizes harsh shadows

Composition Tips

  • Center important products for e-commerce
  • Use rule of thirds for lifestyle shots
  • Leave negative space for text overlay
  • Consider the platform aspect ratio requirements
  • Include context elements that tell a story

Background Selection

  • Pure white (#FFFFFF) for marketplace requirements
  • Gradient backgrounds for premium products
  • Contextual environments for lifestyle appeal
  • Complementary colors that enhance product
  • Textured surfaces for artisanal products

Prompt Tips

Effective prompts for product photography include:

Lighting descriptors:

  • "soft box lighting", "natural window light", "dramatic side lighting"
  • "rim light", "backlit", "diffused overhead lighting"
  • "golden hour warmth", "cool studio lighting"

Angle specifications:

  • "eye-level shot", "45-degree angle", "overhead flat lay"
  • "low angle hero shot", "three-quarter view", "straight-on"

Background details:

  • "pure white background", "gradient gray backdrop"
  • "marble surface", "wooden table", "concrete texture"

Style references:

  • "e-commerce style", "editorial quality", "magazine advertisement"
  • "catalog photography", "Instagram aesthetic", "premium brand look"

Props and context:

  • "minimalist props", "lifestyle elements", "seasonal decorations"
  • "complementary accessories", "natural elements"

Mode Selection

| Mode | Best For | Output Quality | |------|----------|----------------| | max | Hero shots, marketing materials, premium products | Highest quality, detailed rendering | | eco | Quick iterations, bulk catalog photos, testing concepts | Fast generation, good quality |

Use max mode for final marketing assets and hero images. Use eco mode for rapid prototyping and generating multiple variations quickly.

Multi-Turn Sessions for Product Series

Use session_id to maintain consistency across a product line or catalog series.

Start a product series session

curl -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Generate a product photo of a blue ceramic coffee mug on white background with soft natural lighting, minimalist style"}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "product-catalog-2024",
    "mode": "max"
  }'

Continue with consistent style

curl -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Now generate the matching red ceramic mug in the same style and lighting setup"}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "product-catalog-2024",
    "mode": "max"
  }'

Add variations

curl -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a lifestyle version showing both mugs on a breakfast table with croissants"}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "product-catalog-2024",
    "mode": "max"
  }'

Error Handling

| Error | Cause | Solution | |-------|-------|----------| | 401 Unauthorized | Invalid or missing API key | Verify X-API-Key header is set correctly | | 400 Bad Request | Malformed request body | Check JSON syntax and required fields | | 429 Rate Limited | Too many requests | Implement exponential backoff | | 500 Server Error | Service temporarily unavailable | Retry after a brief delay |

Retry with exponential backoff

for i in 1 2 3; do
  response=$(curl -s -w "%{http_code}" -X POST "https://eachsense-agent.core.eachlabs.run/v1/chat/completions" \
    -H "Content-Type: application/json" \
    -H "X-API-Key: $EACHLABS_API_KEY" \
    -H "Accept: text/event-stream" \
    -d '{
      "messages": [{"role": "user", "content": "Professional product photo of wireless earbuds on white background"}],
      "model": "eachsense/beta",
    "stream": true,
      "mode": "max"
    }')

  http_code="${response: -3}"
  if [ "$http_code" -eq 200 ]; then
    echo "${response%???}"
    break
  fi
  sleep $((2**i))
done

Related Skills