HiAPI
Blog

Guida all'uso

Guida per sviluppatori alla generazione di immagini di prodotto e-commerce con grok-imagine/text-to-image su HiAPI

Template di prompt, formati ultra-wide e esempi di richieste API pronti per materiali visivi a livello di catalogo

Nov 3, 2026
Flat brass and deep-green ribbons woven into a technical lattice on a near-black green field — cover art for the HiAPI developer guide.

Perché usare un modello text-to-image in una pipeline di immagini e-commerce

Ogni catalogo prodotti ha molti slot immagine che la fotografia in studio fatica a coprire. Un prodotto disponibile in quaranta varianti di colore, un kit bundle che cambia ogni trimestre, un banner tematizzato che serve in cinque versioni regionali prima di pranzo: prima ancora di essere un problema creativo, sono un problema di pianificazione. Il text-to-image non sostituisce il fotografo per le immagini principali di punta. Ciò che può gestire è il grande volume di lavoro ripetitivo che circonda queste immagini principali.

È utile chiarire bene la divisione dei compiti. grok-imagine/text-to-image è adatto a compiti in cui il soggetto può essere descritto a parole e la composizione può essere ripetuta:

  • Espansione delle varianti. Una composizione di base da cui derivare più colori, materiali o stati di confezionamento.
  • Segnaposto e bozze. Output abbastanza decenti a livello di catalogo perché l'impaginazione e la revisione del merchandising procedano prima che arrivino i materiali definitivi.
  • Esplorazione concettuale. Provare rapidamente sfondi, atmosfere e inquadrature prima di prenotare uno shooting a pagamento.
  • Varianti regionali e di formato. Lo stesso prodotto ricomposto come banner hero largo o come tile quadrata della griglia.

Non è adatto a contesti con requisiti contrattuali di fedeltà. Affermazioni pubblicitarie regolamentate, tipografia precisa delle etichette, finiture superficiali esatte e qualsiasi contenuto che richieda una rappresentazione legalmente verificabile del prodotto fisico vanno affidati alla fotografia o a pipeline di rendering controllate. I modelli text-to-image sono generativi: approssimano un logo, non lo riproducono con precisione.

La divisione pragmatica è trattare il lavoro come una coda. Il lavoro costoso e ad alta fedeltà va alle persone. Il lavoro ripetibile, descrivibile e ad alto volume va al modello, con un passaggio di revisione umana tra generazione e pubblicazione. Una volta accettata questa divisione, le domande ingegneristiche diventano ordinarie: come mantenere coerenti gli output, come pianificare i formati che il negozio usa davvero e come eseguire i batch senza stare a guardare?

Il resto di questa guida risponde a queste domande nel contesto della piattaforma HiAPI, per concludere con una struttura di richiesta che puoi adattare al tuo catalogo.

La metafora dell'intreccio: i prompt convergono in una griglia e gli output del modello si diramano verso slot di catalogo equidistanti.

Cosa offre grok-imagine/text-to-image su HiAPI

Su HiAPI, grok-imagine/text-to-image è un identificatore di modello accessibile tramite un'unica interfaccia API unificata. Invii un prompt testuale che descrive l'immagine desiderata e ricevi una risorsa immagine generata. A livello concettuale, questo è l'intero contratto: vale la pena dirlo esplicitamente, perché molti problemi di integrazione nascono da troppe assunzioni.

Per la pianificazione, alcune precisazioni di ambito sono importanti:

È guidato dal prompt, non da immagini di riferimento. La composizione che ottieni deriva dal testo fornito. Se uno slot richiede la riproduzione esatta di un oggetto fisico, questo modello non è lo strumento giusto; usalo dove è accettabile una rappresentazione fedele alla descrizione.

Tutto passa attraverso la stessa interfaccia. Autenticazione, struttura delle richieste e gestione delle risposte seguono le convenzioni della piattaforma HiAPI, non un dialetto specifico del modello. Ciò significa che il codice scritto per questo modello ha la stessa struttura di qualsiasi altro modello immagine della piattaforma, mantenendo snello il tuo livello client.

Il prompt è la tua principale leva di controllo. Poiché non usi campi strutturati o immagini di riferimento per guidare il modello, la specifica del prompt si assume gran parte della responsabilità. La sezione successiva la trasforma in un template.

La fatturazione segue il modello di metering della piattaforma; le tariffe correnti sono nel pannello prezzi. Pianifica la capacità in base al numero di immagini generate per esecuzione di catalogo, poi controlla i numeri in tempo reale nel pannello, senza codificare valori fissi nei documenti di pianificazione.

