Corso
xAI ha appena rilasciato la Grok Imagine API, che genera video AI utilizzando il modello Grok Imagine. Si afferma che sia alla pari con gli altri modelli leader attuali, pur essendo stato ottimizzato per bassa latenza e costi contenuti.
In questo articolo, vedremo se Grok Imagine è all’altezza di queste promesse. In questa guida completa ti mostrerò come configurare l’API in locale e come usare Grok Imagine con input di testo, immagini o video per generare video in Python.
Se vuoi saperne di più sulle ultime novità in questo ambito, dai un’occhiata alla nostra guida sui migliori modelli di generazione video.
Che cos’è Grok Imagine?
Grok Imagine è un modello di generazione video di xAI. Accetta input di testo, immagini e video e genera un video con audio nativo. La possibilità di ricevere un input video è particolarmente interessante, perché consente di effettuare modifiche guidate dal prompt.
Il modello supera le prestazioni dei più recenti modelli Veo di Google e Sora di OpenAI, sia per prezzo sia per tempo di generazione.
Il confronto sopra si concentra solo su prezzo e velocità. Come possiamo vedere, Grok Imagine conquista il primo posto in entrambe le categorie.
Per quanto riguarda i video in sé, l’annuncio confronta Grok Imagine solo con Kling o1 e Runway Aleph. L’esperimento consisteva nell’inviare lo stesso prompt a tutti i modelli e far scegliere a valutatori umani il risultato preferito.
A parte il fatto che non si confrontano i risultati con Sora e Veo, ho trovato curioso che Runway Aleph non sia nemmeno l’ultimo modello rilasciato da Runway ML. Detto ciò, Grok Imagine occupa il primo posto nella classifica text-to-video di Artificial Analysis basata su ELO, superando persino Runway Gen 4.5.
Come accedere a Grok Imagine
Puoi accedere a Grok Imagine tramite l’interfaccia web o l’API. In questo tutorial ci concentriamo sull’utilizzo di Grok Imagine via API con Python.
Quando usi un modello via API, serve un account ma non un abbonamento. Invece, crei una chiave API nel tuo account, con addebito per video. Di seguito puoi vedere la struttura dei prezzi della Grok Imagine API:
Configurazione della Grok Imagine API
Prima di creare il nostro primo video con Grok Imagine, dobbiamo generare una chiave API e installare le dipendenze necessarie.
Generare una chiave API
Il primo passo per configurare la Grok Imagine API è generare una chiave API. Per crearla, vai alla console xAI ed esegui l’accesso con il tuo account xAI. Avrai bisogno di un team, quindi creane uno per il tuo account se non esiste ancora.
Poi, vai alla scheda API Keys e fai clic sul pulsante Create API Key sulla destra.

