Tóm tắt nhanh: Gemini Omni 1.2 Flash API tạo và chỉnh sửa video có độ dài từ 3 đến 15 giây thông qua Interactions API, với mã định danh mô hình là gemini-omni-1.2-flash. Để triển khai công việc này dưới dạng tác vụ cho agent, hãy gán cho mỗi công việc một Task chứa bản tóm tắt yêu cầu (brief), tài liệu tham chiếu, thời lượng và giới hạn số lần thử. Hãy lưu lại ID tương tác (interaction ID) và bố trí người kiểm duyệt giữa các lượt xử lý.
Google đã phát hành chính thức Gemini Omni 1.2 Flash vào ngày 5 tháng 11 năm 2026. Đối với các đội ngũ phát triển, điều này thay đổi hoàn toàn cách tiếp cận vấn đề. Thay vì tự hỏi liệu mô hình có đáng để thử nghiệm phụ hay không, giờ là lúc bạn cần xác định ai sẽ chịu trách nhiệm cho toàn bộ quy trình tạo video—từ khâu nhận brief cho đến khi được phê duyệt cuối cùng.
Một lệnh gọi API tạo video rất khác so với việc phản hồi một đoạn chat thông thường. Nó tính phí theo từng giây, trả về một tệp tin, và cần phải có người phê duyệt tệp đó trước khi gửi tới khách hàng. Nếu các agent của bạn đã và đang xử lý công việc từ Sharkly Tasks của Sharkly, thì quy trình xử lý tác vụ video cũng tương tự như vậy, và bài viết này sẽ hướng dẫn cụ thể quy trình đó.
Trước hết, cần làm rõ một giới hạn: Sharkly không tự tạo video và cũng không tích hợp sẵn Omni. Agent của bạn sẽ gọi API của Google, còn Sharkly đóng vai trò quản lý toàn bộ quy trình làm việc xung quanh lệnh gọi API đó.
Một lệnh gọi Gemini Omni 1.2 Flash API diễn ra như thế nào
Một lệnh gọi Gemini Omni 1.2 Flash API thực chất là một yêu cầu interactions.create bao gồm prompt, tệp phương tiện tham chiếu tùy chọn và response_format để chỉ định độ phân giải cùng thời lượng. Các lượt chỉnh sửa tiếp theo sẽ tái sử dụng kết quả trước đó thông qua previous_interaction_id, nhờ đó bạn có thể mô tả những thay đổi cần thực hiện mà không cần tải lại đoạn clip.
Đoạn mã phác thảo dưới đây được xây dựng dựa trên tài liệu của Omni cập nhật ngày 6 tháng 11 năm 2026. Chúng tôi chưa chạy thử đoạn mã này trong thực tế, vì vậy bạn nên thử nghiệm trên một clip trước.
import base64
from google import genai
client = genai.Client() # reads GEMINI_API_KEY from the environment
MODEL = "gemini-omni-1.2-flash"
# Turn 1: a cheap draft at the length the brief asks for
draft = client.interactions.create(
model=MODEL,
input="A slow 360-degree spin of a matte black water bottle on a grey plinth.",
response_format={"type": "video", "resolution": "360p", "duration": "15s"},
)
# Turn 2: edit the draft after a person reviews it
edit = client.interactions.create(
model=MODEL,
previous_interaction_id=draft.id,
input="Keep the spin. Change the plinth to pale oak.",
)
with open("clip.mp4", "wb") as f:
f.write(base64.b64decode(edit.output_video.data))
print(draft.id, edit.id) # these IDs belong on the Task
Có bốn chi tiết trong tài liệu rất quan trọng đối với một agent:
- Thời lượng mặc định là 10 giây. Hãy thiết lập thông số này trong
response_format, vì giá trị tại đây sẽ ghi đè lên bất kỳ thời lượng nào được mô tả trong prompt. output_videochỉ có trong SDK. Nếu gọi REST API trực tiếp, bạn sẽ phải đọc video từ mảngsteps.- Các tệp dung lượng lớn cần phân phối qua URI. Với tệp trên 4MB, hãy dùng
delivery: "uri"và thực hiện kiểm tra định kỳ (poll) cho đến khi trạng thái tệp chuyển sangACTIVE. - Omni không có gói API miễn phí. Theo trang giá cả, API này chỉ dành cho các dự án trả phí, với mức giá khoảng 0,07 USD cho mỗi giây video ở độ phân giải 720p.
Tại sao quản lý việc tạo video bằng Task lại hiệu quả hơn dùng chat prompt
Nếu bạn thực hiện việc này từ một terminal riêng lẻ, công việc sẽ bị phân mảnh ở bốn nơi khác nhau: bản brief nằm trong đoạn chat, tài liệu tham khảo nằm trong một thư mục, interaction ID nằm trong file log, còn việc phê duyệt chỉ nằm trong trí nhớ của ai đó. Sự phân mảnh này gây lãng phí nhiều hơn hẳn đối với video so với văn bản, vì ba lý do sau:
Khóa chỉnh sửa (edit handle) có thời hạn. Tính năng chỉnh sửa qua nhiều lượt phụ thuộc vào tương tác đã được lưu trữ. Theo tài liệu Interactions API, các dự án trả phí mặc định lưu trữ dữ liệu này trong 55 ngày, và bạn có thể rút ngắn xuống còn 7, 14 hoặc 28 ngày. Nếu làm mất ID hoặc quá hạn lưu trữ, bạn sẽ phải bắt đầu tạo lại từ đầu.
Mẹo tối ưu tốc độ sẽ vô hiệu hóa khả năng chỉnh sửa. Hướng dẫn tối ưu hiệu năng của Google gợi ý thiết lập store=false để tạo video nhanh hơn. Tuy nhiên, tài liệu cũng cảnh báo rằng khi đó bạn không thể chỉnh sửa video bằng previous_interaction_id nữa. Một agent tự động tối ưu hóa tốc độ có thể sẽ vô tình tắt đi tính năng thiết yếu phục vụ cho vòng lặp kiểm duyệt của bạn.
Số lượng yêu cầu bị giới hạn nghiêm ngặt. Theo trang giới hạn tốc độ (rate limits), các dự án Tier 1 chỉ có 8 yêu cầu/phút và 40 yêu cầu/ngày. Mỗi bản nháp hay mỗi lượt chỉnh sửa đều tiêu tốn một lượt gọi. Ba agent chạy thử các biến thể có thể dùng cạn hạn mức này trước giờ ăn trưa, và sẽ không ai biết lý do tại sao công việc thứ tư lại thất bại.
Năm thành phần của một quy trình tạo video
Hãy xem một công việc tạo video như bất kỳ đơn vị công việc nào khác của agent. Quy trình này gồm năm thành phần, và mỗi thành phần đều cần có người phụ trách rõ ràng.
1. Bản mô tả yêu cầu (The brief)
Bản brief được đặt trong phần mô tả của Task. Hãy giữ nó đủ ngắn gọn để dễ dàng đối chiếu với clip thành phẩm:
Goal: 15-second product spin for the launch page
Format: 16:9, 720p final, 15s
References: bottle-front.png, bottle-back.png, brand-colors.png
Must keep: logo text readable, matte finish, no people
Attempt cap: 4 drafts at 360p, 3 edits at 720p
Reviewer: the person who owns the launch page
Giới hạn số lần thử (attempt cap) đóng vai trò then chốt nhất. Nếu không có giới hạn này, việc “thử vài biến thể” sẽ diễn ra không có hồi kết.
2. Tài nguyên tham chiếu (Reference assets)
Hãy đính kèm tài liệu tham chiếu vào Task để mỗi lần chạy đều sử dụng cùng một tập hợp tệp. Omni hỗ trợ tối đa 6 hình ảnh tham chiếu cho mỗi yêu cầu, trong đó tối đa 3 ảnh cho mỗi nhân vật (hỗ trợ tối đa 2 nhân vật). Video tham chiếu có thời lượng tối đa 3 giây mỗi clip: một clip cho video đầu ra từ 11 đến 15 giây, và tối đa ba clip đối với video ngắn hơn.
Cần lưu ý một hạn chế: dù thông báo của Google có đề cập đến chỉ dẫn âm thanh (audio cues), nhưng tài liệu API cho biết việc tải lên tệp âm thanh vẫn chưa được hỗ trợ trong phiên bản hiện tại. Hãy mô tả âm thanh trực tiếp trong prompt.
3. Agent thực hiện gọi API
Agent cần một môi trường thực thi và một API key. Trong Sharkly, cài đặt Agent quản lý các biến môi trường thông thường và biến bí mật, vì vậy GEMINI_API_KEY sẽ được lưu ở đó dưới dạng biến bí mật. Chi phí các lệnh gọi sẽ được tính trực tiếp vào tài khoản Google của bạn, bởi vì Sharkly không bán token.
4. Các lượt chỉnh sửa nhiều bước (Multi-turn edits)
Mỗi lượt chỉnh sửa là một bước mới trên cùng một tương tác, và mỗi bước sẽ tạo ra một video mới. Hãy cấu hình để Agent cập nhật interaction ID, độ phân giải và thời lượng lên Task sau mỗi lượt thực thi. Nhờ đó, lượt chạy kế tiếp hoặc người xử lý tiếp theo có thể tiếp tục công việc từ đúng video vừa tạo.
5. Kiểm duyệt bởi con người (Human review)
Hãy tạm dừng Agent sau vòng tạo bản nháp và dừng lại một lần nữa trước khi render bản hoàn chỉnh. Đây là những thời điểm mà đánh giá của con người giúp tiết kiệm chi phí hoặc phát hiện kịp thời các sai sót về thương hiệu.