Non presumere l'esistenza di parametri regolabili non documentati. Se un parametro non è nello schema di richiesta su cui ti basi, non costruire pipeline che ne dipendono. Considera la superficie di richiesta documentata come contratto e tieni il comportamento specifico del modello fuori dalla logica di business.

Un modello mentale utile: HiAPI fornisce un ingresso stabile e unificato, grok-imagine/text-to-image è ciò che sta dietro la porta. Mantieni la tua integrazione puntata su questo ingresso.

Progettare template di prompt per immagini di prodotto coerenti

La coerenza dell'intero catalogo non è una proprietà del modello, ma dell'architettura dei prompt. Se ogni prompt è scritto a caso, ogni immagine sembra uno shooting diverso. La soluzione è scomporre il prompt in moduli fissi, variando solo il modulo che descrive il prodotto.

Template a quattro moduli

[SUBJECT]      cos'è il prodotto e le sue proprietà chiave di materiale/colore
[STAGING]      come è posizionato nell'inquadratura: angolo, ritaglio, superficie d'appoggio, proporzioni
[LIGHTING]     posizione della luce, morbidezza, temperatura colore, resa delle ombre
[BACKGROUND]   superficie, profondità di campo, ambiente, spazio negativo
[CONSTRAINTS]  ciò che non deve apparire: testo, filigrane, oggetti di scena extra, persone

Nello stesso batch di catalogo, mantieni STAGING, LIGHTING, BACKGROUND e CONSTRAINTS identici byte per byte. Solo SUBJECT deve variare per prodotto. Solo questa disciplina basta a rendere la griglia sostanzialmente coerente.

Un template pratico per l'e-commerce

Studio product photograph of {product_name}, {material}, {color}, {finish}.
Centered three-quarter view, product fills roughly 60% of frame height,
resting on a matte neutral surface. Soft large-source key light from
upper left, gentle fill from right, subtle contact shadow directly
beneath. Seamless light-grey background with clean negative space
above the product. No text, no logos, no watermarks, no props, no people.

Compila {product_name}, {material}, {color} e {finish} dal tuo database prodotti. Il resto sono costanti del codebase, meglio se in un file template versionato, con la stringa template_version scritta nei log di generazione: così, quando lo stile visivo deriva, puoi capire se è cambiato il template o il modello.

Regole pratiche

  • L'ordine conta meno della stabilità. Scegli un ordine dei moduli e non cambiarlo mai all'interno dello stesso catalogo.
  • Descrivi i materiali, non i brand. "Alluminio spazzolato" è guidabile; un marchio no.
  • Metti il soggetto per primo. Posiziona il sintagma nominale specifico all'inizio, così ancora la composizione.
  • Scrivi esplicitamente le negazioni. Per il lavoro sui prodotti, il modulo CONSTRAINTS non è opzionale: testo estraneo e oggetti di scena sono le cause più comuni di immagini inutilizzabili.
  • Genera prima tre prodotti di test, poi trecento. I difetti del template si amplificano linearmente con la dimensione del catalogo.

Tratta i prompt come codice: versiona, revisiona le modifiche e associa sempre le risorse generate alla versione del template che le ha prodotte.

Tre moduli costruttivi fissi, soggetto, illuminazione e sfondo, intrecciati in un unico prompt completo e ripetuti tra le varianti.

Pianificare i formati ultra-wide per il negozio

Il formato è una decisione di design spesso rimandata alla fine. La sequenza comune è: generare una bella immagine quadrata, scoprire poi che il banner hero della homepage richiede un'inquadratura molto più larga, ritagliare e perdere il terzo superiore del prodotto. Pianifica il formato prima.

Inventaria gli slot prima di generare

Esamina il negozio ed elenca ogni diversa forma di riquadro che ospiterà immagini di prodotto: tile della griglia, galleria della pagina di dettaglio, banner di categoria, hero della homepage, header delle email e qualsiasi posizionamento a pagamento. Ogni slot ha una forma, e le forme si raggruppano. Raggruppale e genera per gruppo, non per singola immagine.

Cosa cambia con i formati ultra-wide