Copiamo la chiave in un file chiamato .env che creiamo nella stessa cartella in cui scriveremo il codice Python. Il file deve avere il seguente formato:
XAI_API_KEY="your_api_key"
Installare i pacchetti xAI per Python
Per interagire con la Grok Imagine API, installiamo due pacchetti Python:
-
xai-sdk: il pacchetto ufficiale di xAI che ci permette di effettuare richieste all’API. -
python-dotenv: un pacchetto di supporto che semplifica il caricamento della chiave API dal file.env.
Installiamo questi pacchetti con il comando:
pip install xai-sdk python-dotenv
Generare il nostro primo video con Grok Imagine
Completati i passaggi sopra, possiamo ora generare un video. Per farlo, importiamo i due pacchetti appena installati, carichiamo la chiave API, inizializziamo il client xAI e infine inviamo una richiesta di generazione video.
Ecco uno script Python di esempio:
from xai_sdk import Client
from dotenv import load_dotenv
# Load the API key
load_dotenv()
# Initialize the xAI client
client = Client()
# Sending a video generation request
prompt = """
A pixel art cat playing with a ball.
"""
response = client.video.generate(
prompt=prompt,
model="grok-imagine-video",
)
# Display the URL of the video
print(f"Video URL: {response.url}")
Ecco il video generato:
Nota: tutto il codice di questo articolo è disponibile in questa repository GitHub.
Scaricare il video
Il codice sopra attenderà che il video sia stato generato, quindi stamperà l’URL del video. Possiamo anche scaricare il video usando questa funzione download_video():
import requests
from pathlib import Path
from urllib.parse import urlparse
def download_video(url: str, output_dir: str = "."):
# Extract filename from URL
filename = Path(urlparse(url).path).name
if not filename:
raise ValueError("Could not determine filename from URL")
output_path = Path(output_dir) / filename
with requests.get(url, stream=True) as r:
r.raise_for_status()
with open(output_path, "wb") as f:
for chunk in r.iter_content(chunk_size=8192):
if chunk:
f.write(chunk)
print(f"Video saved to {output_path.resolve()}")
Dopo aver definito questa funzione, chiamando download_video(response.url) il video verrà scaricato nella tua directory di lavoro.
Un esempio completo con download del video è disponibile nella repository.
Generare video con la Grok Imagine API
Abbiamo visto come generare video da testo usando l’API di xAI. Ora esploreremo le capacità complete del modello. Per maggiori informazioni, puoi sempre consultare la documentazione xAI.
Esplorare le opzioni di generazione video
Grok Imagine offre tre opzioni principali per la generazione dei video:
-
duration: la durata del video in secondi, un numero da1a15. -
aspect_ratio: il rapporto d’aspetto del video. Il modello supporta i seguenti rapporti:"1:1","16:9","9:16","4:3","3:4","3:2"e"2:3". -
resolution: la risoluzione del video,"720p"o"480p".
Ecco un esempio di come impostare queste opzioni nella richiesta API:
prompt = """
A person stands holding their phone, gazing at a stunning landscape
photo on the screen. The image begins to subtly move and glow.
Suddenly, the phone pulls them in, and they are sucked through the screen,
transitioning seamlessly into the vast, breathtaking landscape itself.
"""
response = client.video.generate(
prompt=prompt,
model="grok-imagine-video",
duration=15,
aspect_ratio="9:16",
resolution="480p",
)
Ecco il risultato:
Trovo questo risultato poco convincente, per usare un eufemismo.
Generare un video da un’immagine
Una delle funzionalità più potenti dei modelli di generazione di immagini AI è la capacità di generare video a partire da un’immagine. Questo flusso di lavoro rende molto più semplice creare video coerenti, a patto di avere un’immagine di base, perché il modello deve solo generare il movimento.
Immagina di voler creare un video con un personaggio o una persona specifica. Fornire un’immagine, in teoria, quantomeno garantisce l’accuratezza del personaggio.
Per generare un video da un’immagine, usa il parametro image_url con l’URL dell’immagine che vogliamo utilizzare. Secondo la documentazione, quando si fornisce un’immagine, questa verrà usata come primo fotogramma del video. Dobbiamo però assicurarci che corrisponda al rapporto d’aspetto richiesto.
Ho provato a generare una ripresa FPV con drone di persone a cavallo sulla spiaggia a partire dalla foto qui sotto, che ho scattato tempo fa. Nota che, poiché l’immagine deve essere fornita come URL, dobbiamo prima caricarla da qualche parte. Nel mio caso, ho usato la repository GitHub associata a questo articolo.
prompt = """
A FPV drone shot of the people riding the horses on the beach.
"""
response = client.video.generate(
prompt=prompt,
model="grok-imagine-video",
image_url="https://raw.githubusercontent.com/fran-aubry/grok-imagine-tutorial/refs/heads/main/resources/horses.jpeg",
)
Questo è il video generato da Grok Imagine:
Nel video sono presenti chiari artefatti AI, come la duplicazione di oggetti. Nonostante ciò, il modello ha capito il tipo di ripresa che volevamo generare.
Ecco un altro esempio in cui provo a convertire un’immagine in un timelapse. L’ho provato due volte perché il primo risultato ha aggiunto un edificio che non esisteva nell’immagine originale.
Il secondo tentativo è andato meglio del primo, ma è comunque pieno di artefatti AI.
Come terzo esempio, ho provato a vedere come Grok Imagine gestisse il movimento della camera chiedendogli di animare una foto con uno zoom sul soggetto. A mio avviso, questo è quello riuscito meglio.
Modificare video con la Grok Imagine API
Grok Imagine ti permette di modificare un video esistente in base a un prompt testuale. Il funzionamento è simile alla generazione di un video a partire da un’immagine. Forniamo il video da modificare come URL usando il parametro video_url e descriviamo le modifiche con il prompt.
Nota che, durante l’editing, la durata massima consentita per il video di input è di 8,7 secondi.
Per testarlo, ho generato con Grok Imagine un video di una persona che fa giocoleria con tre palline.
Poi ho usato l’URL di quel video per chiedere al modello di aggiungere del fuoco alle palline. Qui sotto trovi la richiesta per modificare il video. Il codice completo è disponibile nella repository GitHub.
prompt = """
Add fire to the balls.
"""
response = client.video.generate(
prompt=prompt,
model="grok-imagine-video",
video_url="https://vidgen.x.ai/xai-vidgen-bucket/xai-video-2109c762-efcb-415b-ab3c-661b1df113cd.mp4",
)
Ho fatto anche una terza modifica chiedendo di sostituire la persona con un gatto. Ecco i risultati:
Ecco un ultimo esempio in cui sono partito da una foto che ho scattato a un cielo stellato. Ho chiesto a Grok Imagine di aggiungere due escursionisti che scendono lungo il sentiero e si fermano ad ammirare le stelle. Infine, ho usato quel video come input e ho chiesto di modificarlo per renderlo innevato.
Anche questo è un esempio in cui i risultati sono piuttosto scarsi. Nel primo video è stato creato un nuovo sentiero incoerente con la scena. L’editing con la neve inizialmente sembrava ben fatto, ma poi ho notato che lo sfondo è rimasto invariato, risultando incoerente con il primo piano ora innevato.
Conclusione
È incoraggiante vedere arrivare nuovi modelli video con accesso via API, perché questo amplia davvero ciò che possiamo costruire e automatizzare, dai prototipi rapidi fino a pipeline complete.
L’API di Grok Imagine è piacevolmente semplice da configurare e chiamare, ma presenta alcuni punti di attrito. In particolare, il requisito di passare immagini e video tramite URL rende i flussi di lavoro di base (come iterare su asset locali) più macchinosi del necessario.
Nella pratica, i miei risultati sono stati deludenti rispetto alle alte aspettative: il text-to-video spesso non ha centrato l’obiettivo e l’image-to-video ha introdotto artefatti e incoerenze evidenti. L’area in cui invece si è distinto è l’editing, dove le modifiche guidate dal prompt sono sembrate più affidabili e controllabili.
Un punto di forza notevole di Grok Imagine è la velocità. Ho usato molti modelli di generazione video AI e, per esperienza, Grok Imagine è di gran lunga il più veloce.
Sono ottimista sul futuro di questo ambito, ma per ora Grok Imagine sembra più un editor promettente che un generatore best-in-class; spero che i prossimi aggiornamenti amplino le opzioni di input e migliorino la qualità della generazione di base.
Per chi vuole approfondire le tecniche usate nella generazione video con AI, consiglio di iscriversi al nostro percorso di competenze AI Fundamentals.
FAQ su Grok Imagine API
Come posso accedere alla Grok Imagine API?
Per usare la Grok Imagine API, ti basta un account xAI. Puoi generare una chiave API dalla console xAI.
Quanto costa la generazione video con la Grok Imagine API?
Il prezzo dipende sia dall’input ($0,002 per immagine, $0,01 per video) sia dall’output. Al secondo, un video costa $0,05 a 480p e $0,07 a 720p.
Quali funzionalità supporta la Grok Imagine API?
La Grok Imagine API supporta text-to-video, image-to-video ed editing video. Puoi generare clip fino a 15 secondi con generazione audio nativa.
Come si creano video da immagini o altri video nella Grok Imagine API?
Le immagini e i video di input devono essere forniti come URL e aggiunti usando rispettivamente i parametri image_url e video_url.