Agent đảm nhận việc tạo, chỉnh sửa và báo cáo. Con người sẽ đưa ra brief, chọn phương án phù hợp và nghiệm thu clip cuối cùng.
Cách Sharkly điều phối công việc
Vai trò của Sharkly là quản lý quyền sở hữu tác vụ và quy trình kiểm duyệt. Task đóng vai trò là bản ghi dùng chung, và tiến độ, sự kiện theo dõi (trace events) cùng kết quả cuối cùng đều được cập nhật về Task.
Cơ chế hoạt động được phân định rất rõ ràng:
- Chuẩn bị trong Backlog. Một Task được chỉ định sẽ không tự động kích hoạt tại đây, nhờ đó bạn có thể hoàn thiện brief và chuẩn bị tài liệu tham chiếu trước.
- Bắt đầu thực thi. Khi chuyển Task ra khỏi Backlog, Agent được chỉ định sẽ bắt đầu khởi chạy trên Computer của nó.
- Bàn giao để kiểm duyệt. Agent sẽ chuyển trạng thái cuộc hội thoại tác vụ sang chế độ cần kiểm duyệt, và bước bàn giao này sẽ hiển thị trong mô-đun Task Chats.
- Tiếp tục thông qua bình luận. Một bình luận hợp lệ từ người dùng có thể kích hoạt lượt chạy tiếp theo để thực hiện chỉnh sửa.
- Đóng tác vụ. Đính kèm clip đã hoàn thành, sau đó người phụ trách sẽ chuyển Task sang trạng thái cuối cùng.

