Khóa học
xAI vừa ra mắt Grok Imagine API, cho phép tạo video AI bằng mô hình Grok Imagine. Họ tuyên bố mô hình này sánh ngang các mô hình hàng đầu hiện nay, dù được tối ưu cho độ trễ thấp và chi phí rẻ.
Trong bài viết này, chúng ta sẽ xem Grok Imagine có đáp ứng được những kỳ vọng đó không. Trong hướng dẫn toàn diện này, tôi sẽ chỉ bạn cách thiết lập API trên máy và cách dùng Grok Imagine với đầu vào văn bản, hình ảnh hoặc video để tạo video bằng Python.
Nếu bạn muốn tìm hiểu thêm về các bản phát hành mới nhất trong lĩnh vực này, hãy xem hướng dẫn của chúng tôi về các mô hình tạo video hàng đầu.
Grok Imagine là gì?
Grok Imagine là một mô hình tạo video của xAI. Nó nhận đầu vào văn bản, hình ảnh và video và tạo ra video kèm âm thanh gốc. Khả năng nhận đầu vào video đặc biệt thú vị vì cho phép ta thực hiện chỉnh sửa dựa trên prompt.
Mô hình của họ vượt trội hơn các mô hình Veo mới nhất của Google và Sora của OpenAI, cả về giá lẫn thời gian tạo video.
Biểu đồ so sánh trên chỉ tập trung vào giá và tốc độ. Như có thể thấy, Grok Imagine đứng đầu ở cả hai hạng mục.
Về chất lượng video, thông báo chỉ so sánh Grok Imagine với Kling o1 và Runway Aleph. Thí nghiệm gửi cùng một prompt cho tất cả mô hình và để người đánh giá chọn kết quả họ thích.
Ngoài việc không so sánh với Sora và Veo, tôi cũng thấy lạ là Runway Aleph thậm chí không phải là mô hình mới nhất của Runway ML. Dù vậy, Grok Imagine đứng đầu bảng xếp hạng Artificial Analysis cho text-to-video dựa trên ELO, thậm chí vượt cả Runway Gen 4.5.
Cách truy cập Grok Imagine
Bạn có thể truy cập Grok Imagine qua giao diện web hoặc API. Trong hướng dẫn này, chúng ta tập trung dùng Grok Imagine qua API bằng Python.
Khi dùng mô hình qua API, chúng ta cần một tài khoản nhưng không cần gói thuê bao. Thay vào đó, hãy tạo khóa API trong tài khoản để tính phí theo từng video. Dưới đây là cấu trúc giá của Grok Imagine API:
Thiết lập Grok Imagine API
Trước khi tạo video Grok Imagine đầu tiên, chúng ta cần tạo khóa API và cài đặt các phụ thuộc cần thiết.
Tạo khóa API
Bước đầu tiên để thiết lập Grok Imagine API là tạo khóa API. Để tạo, hãy truy cập bảng điều khiển xAI và đăng nhập bằng tài khoản xAI của bạn. Bạn sẽ cần một nhóm (team), nên hãy tạo một nhóm cho tài khoản nếu chưa có.
Tiếp theo, điều hướng đến thẻ API Keys và nhấp nút Create API Key ở bên phải.

