avihayamor/social-instagram-marketing
Social — Instagram Marketing Multimodal Dataset A synthetic, multimodal dataset for Social, an AI Instagram-marketing agent. Every row is a single Instagram post idea that pairs a marketing caption with a matching AI-generated image, conditioned on a business brief and brand preferences. Agent pattern: owner brief + brand preferences → 3 similar successful posts (retrieval / recommendation) + 1 freshly generated post (caption + image). Rows (total) 1,447… See the full description on the dataset page: https://huggingface.co/datasets/avihayamor/social-instagram-marketing.
Social — Instagram Marketing Multimodal Dataset
A synthetic, multimodal dataset for Social, an AI Instagram-marketing agent. Every row is a single Instagram post idea that pairs a marketing caption with a matching AI-generated image, conditioned on a business brief and brand preferences.
Agent pattern: owner brief + brand preferences → 3 similar successful posts (retrieval / recommendation) + 1 freshly generated post (caption + image).
Sample generated posts
<p> <img src="https://huggingface.co/datasets/avihayamor/social-instagram-marketing/resolve/main/images/img00000.png" width="32%" alt="Sample post 1"/> <img src="https://huggingface.co/datasets/avihayamor/social-instagram-marketing/resolve/main/images/img00001.png" width="32%" alt="Sample post 2"/> <img src="https://huggingface.co/datasets/avihayamor/social-instagram-marketing/resolve/main/images/img_00002.png" width="32%" alt="Sample post 3"/> </p>
Quick start
from datasets import load_dataset
ds = load_dataset("avihayamor/social-instagram-marketing", split="train")
print(ds[0]["caption"], ds[0]["hashtags"])Images live in the images/ folder and are referenced by each row's image_path.
How it was built
The dataset is generated end-to-end — nothing is scraped or hand-written.
- Captions — produced with
Qwen/Qwen2.5-7B-Instructthrough the Hugging Face serverless Inference API, in small JSON batches (temperature 0.9), then parsed, validated, and de-duplicated. - Images — produced with
black-forest-labs/FLUX.1-schnell(text-to-image) from each row'simage_prompt. - Diversity — a seed grid of 30 business types × 8 brand voices × 8 palettes × 20 occasions × 2 formats is randomly sampled so combinations stay varied.
- Robustness — generation is fully resumable via on-disk checkpoints, with retry/backoff on API errors.
Schema
Dataset statistics (EDA)
- Rows total: 1,447
- Rows with a real image (multimodal pairs): 1,000
- Diversity: 30 business types · 8 brand voices · 8 palettes · 20 occasions
- Format split: feed post 726 · story 721
- Caption length: mean 9.8 words (min 3, max 25)
- Hashtags per post: mean 4.0
Visual EDA
<p> <img src="https://huggingface.co/datasets/avihayamor/social-instagram-marketing/resolve/main/eda/edabusinesstype.png" width="48%" alt="Posts by business type"/> <img src="https://huggingface.co/datasets/avihayamor/social-instagram-marketing/resolve/main/eda/edaformat.png" width="48%" alt="Posts by format"/> </p> <p> <img src="https://huggingface.co/datasets/avihayamor/social-instagram-marketing/resolve/main/eda/edacaptionlength.png" width="48%" alt="Caption length in words"/> <img src="https://huggingface.co/datasets/avihayamor/social-instagram-marketing/resolve/main/eda/edahashtags.png" width="48%" alt="Hashtags per post"/> </p>
EDA findings & model-failure flags
Model failures are flagged transparently rather than silently cleaned:
- Exact duplicate captions: 0
- Near-duplicate captions (normalized): 0
- Empty / very short captions (< 4 words): 5
- Very long captions (> 60 words): 0
- Posts with no hashtags: 0
- Captions that leaked a `#` into the caption body (the model was asked to keep hashtags out of the caption text): 322 — the main observed instruction-following slip, logged here for transparency.
Overall the generator followed instructions well: JSON parse failures were retried, duplicates were dropped during generation, and missing required fields were ~0.
Files
social_dataset.csv/social_dataset.parquet— the tabular datasetimages/— 1,000 generated PNG images referenced byimage_patheda/— exploratory data analysis charts
Intended use & limitations
Built as a course project. The content is fully synthetic marketing material: no real brands, no personal data, and no harmful or adult domains. Captions and images are AI-generated and may contain factual or stylistic mistakes, so they should not be treated as ground-truth marketing copy.
