Ideogram
Ideogram V3 Character
ideogram-v3-character/edit
Utilizza l'immagine di riferimento per bloccare lo stesso personaggio, mantenendo coerenti il volto e l'abbigliamento attraverso cambi di scena, posa e illuminazione, e proseguendo con il vantaggio di Ideogram nella composizione tipografica all'interno dell'immagine
Prova ideogram-v3-character/edit
Input
Creazioni
Vedi tutte le creazioniOutput
imagePrezzi
ideogram-v3-character/edit per image
| Specifiche | Prezzo unitario |
|---|---|
| TURBO | $0.090 |
| BALANCED | $0.130 |
| QUALITY | $0.180 |
Panoramica e posizionamento
ideogram-v3-character/edit è un modello di immagini pensato per la modifica con coerenza del personaggio: caricando un'immagine sorgente e una maschera, indicando l'area da ridisegnare e fornendo esattamente un'immagine di riferimento del personaggio come ancoraggio visivo, è possibile riscrivere porzioni dell'immagine preservando volto, acconciatura, abbigliamento e corporatura. È adatto a sviluppatori che devono riutilizzare lo stesso personaggio, mascotte o avatar in serie di materiali, in particolare in scenari di produzione in batch in cui si desidera un'identità visiva coerente del personaggio mantenendo variabili scene e testi.
Punti chiave
- Ridisegno locale ancorato al personaggio: l'immagine sorgente e la maschera definiscono l'area di modifica, mentre l'immagine di riferimento blocca l'identità del personaggio, cambiando la scena senza cambiare il volto.
- Scena variabile, aspetto invariato: tramite il prompt si sostituiscono posa, illuminazione e sfondo, mentre i tratti distintivi del personaggio restano vincolati all'immagine di riferimento.
- Produzione in batch riproducibile: supporta seed casuali fissi e, insieme ai livelli di stile e velocità di rendering, facilita la riproduzione stabile di serie di materiali.
Descrizione delle capacità
Modifica mirata tramite maschera: passando un'immagine sorgente e una maschera con lo stesso rapporto d'aspetto, viene ridisegnata solo l'area coperta dalla maschera, mentre il resto rimane invariato; è ideale per sostituire sfondi o elementi locali.
Blocco del personaggio con una singola immagine di riferimento: è ammessa una sola immagine di riferimento (JPEG, PNG o WebP, massimo 10MB), in base alla quale vengono vincolati i tratti somatici del personaggio nel risultato del ridisegno.
Scena controllabile tramite prompt: un prompt fino a 5000 caratteri descrive la scena desiderata ed è possibile attivare l'espansione del prompt per completare automaticamente i dettagli della descrizione.
Livelli di stile e velocità: lo stile può essere AUTO, REALISTIC o FICTION; la velocità di rendering si suddivide in TURBO, BALANCED e QUALITY, con livelli che differenziano il grado di dettaglio.
Casi d'uso
- Iterazione in batch di serie di materiali del personaggio: team operativi e di design usano la stessa immagine di riferimento con maschere diverse per produrre in batch illustrazioni dello stesso personaggio in più scene, da impiegare nei social e nelle pagine di eventi.
- Cambio di scenario locale su poster e immagini promozionali: mantenendo il soggetto del personaggio, si sostituiscono sfondo e illuminazione per ottenere immagini promozionali direttamente utilizzabili e materiali con impaginazione testuale.
- Coerenza del personaggio in fumetti e storyboard: gli autori ridisegnano pose e scene degli storyboard partendo da un'immagine di riferimento di definizione, producendo sequenze visive coerenti per lo storyboard.
Limiti e consigli per la scelta
La coerenza del personaggio non è assoluta: in scene complesse o con pose ed espressioni estreme possono comunque comparire deviazioni visibili; l'immagine di riferimento deve avere volto nitido, buona illuminazione e poche occlusioni, altrimenti la resa peggiora. La maschera e l'immagine sorgente devono mantenere lo stesso rapporto d'aspetto e l'immagine di riferimento è accettata solo in un'unica copia. Se il compito è la generazione creativa di una singola immagine indipendente senza necessità di bloccare lo stesso personaggio, è più adatta la linea text-to-image; i livelli di dettaglio QUALITY e superiori allungano i tempi di generazione, rendendo necessario un compromesso tra velocità e qualità.
Novità
Vedi il changelog →- Nuovo modello Aggiunta di ideogram-v3-character per la generazione coerente del personaggio e ideogram-v3-character/edit…
Domande frequenti
Vedi tutte le domande →-
Quali sono i requisiti della maschera?
La maschera deve avere lo stesso rapporto larghezza-altezza dell'immagine originale; le aree nere vengono ridisegnate, le parti bianche vengono conservate. È più naturale se l'area è leggermente più grande del contorno del personaggio.
-
Qual è la dimensione dell'output?
L'output segue le dimensioni dell'immagine originale; ad esempio, un'immagine originale di 1024×768 produce un risultato di 1024×768.
-
Nell'immagine originale è già presente una persona, è possibile sostituirla?
Sì, dipingi la persona da sostituire nella maschera e descrivi l'azione del nuovo personaggio nel prompt; le persone e lo sfondo al di fuori della maschera verranno mantenuti.
-
In quale formato va usata la maschera?
Usa un'immagine con lo stesso rapporto larghezza-altezza dell'immagine originale, con lo sfondo bianco e le aree da ridisegnare delineate in nero; il caso di questa pagina utilizza una maschera PNG.
Crea un'attività di generazione
https://api.hiapi.ai/v1/tasks Header
AuthorizationstringObbligatorioChiave API dell'account. Obbligatoria in ogni richiesta. Esempio: Bearer YOUR_HIAPI_API_KEY. Ottieni una chiave API
Content-TypestringOpzionaleIl corpo della richiesta viene sempre interpretato come JSON; se inviato, è accettato solo application/json (charset facoltativo) — qualsiasi altro valore restituisce 415. Esempio: application/json.
Idempotency-KeystringOpzionaleChiave di idempotenza, fino a 255 byte. I retry con la stessa chiave dello stesso account creano l'attività una sola volta; i replay restituiscono il taskId originale.
In caso di timeout di rete o retry automatici del client, la stessa chiave crea l'attività una sola volta, senza doppi addebiti (ambito = l'account della chiave API). Usa un identificatore univoco di business (es. "order-42"); i replay restituiscono il taskId originale e le chiavi scadono 24 ore dopo la prima richiesta. La matrice completa degli scenari è nell'introduzione dell'API asincrona unificata.
Corpo
modelstringObbligatorioValore fisso attuale: ideogram-v3-character/edit
routestringOpzionaleValore fisso attuale: default
inputobjectObbligatorio
Oggetto di parametri di business per ideogram-v3-character/edit e la route default — vedi la tabella dei parametri sotto.
seedintegerOpzionalemin 0max 2147483647Seme casuale di tipo intero, utilizzato per rendere riproducibile il risultato di generazione dello stesso prompt; il valore assume forma di numero intero.
stylestringOpzionalePredefinito: "AUTO"Specifica il tipo di stile utilizzato per la generazione, predefinito AUTO.
AUTOREALISTICFICTIONpromptstringObbligatoriominLength 1maxLength 5000Descrive la scena in cui si trova il personaggio di riferimento, ovvero il contenuto dell'immagine da generare con questa modifica, lunghezza massima 5000 caratteri.
mask_urlstringObbligatoriominLength 1pattern ^https?://URL dell'immagine maschera che specifica l'area da ridisegnare; la maschera deve mantenere lo stesso rapporto d'aspetto dell'immagine di origine.
image_urlstringObbligatoriominLength 1pattern ^https?://URL dell'immagine di origine da modificare; l'immagine deve mantenere lo stesso rapporto d'aspetto della maschera.
expand_promptbooleanOpzionalePredefinito: trueInterruttore booleano che controlla se utilizzare MagicPrompt per l'espansione automatica del prompt, predefinito true.
rendering_speedstringOpzionalePredefinito: "BALANCED"Specifica il livello di velocità di rendering: TURBO è il più veloce ed economico, QUALITY offre il massimo dettaglio, diversi livelli hanno prezzi differenti; predefinito BALANCED.
TURBOBALANCEDQUALITYreference_image_urlsarrayObbligatoriominItems 1maxItems 1Array di immagini di riferimento del personaggio; è necessaria esattamente una immagine di riferimento del personaggio, supporta formati JPEG, PNG o WebP, dimensione massima 10 MB per immagine.
Array [ string ]
callbackobjectOpzionale
Configurazione di notifica dello stato terminale. Se omessa, nessun callback: interroga l'attività per conto tuo.
Fornisci callback.url in creazione e HiAPI invierà un POST al tuo servizio allo stato terminale, senza polling. Il corpo del callback replica la struttura del dettaglio attività; verifica firma, retry e idempotenza sono descritti nell'introduzione dell'API asincrona unificata.
urlstringObbligatorioObbligatoria se è presente callback. Allo stato terminale viene inviato un POST a questo URL; deve essere un URL http(s) valido.
whenstringOpzionalePredefinito: "final"Al momento è supportato solo final: notifica sia su success sia su fail.
finalstoragestringOpzionalePredefinito: "temp"Livello di archiviazione degli artefatti: temp (predefinito, ~7 giorni) o persistent (a lungo termine, fatturato per dimensione). Saldo insufficiente o superamento del limite ⇒ declassamento silenzioso a temp; il livello effettivo è visibile nella risposta di dettaglio.
temppersistentEsempi di richiesta
# Invia un'attività asincrona; restituisce subito un taskId (senza attendere la generazione)
curl -X POST "https://api.hiapi.ai/v1/tasks" \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "ideogram-v3-character/edit",
"input": {
"style": "AUTO",
"prompt": "…",
"mask_url": "…",
"image_url": "…",
"expand_prompt": true,
"rendering_speed": "BALANCED",
"reference_image_urls": "…"
}
}' const res = await fetch("https://api.hiapi.ai/v1/tasks", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.HIAPI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "ideogram-v3-character/edit",
input: {
"style": "AUTO",
"prompt": "…",
"mask_url": "…",
"image_url": "…",
"expand_prompt": true,
"rendering_speed": "BALANCED",
"reference_image_urls": "…"
}
}),
});
const task = await res.json();
// { code: 200, message: "success", data: { taskId } } import os, requests
res = requests.post(
"https://api.hiapi.ai/v1/tasks",
headers={"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"},
json={
"model": "ideogram-v3-character/edit",
"input": {
"style": "AUTO",
"prompt": "…",
"mask_url": "…",
"image_url": "…",
"expand_prompt": True,
"rendering_speed": "BALANCED",
"reference_image_urls": "…"
}
},
)
print(res.json()) # { code, message, data: { taskId } } 200 OK
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR"
}
} 400 Bad Request
{
"code": 400,
"message": "invalid request",
"data": null,
"error_code": "INVALID_REQUEST"
} Ottieni i dettagli dell'attività
https://api.hiapi.ai/v1/tasks/:id Campi della risposta
taskIdstringObbligatorioID attività, sempre con prefisso tk-hiapi-.
modelstringObbligatorioNome completo risolto del modello. Le attività inviate con il parametro route restituiscono base@route (es. gpt-image-2/text-to-image@ext); altrimenti coincide con il nome inviato.
routestringOpzionalePresente solo se è stato usato il parametro route esplicito; restituisce il valore inviato.
statusstringObbligatorioStato dell'attività.
queued In coda, non avviata.
handling In elaborazione.
archiving Elaborazione conclusa, preparazione artefatti.
success Terminale: completato, artefatti disponibili (restituisce output).
fail Terminale: errore (restituisce error).
Dopo l'invio, segui status: success e fail sono terminali, il resto no. Esegui polling ogni 1–3 s fino allo stato terminale. In caso di successo scarica gli artefatti da output[].url e trasferiscili prima di expireAt; per conservazione lunga usa storage: "persistent" in creazione.
creatednumberObbligatorioIstante di creazione dell'attività (secondi Unix).
completednumberObbligatorioSecondi Unix dello stato terminale; 0 finché non terminale.
outputarrayOpzionale
Presente solo con status == success. Elenco artefatti — sempre un array; un'attività può restituire più type contemporaneamente (es. video + first_frame).
Array [ object ]
Elementi dell'array
urlstringObbligatorioURL dell'artefatto, scaricabile direttamente.
typestringObbligatorioValori attualmente possibili: video, image, audio, first_frame, last_frame, thumbnail; potrebbero essere ampliati in futuro.
expireAtnumberObbligatorioSecondi Unix di disponibilità dell'artefatto; scarica o trasferisci prima della scadenza.
errorobjectOpzionale
Presente solo con status == fail.
codestringObbligatorioCodice errore di business.
messagestringObbligatorioDescrizione dell'errore.
Esempi di risposta
Successo
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR",
"model": "happyhorse-1-0",
"status": "success",
"created": 1777282033,
"completed": 1777282099,
"output": [
{
"url": "https://cdn.hiapi.ai/tasks/.../video.mp4",
"type": "video",
"expireAt": 1777886899
}
]
}
} In elaborazione (non terminale)
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "archiving",
"created": 1777282033,
"completed": 0
}
} Non riuscito
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "fail",
"created": 1777282033,
"completed": 1777282099,
"error": {
"code": "TASK_FAILED",
"message": "task failed"
}
}
} Articoli
Vedi tutti gli articoli →-
Tutoriale
Tutorial su kandinsky-6.0-pro/image-to-video tramite HiAPI: curl + Python
Avvia una richiesta funzionante di image-to-video su HiAPI: dal caricamento del primo fotogramma al polling asincrono fino al download finale
-
Confronto e valutazione
Confronto orizzontale di Recraft v4.1 Flash per la generazione di immagini da testo: guida alla scelta e alla migrazione per gli sviluppatori
Con un costo di $0,01 per immagine e la capacità di generazione puramente testuale, valuta se è adatto alla tua pipeline di generazione di immagini
-
Tutoriale
Come chiamare hailuo-2.3-fast/image-to-video tramite l'API HiAPI: pratica con curl e Python
La prima richiesta funzionante per il livello image-to-video veloce ed economico — dall'ID del modello al download di un MP4
-
Tutoriale
Come chiamare hailuo-2.3/text-to-video tramite l'API HiAPI: curl, Python ed esempi di richiesta eseguibili
-
Confronto e valutazione
hailuo-2.3-fast/image-to-video confronto orizzontale: come scegliere un modello image-to-video e i punti chiave per la migrazione
-
Tutoriale
Come chiamare kling-4.0/image-to-video su HiAPI: curl, Python e polling
-
Tutoriale
Utilizzare Kandinsky 6.0 Pro su HiAPI per la generazione di video da testo: tutorial con curl e Python
Dimostrazione pratica guidata dalla richiesta: costruire la chiamata da prompt a clip video, inviare la richiesta, monitorare lo stato di completamento e scaricare il risultato
-
Tutoriale
recraft-v4.1-flash text-to-image in pratica: 5 scenari di business ad alto valore e punti chiave di integrazione
Partendo da un costo di $0,01 per immagine, pianificare l'implementazione della generazione di immagini nei processi di business reali
-
Tutoriale
Come usare kling-4.0/text-to-video tramite l'API HiAPI: curl, Python e un esempio di richiesta funzionante
Guida pratica per sviluppatori: prompt cinematografici, audio sincronizzato, polling asincrono e download dell'output
Modelli correlati
Vedi tutti i modelli →Stesso tipo
-
Qwen Image 3.0 Alibaba $0.036 /immagine -
Nano Banana 2 Lite Google $0.033 /immagine -
Google Virtual Try-On Google $0.107 /immagine -
Muse Image 1.0 Meta $0.015 per task -
851 Labs Background Remover 851 Labs $0.002 /immagine -
Grok Imagine Quality xAI $0.070 /immagine -
Grok Imagine Image 2.0 xAI $0.052 /immagine -
Nano Banana Google $0.021 /immagine -
Nano Banana 2 Google $0.036 /immagine -
FLUX.1 Schnell Black Forest Labs $0.005 /immagine -
GPT Image 2 OpenAI $0.007 /immagine -
Imagen 4 Google $0.030 /immagine