Chúng ta sao chép khóa vào tệp tên .env tạo trong cùng thư mục với mã Python. Tệp nên có định dạng sau:
XAI_API_KEY="your_api_key"
Cài đặt các gói xAI cho Python
Để tương tác với Grok Imagine API, chúng ta cài đặt hai gói Python:
-
xai-sdk: Gói chính thức của xAI cho phép gọi yêu cầu API. -
python-dotenv: Gói hỗ trợ giúp tải khóa API từ tệp.envdễ dàng.
Cài đặt các gói này bằng lệnh:
pip install xai-sdk python-dotenv
Tạo video đầu tiên với Grok Imagine
Sau khi hoàn tất các bước trên, chúng ta có thể tạo video. Ta nhập hai gói vừa cài, tải khóa API, khởi tạo client xAI và cuối cùng gửi yêu cầu tạo video.
Đây là đoạn mã Python mẫu:
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}")
Đây là video đã được tạo:
Lưu ý: Toàn bộ mã trong bài viết có tại kho GitHub này.
Tải video xuống
Đoạn mã trên sẽ chờ video tạo xong rồi in URL của video. Chúng ta cũng có thể tải video bằng hàm download_video() này:
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()}")
Sau khi định nghĩa hàm này, gọi download_video(response.url) sẽ tải video về thư mục làm việc của bạn.
Một ví dụ đầy đủ kèm tải video có trong repository.
Tạo video với Grok Imagine API
Chúng ta đã học cách tạo video từ văn bản bằng xAI API. Tiếp theo, ta sẽ khám phá đầy đủ khả năng của mô hình. Để biết thêm, bạn luôn có thể tham khảo tài liệu xAI.
Khám phá các tùy chọn tạo video
Grok Imagine cung cấp ba tùy chọn chính khi tạo video:
-
duration: Thời lượng video tính bằng giây, là số từ1đến15. -
aspect_ratio: Tỉ lệ khung hình của video. Mô hình hỗ trợ các tỉ lệ:"1:1","16:9","9:16","4:3","3:4","3:2"và"2:3". -
resolution: Độ phân giải video,"720p"hoặc"480p".
Ví dụ cách thiết lập các tùy chọn trên trong yêu cầu 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",
)
Đây là kết quả:
Thành thật mà nói, tôi thấy kết quả này khá thất vọng.
Tạo video từ một hình ảnh
Một trong những tính năng mạnh mẽ nhất của các mô hình tạo hình ảnh AI là khả năng tạo video từ một hình ảnh. Quy trình này giúp việc tạo video nhất quán dễ dàng hơn nhiều nếu có ảnh nền, vì mô hình chỉ cần tạo chuyển động.
Hãy tưởng tượng bạn muốn tạo video với một nhân vật hoặc người cụ thể. Cung cấp hình ảnh, về lý thuyết, ít nhất đảm bảo độ chính xác của nhân vật.
Để tạo video từ hình ảnh, hãy dùng tham số image_url với URL của hình muốn dùng. Theo tài liệu của họ, khi có hình ảnh, nó sẽ được dùng làm khung hình đầu tiên của video. Tuy nhiên, chúng ta cần đảm bảo nó khớp tỉ lệ khung hình yêu cầu.
Tôi thử tạo một cảnh quay drone FPV của người cưỡi ngựa trên bãi biển từ bức ảnh dưới đây, tôi đã chụp cách đây một thời gian. Lưu ý vì hình cần cung cấp dưới dạng URL, nên trước tiên ta phải tải nó lên đâu đó. Trường hợp của tôi, tôi dùng kho GitHub đi kèm bài viết.
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",
)
Đây là video Grok Imagine đã tạo:
Có những lỗi tạo tác AI rõ ràng trong video, như nhân bản đối tượng. Dẫu vậy, mô hình hiểu được góc máy chúng ta muốn tạo.
Dưới đây là ví dụ khác, tôi thử chuyển một bức ảnh thành timelapse. Tôi thử hai lần vì kết quả đầu tiên thêm một toà nhà không có trong ảnh gốc.
Lần thứ hai thành công hơn lần đầu, nhưng vẫn đầy lỗi tạo tác AI.
Ở ví dụ thứ ba, tôi thử xem Grok Imagine xử lý chuyển động máy quay thế nào bằng cách yêu cầu nó hoạt họa một bức ảnh với hiệu ứng zoom vào chủ thể. Theo tôi, ví dụ này là tốt nhất.
Chỉnh sửa video với Grok Imagine API
Grok Imagine cho phép bạn chỉnh sửa video hiện có dựa trên prompt văn bản. Cách hoạt động tương tự như tạo video từ hình ảnh. Ta cung cấp video muốn chỉnh sửa dưới dạng URL bằng tham số video_url và mô tả thay đổi qua prompt.
Lưu ý khi chỉnh sửa, độ dài tối đa của video đầu vào được phép là 8,7 giây.
Để thử nghiệm, tôi đã tạo một video bằng Grok Imagine về một người tung hứng ba quả bóng.
Sau đó, tôi dùng URL của video đó để yêu cầu mô hình thêm lửa vào các quả bóng. Dưới đây là yêu cầu chỉnh sửa video. Toàn bộ mã có tại kho 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",
)
Tôi cũng làm một chỉnh sửa thứ ba, yêu cầu thay người bằng mèo. Đây là các kết quả:
Đây là ví dụ cuối cùng, tôi bắt đầu với bức ảnh bầu trời đầy sao do tôi chụp. Tôi yêu cầu Grok Imagine thêm hai người đi bộ đường dài đang đi xuống lối mòn và dừng lại ngắm sao. Cuối cùng, tôi dùng video đó làm đầu vào và yêu cầu chỉnh sửa để biến cảnh thành có tuyết.
Đây là một ví dụ khác với kết quả khá tệ. Ở video đầu tiên, một lối mòn mới được tạo ra, không nhất quán với bối cảnh. Bản chỉnh tuyết trông ổn lúc đầu, nhưng rồi tôi nhận ra hậu cảnh không đổi, khiến nó không khớp với tiền cảnh đã phủ tuyết.
Kết luận
Thật đáng mừng khi có thêm các mô hình video kèm API, vì điều đó thực sự mở rộng những gì chúng ta có thể xây dựng và tự động hóa, từ nguyên mẫu nhanh đến quy trình hoàn chỉnh.
API của Grok Imagine rất dễ thiết lập và gọi, nhưng cũng có điểm vướng. Đáng chú ý nhất là yêu cầu truyền hình ảnh và video qua URL khiến các quy trình cơ bản (như lặp với tài sản cục bộ) rườm rà hơn mức cần thiết.
Trên thực tế, kết quả của tôi kém hơn kỳ vọng so với các tuyên bố táo bạo: text-to-video thường không trúng ý, còn image-to-video xuất hiện nhiều lỗi tạo tác và thiếu nhất quán. Điểm sáng là phần chỉnh sửa, nơi các thay đổi dựa trên prompt có vẻ đáng tin cậy và dễ kiểm soát hơn.
Một điểm rất mạnh của Grok Imagine là tốc độ. Tôi đã dùng nhiều mô hình tạo video AI và theo trải nghiệm của tôi, Grok Image là nhanh nhất.
Tôi lạc quan về tương lai của lĩnh vực này, nhưng hiện tại Grok Imagine giống một trình chỉnh sửa đầy hứa hẹn hơn là bộ tạo nội dung hàng đầu. Tôi hy vọng các bản cập nhật sau sẽ mở rộng tùy chọn đầu vào và cải thiện chất lượng tạo nội dung cốt lõi.
Nếu bạn muốn tìm hiểu thêm về các kỹ thuật dùng trong tạo video AI, tôi khuyên bạn đăng ký lộ trình kỹ năng AI Fundamentals của chúng tôi.
Grok Imagine API FAQs
Làm sao tôi có thể truy cập Grok Imagine API?
Để dùng Grok Imagine API, bạn chỉ cần một tài khoản xAI. Bạn có thể tạo khóa API từ bảng điều khiển xAI.
Tạo video với Grok Imagine API tốn bao nhiêu?
Giá phụ thuộc cả vào đầu vào ($0,002 mỗi ảnh, $0,01 mỗi video) và đầu ra. Mỗi giây, video có giá $0,05 ở độ phân giải 480p và $0,07 ở 720p.
Grok Imagine API hỗ trợ những khả năng nào?
Grok Imagine API hỗ trợ text-to-video, image-to-video và chỉnh sửa video. Bạn có thể tạo clip dài tối đa 15 giây với âm thanh gốc.
Làm thế nào để tạo video từ hình ảnh hoặc video khác trong Grok Imagine API?
Hình ảnh và video đầu vào phải được cung cấp dưới dạng URL và thêm vào bằng các tham số image_url và video_url tương ứng.



