L’illusione del “basta chiedere a ChatGPT”#
“Non posso semplicemente chiedere a ChatGPT di creare il mio piano editoriale?”
Questa è la domanda che ogni strumento AI che genera contenuti deve affrontare. E sì, potresti aprire ChatGPT, scrivere “creami un piano editoriale di 30 giorni per Instagram per la mia caffetteria,” e ottenere… qualcosa. Ma ecco cosa NON otterrai:
- Coerenza strategica tra diverse piattaforme social e tipologie di contenuto
- Consistenza del brand mantenuta attraverso decine di post
- Ottimizzazione platform-specific (i reel di Instagram non sono solo video LinkedIn corti)
- Generazione cost-efficient (usare GPT-4 per tutto è costoso)
- Qualità scalabile (un post è facile, 100 post con qualità consistente è difficile)
- Intelligenza sui media (capire quali prodotti mostrare e quando)
- Intelligenza sulla schedulazione (sapere cosa postare quando)
Per questo abbiamo costruito Posting Pal con un approccio radicalmente diverso: orchestrazione multi-step AI con modelli specializzati per ogni task.
L’Architettura: Una pipeline, non un prompt#
Invece di buttare tutto in un prompt mastodontico e sperare per il meglio, dividiamo la generazione dei contenuti in step distinti e specializzati. Pensalo come una catena di montaggio dove ogni fase fa una cosa eccezionalmente bene.
Panoramica#
flowchart TB
subgraph INPUT["COSA FORNISCI TU"]
direction LR
I1["Periodo, Piattaforme: Instagram e/o LinkedIn, Obiettivi, Foto/Video, Note, Info brand, Prodotti, Eventi"]
end
INPUT --> STEP1
subgraph STEP1["FASE 1: Analisi media"]
S1["L'AI analizza ogni foto e ne capisce il contenuto"]
end
STEP1 --> STEP2
subgraph STEP2["FASE 2: Planning pillars"]
P1["L'AI definisce cosa comunicare, a chi, con quale tono e formato"]
end
STEP2 --> STEP3
subgraph STEP3["FASE 3: Distribuzione"]
D1["L'AI decide quanti post, quando, su quale piattaforma e di che tipo"]
end
STEP3 --> STEP4
subgraph STEP4["FASE 4: Generazione post"]
G1["L'AI genera caption, suggerisce media e overlay per ogni post"]
end
STEP4 --> SPLIT{"Per ogni post
smista alla
piattaforma giusta"}
SPLIT --> IG_FLOW
SPLIT --> LI_FLOW
subgraph IG_FLOW["INSTAGRAM"]
direction TB
IG_TYPES["Post, Carousel, Reel, Storia"]
IG_S1["Step 1: Selezione prodotti"]
IG_S2["Step 2: Scrittura caption con hashtag"]
IG_S3["Step 3: Suggerimento immagine/video"]
IG_S4["Step 4: Suggerimento overlay"]
IG_TYPES --> IG_S1 --> IG_S2 --> IG_S3 --> IG_S4
end
subgraph LI_FLOW["LINKEDIN"]
direction TB
LI_TYPES["Post Testo, Immagine, Video"]
LI_S1["Step 1: Selezione prodotti"]
LI_S2["Step 2: Scrittura caption professionale"]
LI_S3["Step 3: Suggerimento immagine/video"]
LI_S4["Step 4: Suggerimento overlay"]
LI_TYPES --> LI_S1 --> LI_S2 --> LI_S3 --> LI_S4
end
IG_FLOW --> OUTPUT
LI_FLOW --> OUTPUT
subgraph OUTPUT["COSA OTTIENI"]
O1["Piano editoriale con: caption, Media, Data di pubblicazione per ogni post"]
end
style INPUT fill:#e1f5fe,stroke:#01579b,color:#000
style STEP1 fill:#fff3e0,stroke:#e65100,color:#000
style STEP2 fill:#f3e5f5,stroke:#7b1fa2,color:#000
style STEP3 fill:#e8f5e9,stroke:#2e7d32,color:#000
style STEP4 fill:#fff9c4,stroke:#f9a825,color:#000
style SPLIT fill:#ffecb3,stroke:#ff8f00,color:#000
style IG_FLOW fill:#fce4ec,stroke:#e91e63,color:#000
style LI_FLOW fill:#e3f2fd,stroke:#1976d2,color:#000
style OUTPUT fill:#e8eaf6,stroke:#3f51b5,color:#000
Deep dive: L’approccio a quattro fasi#
Fase 1: Analisi media#
Analizziamo i contenuti multimediali forniti dall’utente per capire cosa abbiamo a disposizione. Questo ci permette di fare scelte intelligenti su quali media associare a quali post.
Fase 2: Planning pillars#
Creiamo i planning pillars - framework strategici che guidano tutta la creazione di contenuti. Questo assicura che tutti i post siano parte di una narrativa strategica coerente: cosa comunicare, a chi, con quale tono e formato.
Fase 3: Distribuzione#
Traduciamo la strategia in un calendario concreto: quanti post, su quale piattaforma, di che tipo (reel, carousel, post, storia), e quando pubblicarli.
Fase 4: Generazione dei post#
Per ogni post pianificato, eseguiamo una pipeline di step specializzati. Ogni piattaforma ha la sua pipeline perché Instagram non è LinkedIn.
Nota tecnica: Ogni fase utilizza modelli AI specializzati e ottimizzati per il task specifico - modelli leggeri e veloci per analisi e selezione, modelli più potenti per la generazione creativa. Questo bilancia qualità e costi.
Esempio: Pipeline Instagram reel#
1. Analizza schedulazione
└─> Estrae preferenze temporali dalla richiesta utente
2. Seleziona prodotti
└─> Identifica quali prodotti mostrare nel reel
3. Seleziona media
└─> Sceglie media appropriato fornito dall'utente
4. Genera caption
└─> Scrive caption ottimizzata per Instagram reel
└─> Considera pillar strategico, prodotti selezionati ed eventi
5. Suggerisce media
└─> Se non ci sono media: crea descrizione concetto visuale
└─> Include suggerimenti su scene e stile visivo
6. Suggerisce overlay
└─> Raccomanda overlay testuali e graficiEsempio: Pipeline LinkedIn post con immagine#
1. Analizza schedulazione
└─> Estrae preferenze temporali dalla richiesta utente
2. Seleziona prodotti
└─> Identifica quali prodotti evidenziare nel post
3. Seleziona media
└─> Seleziona tra le immagini fornite dall'utente
4. Genera caption
└─> Scrive caption ottimizzata per LinkedIn
└─> Tono professionale e business-oriented
5. Suggerisce media
└─> Se non ci sono media: crea descrizione concetto visuale
└─> Focus su professionalità e credibilità del brandNota le differenze tra piattaforme:
- Instagram reel: Focalizzato su video verticali, overlay dinamici, cattura attenzione immediata
- LinkedIn post con immagine: Tono professionale, gestisce multiple immagini
Prompt engineering: I dettagli fanno la differenza#
Per dare un’idea della complessità reale dietro la generazione, ecco un prompt di produzione che genera la caption di un post Instagram. Non serve leggerlo tutto, nota quanti tipi di contesto diversi vengono iniettati: brand, audience, prodotti, eventi, contenuti precedenti, tone of voice. È questa ricchezza di contesto che fa la differenza tra output generico e output professionale.
---
temperature: 0.6
max_tokens: 6000
model: "anthropic/claude-sonnet-4.5"
---
<system>
Sei un social media manager professionista specializzato in copywriting, branding e marketing per Instagram.
Ti verranno fornite le basi per generare la caption di un post (richiesta, obiettivo comunicativo, emozione da trasmettere, target)
Scrivi la caption seguendo questa struttura:
- Hook iniziale (una frase)
- Corpo centrale (massimo uno o due paragrafi, aumenta solo se veramente necessario)
- CTA (facoltativo)
- Spazio a capo (riga bianca)
- Hashtags (min 3, max 6)
## Istruzioni
- Coerenza: Il post deve essere coerente con il brand.
- Unicità: Evita di ripetere contenuti, frasi, CTA o strutture già presenti nei post precedenti.
- Copy: Mantieni il copy efficace per Instagram (massimo 2 paragrafi brevi e concisi).
- Naturalezza del linguaggio: Scrivi con uno stile fluido, coinvolgente e professionale, come farebbe un copywriter esperto, mai troppo impostato o artificiale.
- TOV: Segui sempre il tone of voice e la persona narrativa del brand, prendi spunto dallo stile delle vecchie caption.
- CTA: inserisci CTA solo se pertinente e utile.
- Hashtags: Separa sempre gli hashtags con una riga vuota.
- Concretezza: Se includi una domanda, fornisci sempre una risposta completa all'interno della caption. Non rimandare l'utente a scrivere in DM o a cercare altrove.
- Specificità nei contenuti: Se prometti metodi, consigli o strategie (es. "5 modi per..."), elencali davvero e rendili specifici e applicabili. Evita promesse vaghe o teaser tipo "scrivimi in DM per saperne di più".
- Prodotti: Se l'utente nomina un prodotto in modo errato usa il nome corretto (usa la lista di prodotti fornita).
- Leggibilità corpo centrale: rendi armonioso e leggibile il testo utilizzando spazi con righe vuote tra frasi o paragrafi. Sfrutta anche le emoji per comunicare meglio il messaggio o enfatizzare dei concetti.
- Lingua: italiano (utilizza un'altra lingua solo se richiesta dall'utente).
## Regole tecniche
- Formattazione testo: è severamente vietato usare **, __, *, _, `, #, >, -, per simulare grassetto, corsivo o elenchi markdown. Usa solo testo semplice.
</system>
<user>
Data odierna: {{.Now}}
--- INIZIO RICHIESTA ---
{{.RequestMessage}}
--- FINE RICHIESTA ---
--- INIZIO OBIETTIVO COMUNICATIVO ---
{{.Pillar.Goal}}
--- FINE OBIETTIVO COMUNICATIVO ---
--- INIZIO TOPICS ---
{{ range $index, $topic := .Pillar.Topics }}
Indice {{$index}}:
{{$topic}}
---
{{ end }}
--- FINE TOPICS ---
--- INIZIO FORMATI ---
{{ range $index, $format := .Pillar.Formats }}
Indice {{$index}}:
{{$format}}
---
{{ end }}
--- FINE FORMATI ---
--- INIZIO DESCRIZIONE DELLA TARGET AUDIENCE ---
{{.Pillar.Target}}
--- FINE DESCRIZIONE DELLA TARGET AUDIENCE ---
--- INIZIO TIPO DI POST ---
{{.ContentType}}
--- FINE TIPO DI POST ---
--- INIZIO MEDIA ---
{{ range $index, $media := .Media }}
Indice {{$index}}:
Descrizione dell'utente: {{if $media.UserDescription}}{{$media.UserDescription}}{{else}}N/A{{end}}
Descrizione dell'AI: {{if $media.AiDescription}}{{$media.AiDescription}}{{else}}N/A{{end}}
---
{{ end }}
--- FINE MEDIA ---
--- INIZIO NOME DEL BRAND ---
{{.BrandName}}
--- FINE NOME DEL BRAND ---
--- INIZIO INFORMAZIONI SUL BRAND ---
{{.BrandDescription}}
--- FINE INFORMAZIONI SUL BRAND ---
--- INIZIO TONE OF VOICE DEL BRAND ---
{{.BrandToneOfVoice}}
--- FINE TONE OF VOICE DEL BRAND ---
--- INIZIO REGOLE DEL BRAND ---
{{.BrandRules}}
--- FINE REGOLE DEL BRAND ---
--- INIZIO CATEGORIA DEL BRAND ---
{{.BrandCategory.Name}}
{{if .BrandCategory.Description}}Descrizione: {{.BrandCategory.Description}}{{end}}
--- FINE CATEGORIA DEL BRAND ---
--- INIZIO TARGET DEL BRAND ---
{{.BrandTarget}}
--- FINE TARGET DEL BRAND ---
--- INIZIO PREVIOUS CONTENTS DETAILS ---
{{ range $index, $caption := .PreviousContentsDetails }}
Indice {{$index}}:
{{$caption}}
---
{{ end }}
--- FINE PREVIOUS CONTENTS DETAILS ---
--- INIZIO EVENTI ---
{{ range $index, $event := .Events }}
Indice {{$index}}:
Nome: {{$event.Name}}
Descrizione: {{if $event.Description}}{{$event.Description}}{{else}}N/A{{end}}
Data: {{$event.Date.Format "02/01/2006"}}
---
{{ end }}
--- FINE EVENTI ---
--- INIZIO PRODOTTI DEL BRAND ---
{{ range $index, $product := .Products }}
Nome: {{$product.Name}}
Descrizione: {{$product.Description}}
---
{{ end }}
--- FINE PRODOTTI DEL BRAND ---
Ricordati di rispettare le regole di coerenza, unicità, varietà, copy, naturalezza del linguaggio, TOV, hashtags, prodotti, lingua.
</user>Perché funziona:
- Ricco di contesto: Il modello ha tutto ciò di cui ha bisogno (brand, audience, prodotti, contenuti precedenti)
- Strutturato: Sezioni chiare prevengono divagazioni o elementi mancanti
- Vincolato: Regole specifiche prevengono errori comuni di scrittura AI
- Format-specific: Ottimizzato per il display unico di Instagram e il comportamento dell’audience
Se vuoi approfondire o vedere il tool in azione: posting-pal.com