Tên các trạng thái (status) trong từng danh mục do tổ chức của bạn tự quy định, do đó nhóm làm việc có thể tạo riêng một trạng thái phục vụ việc kiểm duyệt clip. Các trạng thái thực thi của lượt chạy như Queued hay Running được tách biệt hoàn toàn khỏi các trạng thái này.
Những quy tắc lặp đi lặp lại nên được đóng gói vào một Skill, nơi chứa các chỉ dẫn áp dụng cho mọi Agent liên kết với nó. Bạn chỉ cần thiết lập các quy tắc của Omni một lần duy nhất và mọi Task tạo video đều sẽ kế thừa chúng. Lưu ý không đưa API key vào Skill, vì tài liệu quy định rõ ràng rằng các biến bí mật không bao giờ được đặt ở đây. Chúng tôi đã phân tích mô hình tổng quát này trong bài viết về cổng phê duyệt cho coding agent.
Các giới hạn cần đưa vào Skill của bạn
Omni không hỗ trợ cấu hình system instructions, temperature hay negative prompts, do đó các quy tắc của bạn bắt buộc phải được truyền tải tới mô hình thông qua nội dung prompt. Những giới hạn dưới đây được trích xuất từ tài liệu của Omni.
| Giới hạn | Quy tắc dành cho Agent |
|---|---|
| 3 đến 15 giây cho mỗi lần tạo | Luôn thiết lập duration theo số giây nguyên |
| Mỗi lần mở rộng thêm từ 3 đến 10 giây, tối đa 30 giây tổng cộng | Lập kế hoạch mở rộng từ trước khi tạo bản nháp nếu video dài hơn |
| Chỉ có thể nối thêm vào đoạn kết thúc | Không hứa hẹn tạo phần mở đầu hay phần giữa mới |
| Không hỗ trợ chỉnh sửa giọng nói | Tạo lại từ đầu nếu cần thay đổi lời thoại |
| Video tham chiếu chỉ có tác dụng khi tạo mới | Dùng hình ảnh tham chiếu khi chỉnh sửa |
| Chặn tải lên hình ảnh của một số người nổi tiếng/dễ nhận diện | Kiểm tra ảnh nguồn trước khi bắt đầu chạy |
| Chức năng chỉnh sửa video tải lên không khả dụng tại EEA, Thụy Sĩ và Vương quốc Anh | Chỉ chỉnh sửa các clip do mô hình tự tạo tại các khu vực này |
| Chỉ hỗ trợ đầy đủ tiếng Anh | Đánh dấu các ngôn ngữ khác để kiểm duyệt kỹ hơn |
Có một điểm chưa rõ cần được kiểm chứng: Tài liệu quy định resolution theo từng yêu cầu và phân loại độ phân giải 1080p cùng 4K là dạng upscaled (nâng cấp độ phân giải), nhưng lại không có ví dụ mẫu nào về việc upscale một clip đã có sẵn. Mặc dù thông báo của Google có mô tả quy trình này, bạn vẫn nên thử nghiệm thực tế trên một clip trước khi đưa vào Skill.
Khi nào không cần thiết phải dùng Task
Hãy sử dụng Task khi một clip cần có người phụ trách cụ thể, cần giới hạn ngân sách hoặc có người kiểm duyệt. Còn nếu chỉ một người muốn tự tay tạo một clip đơn lẻ, hãy dùng các ứng dụng sẵn có của Google: Flow hỗ trợ chỉnh sửa nhiều lượt, còn Google Vids giúp tạo các đoạn clip dài 15 giây.
Hãy sử dụng một pipeline chuyên biệt khi bạn cần trải qua nhiều giai đoạn như nghiên cứu, viết kịch bản và biên tập thay vì chỉ một lệnh gọi mô hình duy nhất. OpenMontage là một giải pháp theo hướng tiếp cận này. Task vẫn có thể đóng vai trò quản lý kết quả đầu ra của quy trình đó, nhưng logic sản xuất chính sẽ nằm trong pipeline.
Các trường hợp thực tế phù hợp để áp dụng
Những công việc lý tưởng để bắt đầu là những tác vụ ngắn gọn, có tính lặp lại và dễ đánh giá:
- Clip giới thiệu bản phát hành (Release clips). Khi một tính năng mới ra mắt, Agent sẽ dựa vào changelog để tạo bản nháp video 15 giây cho người phụ trách duyệt.
- Video xoay sản phẩm cho danh mục (Catalog spins). Đưa ảnh chụp sản phẩm vào làm tài liệu tham chiếu; Google cho biết văn bản bao bì và màu sắc thương hiệu sẽ được duy trì đồng nhất qua các góc quay khác nhau.
- Biến thể quảng cáo (Ad variants). Từ một clip đã được duyệt, tiến hành chỉnh sửa các biến thể cho từng đối tượng khán giả, với mỗi lượt chỉnh sửa đều được liên kết về cùng một Task.
Bạn nên bắt đầu với clip giới thiệu bản phát hành, bởi nội dung nguồn đã có sẵn và người kiểm duyệt cũng đã được xác định.
Bước tiếp theo của bạn
Hãy chọn một clip mà nhóm của bạn cần trong tháng này và viết một bản brief 6 dòng như mẫu ở trên. Sau đó, kết nối một Computer và gán một Task rủi ro thấp cho Agent đã được cấu hình Gemini key. Đặt giới hạn ở mức hai bản nháp cùng một lượt chỉnh sửa, và đảm bảo rằng các interaction ID được lưu đầy đủ trên Task. Tài liệu hướng dẫn nhanh của Sharkly sẽ chỉ dẫn cụ thể các bước thiết lập. Khi quy trình đã vận hành trơn tru cho một công việc, hãy chuyển các quy tắc đó vào một Skill.
Câu hỏi thường gặp (FAQ)
Mã định danh mô hình (model ID) của Gemini Omni 1.2 Flash API là gì?
Mã định danh là gemini-omni-1.2-flash, và đây là phiên bản ổn định (stable). Các yêu cầu gửi tới gemini-omni-1.1-flash sẽ được tự động điều hướng sang 1.2 kể từ ngày 3 tháng 12 năm 2026.
Làm cách nào để chỉnh sửa video bằng Gemini Omni API?
Hãy gửi một yêu cầu interactions.create mới với tham số previous_interaction_id trỏ đến kết quả trước đó, đồng thời mô tả các thay đổi bằng ngôn ngữ tự nhiên. Mô hình sẽ giữ nguyên những yếu tố mà bạn không đề cập đến.
Gemini lưu trữ một tương tác để chỉnh sửa trong bao lâu?
Các dự án trả phí mặc định lưu trữ tương tác trong 55 ngày. Bạn có thể rút ngắn khoảng thời gian này trong AI Studio xuống còn 7, 14 hoặc 28 ngày, và thiết lập store=false sẽ tắt hoàn toàn tính năng lưu trữ.
Một AI agent có thể tự động gọi Gemini Omni API không?
Có. Bất kỳ agent nào có khả năng chạy code và đọc API key đều có thể thực hiện lệnh gọi. Vấn đề phức tạp hơn nằm ở việc lưu trữ và quản lý bản brief, các hạn mức cùng quy trình phê duyệt.
Sharkly có tích hợp trực tiếp với Gemini Omni không?
Không. Agent sẽ gọi API của Google từ Computer của nó bằng API key của bạn. Sharkly đóng vai trò quản lý Task, Skill và quy trình kiểm duyệt xung quanh lệnh gọi đó.
Video tạo bởi Gemini Omni có gắn watermark không?
Có. Mọi video được tạo ra đều chứa SynthID, một hình mờ (watermark) vô hình có thể nhận diện được bằng chương trình.