Una tela larga non è un quadrato allargato. Man mano che la larghezza aumenta rispetto all'altezza:

  • L'area sicura orizzontale cresce, quella verticale si riduce. Qualsiasi contenuto vicino al bordo superiore o inferiore può essere tagliato dai ritagli responsive su viewport piccoli.
  • Le proporzioni del soggetto richiedono una decisione. Un prodotto centrato di dimensione ragionevole in un quadrato diventa un'isola su una tela ultra-wide. O lo ingrandisci deliberatamente, o accetti una composizione in cui il prodotto occupa un lato.
  • Lo spazio negativo diventa cruciale. I riquadri larghi spesso ospitano testo sovrapposto, badge di prezzo o CTA. Riserva esplicitamente quell'area nel prompt, ad esempio "il terzo destro è mantenuto come sfondo pulito e libero per il testo del titolo".
  • Le sfumature di luce si allungano. Una vignettatura morbida che funziona su un quadrato può sembrare una macchia su una tela larga. Mantieni la descrizione dell'illuminazione semplice e direzionale.

Schemi di composizione che resistono ai ritagli larghi

  1. Prodotto a sinistra, spazio negativo a destra. Lo schema più sicuro per i banner hero.
  2. Prodotto centrato, margini ampi su entrambi i lati. Adatto quando lo stesso materiale deve essere ritagliato anche in quadrato.
  3. Prodotto a destra, ambiente a sinistra. Adatto ai banner lifestyle in cui il lato sinistro è occupato da superficie o texture.

Genera in base al target più largo che ti serve

Se un materiale deve servire sia un hero largo sia una tile quadrata, componi e genera una versione con inquadratura larga e pianifica il ritaglio quadrato nel layout, oppure genera due versioni dallo stesso template con moduli di staging diversi. Ciò che devi evitare è comporre per un formato stretto e sperare che vada bene anche la versione larga.

Memorizza le proporzioni previste nei metadati del template insieme all'ID prodotto, così ogni risorsa nello storage sa per quale slot è stata costruita.

Come cambiano il posizionamento del soggetto e le aree sicure tra riquadri stretti e ultra-wide.

Costruire una richiesta HiAPI funzionante

Lo scheletro dell'integrazione è volutamente noioso, ed è proprio ciò che vuoi. Componi il prompt, invialo all'endpoint HiAPI con le tue credenziali e l'identificatore del modello, gestisci la risorsa restituita.

Sintesi del flusso

import os, requests

HIAPI_BASE = "https://api.hiapi.ai"  # confirm exact base in platform docs
HEADERS = {
    "Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}",
    "Content-Type": "application/json",
}

def build_prompt(product, template):
    return template.format(
        product_name=product["name"],
        material=product["material"],
        color=product["color"],
        finish=product["finish"],
    )

def generate_image(prompt, aspect_ratio="1:1"):
    payload = {
        "model": "grok-imagine/text-to-image",
        "prompt": prompt,
        "aspect_ratio": aspect_ratio,
    }
    resp = requests.post(
        f"{HIAPI_BASE}/v1/images/generations",
        headers=HEADERS, json=payload, timeout=120,
    )
    resp.raise_for_status()
    return resp.json()

Prima di andare in produzione, considera il percorso dell'endpoint e i nomi esatti dei parametri come elementi da verificare con la documentazione attuale della piattaforma: questo codice mostra la struttura, non uno schema congelato. Le proprietà importanti sono:

  • L'identificatore del modello è dato, non codice. Mantieni "grok-imagine/text-to-image" in configurazione, così cambiare modello significa solo cambiare configurazione.
  • Il prompt è assemblato, mai digitato a mano. Una funzione build_prompt, una sola fonte per il template.
  • Il formato è un parametro della chiamata. Fa parte della richiesta e va scelto in base all'inventario degli slot, non applicato come ritaglio in post-processing.
  • Le chiavi provengono da variabili d'ambiente. Nessuna credenziale nel repository.

Registra le informazioni che ti serviranno dopo

Per ogni richiesta, salva in modo persistente: ID richiesta, ID prodotto, versione template, formato, stringa completa del prompt, identificatore del modello, timestamp e riferimento alla risorsa restituita. Quando un operatore merchandising chiede perché una tile sembra sbagliata, questo log dà la risposta in pochi secondi invece che in un pomeriggio.

Mantieni snello il client

Avvolgi la chiamata in una piccola funzione che restituisce un riferimento alla risorsa o un errore tipizzato. I tuoi task di catalogo non devono sapere nulla di HTTP, e il tuo livello HTTP non deve sapere nulla di prodotti. È questa separazione che rende breve la logica di retry della prossima sezione.

Gestire output, retry e job batch

La generazione è la parte facile. Tutto ciò che rende davvero affidabile una pipeline di immagini avviene dopo il ritorno della risposta.

Valida prima di pubblicare

