算法艺术创作
algorithmic-art
通过代码和可调参数创作生成艺术与交互式视觉效果。
ai-fashion-lookbook【设计与创意】Generate complete fashion lookbook layouts using each::sense AI. Create cohesive multi-look editorial spreads with consistent styling, themed collections, and professional compositions for seasonal campaigns, brand launches, and fashion portfolios. Use for: fashion collections, seasonal lookbooks, brand campaigns, editorial spreads, portfolio present…
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Generate complete fashion lookbook imagery and layouts using each::sense — the intelligent AI agent that automatically selects the best model for your request.
Requires an each::labs API key. Get one at eachlabs.ai.
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [
{
"role": "user",
"content": "A fashion lookbook photo: a model wearing a flowing maxi dress in terracotta, walking through a sunlit olive grove in Tuscany. Wind catching the fabric, golden hour, editorial photography, full body shot, warm color grading, Vogue style"
}
],
"stream": false
}'
from openai import OpenAI
client = OpenAI(
api_key="YOUR_EACHLABS_API_KEY",
base_url="https://eachsense-agent.core.eachlabs.run/v1"
)
response = client.chat.completions.create(
model="eachsense/beta",
messages=[{
"role": "user",
"content": "A fashion lookbook photo: a model wearing a flowing maxi dress in terracotta, walking through a sunlit olive grove in Tuscany. Wind catching the fabric, golden hour, editorial photography, full body shot, warm color grading, Vogue style"
}]
)
print(response.choices[0].message.content)
Provide a mood board or sample look for the collection aesthetic:
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [
{
"role": "user",
"content": [
{"type": "text", "text": "Create a lookbook photo matching this mood and color palette. A model in a structured wool coat and turtleneck, same visual tone and lighting style as the reference. Urban winter setting, overcast sky, editorial fashion photography."},
{"type": "image_url", "image_url": {"url": "https://example.com/mood-board.jpg"}}
]
}
],
"stream": false
}'
Images are sent inside messages using the OpenAI multimodal content format. Maximum 4 images per request.
Set "stream": true for real-time SSE responses, or "stream": false for complete result in a single response. Streaming is useful for showing progress in UIs; non-streaming is simpler for scripts and automation.
| Theme | Setting | Color Palette | Season |
|---|---|---|---|
| Mediterranean Summer | olive groves, white walls, coast | terracotta, white, sky blue | SS |
| Nordic Winter | snow, concrete, birch forests | ivory, charcoal, pale blue | AW |
| Urban Night | city lights, neon, rain-wet streets | black, silver, electric blue | AW |
| Desert Modernist | desert, mid-century architecture | sand, rust, sage | Resort |
| Parisian Spring | cafes, gardens, architecture | blush, cream, dusty blue | SS |
| Industrial Raw | warehouses, steel, exposed brick | grey, khaki, raw denim | Pre-Fall |
"A fashion lookbook photo:" + [model description] + [outfit details] + [setting/location] + [mood/atmosphere] + [photography style] + [camera details]
For a cohesive lookbook, keep these elements constant across all prompts:
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [
{
"role": "user",
"content": "A fashion lookbook hero shot: a tall female model with slicked-back dark hair wearing a sculptural white blazer with exaggerated shoulders over a matching wide-leg trouser. Standing on a rooftop overlooking a city at dusk. Dramatic side lighting, strong shadow, high fashion editorial, shot from low angle, desaturated teal and warm amber color grade"
}
],
"stream": false
}'
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [
{
"role": "user",
"content": "A fashion lookbook detail shot: close-up on hands adjusting the cuff of a cream silk blouse, delicate pearl button visible, soft natural light from a window, shallow depth of field, minimal warm-toned editorial photography, macro lens feel"
}
],
"stream": false
}'
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d '{
"messages": [
{
"role": "user",
"content": "A fashion lookbook lifestyle shot: a model in a camel cashmere overcoat and cream scarf, walking through a misty Parisian street with bare autumn trees. Candid mid-stride movement, film photography aesthetic with slight grain, warm desaturated tones, full body shot"
}
],
"stream": false
}'
COLLECTION_THEME="Autumn/Winter collection, Nordic minimalism, muted earth tones, overcast natural light, editorial fashion photography"
LOOKS=(
"Look 1: oversized charcoal wool coat over cream cable-knit sweater and dark brown leather trousers, standing in a birch forest"
"Look 2: camel turtleneck dress belted at the waist with cognac leather boots, seated on a concrete bench in an urban park"
"Look 3: layered outfit — grey knit vest over white poplin shirt with wide olive trousers, walking along a misty lakefront"
"Look 4: black tailored suit with an open-neck silk shirt in ivory, leaning against a steel railing at a modernist building"
"Look 5: chunky cream fisherman sweater with a long pleated skirt in heather grey, standing on weathered wooden pier"
)
for LOOK in "${LOOKS[@]}"; do
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-d "{
\"messages\": [{\"role\": \"user\", \"content\": \"A fashion lookbook photo: female model with short auburn hair, $LOOK. $COLLECTION_THEME, full body shot, Vogue Scandinavia style\"}],
\"stream\": false
}"
echo "=== $LOOK ==="
done