Ogni risorsa restituita deve superare controlli automatici prima di entrare in uno slot di catalogo:

  • Esiste ed è decodificabile? Un file scaricabile ma non analizzabile è un guasto silenzioso in attesa del giorno di lancio.
  • La forma corrisponde allo slot? Controlla le dimensioni rispetto al formato richiesto, non rispetto a quello che speravi.
  • I vincoli sono rispettati? Se il template vieta testo nell'immagine, contrassegna le risorse in cui viene rilevato testo: un classificatore leggero, o anche un campione controllato manualmente nei batch piccoli, basta.
  • Ha superato la revisione umana? Per qualsiasi contenuto rivolto al cliente, prevedi un passaggio di revisione. Lo stato di approvazione è un campo del record della risorsa, non un messaggio Slack.

Riprova in modo differenziato

Non tutti i fallimenti sono uguali, e trattarli allo stesso modo spreca capacità.

  • Errori di trasporto e rate limit: riprova con backoff esponenziale e jitter, entro un numero limitato di tentativi.
  • Guasti del server: riprova alcune volte con backoff, poi contrassegna l'elemento come fallito e prosegui.
  • Errori di schema o validazione: non riprovare mai, fallirebbero allo stesso modo. Registra e invia un avviso.
  • Rifiuti di qualità: non riprovare ciecamente. Rieseguire lo stesso prompt tende a dare risultati simili. Modifica una sola variabile, di solito la descrizione del soggetto, e registra che quel retry ha usato un prompt modificato.

Usa (product_id, template_version, aspect_ratio) come chiave del job, così ogni tentativo è idempotente. Un worker che va in crash deve poter riprendere senza spendere due volte.

Esegui i batch come code, non come cicli

Per qualsiasi lavoro oltre poche immagini, organizza il lavoro come coda:

  1. Enumerazione degli output target dal database prodotti e dall'inventario degli slot, generando record di job con stato pending.
  2. Elaborazione dei job con concorrenza limitata: parti in modo prudente e aumenta solo dopo aver osservato una latenza stabile.
  3. Persistenza di ogni risultato nell'object storage sotto una chiave deterministica, con un record della risorsa che include i metadati di generazione.
  4. Report del batch: tentativi, successi, fallimenti, rifiuti in revisione e retry totali. Pubblica questo riepilogo, non solo il conteggio dei successi.

Aggiungi una modalità dry-run che compone e registra ogni prompt senza chiamare l'API. È il modo più economico per intercettare difetti del template su migliaia di SKU.

Checklist prima di pubblicare in produzione le immagini di prodotto

Esegui questa checklist prima che il primo batch di catalogo vada online.

Qualità del prompt

  • Il template è suddiviso in moduli soggetto, posizionamento, illuminazione, sfondo e vincoli.
  • In un'esecuzione di catalogo, varia solo il modulo soggetto.
  • I vincoli negativi sono espliciti e includono testo, filigrane e oggetti di scena estranei.
  • Il template è sotto controllo di versione e la stringa di versione è scritta in ogni record della risorsa.
  • Hai fatto controlli a campione con almeno tre prodotti che rappresentano casi estremi di materiale e colore.

Copertura dei formati

  • Ogni slot del negozio ha un formato documentato e uno schema di posizionamento corrispondente.
  • I materiali ultra-wide sono composti per un riquadro largo, con spazio negativo riservato al testo sovrapposto.
  • I ritagli responsive sono stati esaminati sulla viewport più piccola che supporti.

Affidabilità della pipeline

  • Le chiavi API sono caricate dall'ambiente e mai committate nel repository.
  • Identificatore del modello ed endpoint sono in configurazione e verificati con la documentazione attuale della piattaforma.
  • La strategia di retry distingue guasti di trasporto, server, validazione e qualità.
  • I job sono idempotenti su prodotto, versione template e formato.
  • Ogni richiesta registra prompt, formato, modello, timestamp e riferimento alla risorsa restituita.

Revisione e operazioni

  • È presente un controllo di approvazione umana per i materiali rivolti al cliente.
  • Il report di riepilogo del batch riporta fallimenti e rifiuti in revisione, non solo i successi.
  • La modalità dry-run è disponibile ed è stata effettivamente usata prima dei batch grandi.
  • Le tariffe correnti sono state confermate nel pannello prezzi della piattaforma e la capacità è pianificata in base al numero di immagini.

Quando ogni voce è spuntata e il batch di esempio sembra un unico shooting coordinato invece di un gruppo di estranei, sei pronto a pubblicare.

Inizia a creare con artefatti IA persistenti

Ottieni la tua chiave API e chiama modelli di immagini, video e audio tramite un'unica API basata sui task.

Leggi la documentazione API