Manus邀請碼申請攻略
Character.AI 推出AvatarFX:AI 視頻生成模型讓靜態圖片“開口說話”
Manychat完成1.4億美元B輪融資,借AI加速全球社交電商佈局
谷歌AI概覽嚴重衝擊SEO點擊率:Ahrefs研究顯示流量下降超34%
Gemini API 可讓您使用Veo 2,這是Google 的先進視頻生成模型。 Veo 旨在幫助您構建新一代AI 應用,將用戶的提示和圖片轉換為高品質的視頻素材資源。
注意: Veo 是一項付費功能,無法在免費層級中運行。 如需了解詳情,請訪問價格頁面。
Veo 是Google 迄今為止最強大的視頻生成模型。它可以生成各種電影和視覺風格的視頻,捕捉提示中的細微之處,以便在各個畫面中一致呈現精緻細節。
模態 | 文本轉視頻生成 圖片轉視頻生成 |
請求延遲時間 | 最短:11 秒 最長:6 分鐘(高峰時段) |
可變長度生成 | 5-8 秒 |
解決方法 | 720p |
幀速率 | 24 幀/秒 |
寬高比 | 16:9 - 橫向 9:16 - 縱向 |
輸入語言(文字轉視頻) | 英語 |
注意:如需詳細了解Veo 的使用限制,請參閱模型、 價格和速率限制頁面。
Veo 製作的視頻會使用SynthID(我們用於嵌入水印和識別AI 生成內容的工具)添加水印,並通過安全過濾器和記憶檢查流程,以幫助降低隱私、版權和偏見風險。
在調用Gemini API 之前,請確保您已安裝所選的SDK,並已配置好Gemini API 密鑰,可以使用。
如需將Veo 與Google Gen AI SDK 搭配使用,請確保您已安裝以下某個版本:
1. Python v1.10.0 或更高版本
2. TypeScript 和JavaScript v0.8.0 或更高版本
3. Go v1.0.0 或更高版本
您可以使用以下代碼通過Veo 生成視頻:
import time from google import genai from google.genai import types client = genai.Client() # read API key from GOOGLE_API_KEY operation = client.models.generate_videos( model="veo-2.0-generate-001", prompt="Panning wide shot of a calico kitten sleeping in the sunshine", config=types.GenerateVideosConfig( person_generation="dont_allow", # "dont_allow" or "allow_adult" aspect_ratio="16:9", # "16:9" or "9:16" ), ) while not operation.done: time.sleep(20) operation = client.operations.get(operation) for n, generated_video in enumerate(operation.response.generated_videos): client.files.download(file=generated_video.video) generated_video.video.save(f"video{n}.mp4") # save the video
import { GoogleGenAI } from "@google/genai"; import { createWriteStream } from "fs"; import { Readable } from "stream"; const ai = new GoogleGenAI({ apiKey: "GOOGLE_API_KEY" }); async function main() { let operation = await ai.models.generateVideos({ model: "veo-2.0-generate-001", prompt: "Panning wide shot of a calico kitten sleeping in the sunshine", config: { personGeneration: "dont_allow", aspectRatio: "16:9", }, }); while (!operation.done) { await new Promise((resolve) => setTimeout(resolve, 10000)); operation = await ai.operations.getVideosOperation({ operation: operation, }); } operation.response?.generatedVideos?.forEach(async (generatedVideo, n) => { const resp = await fetch(`${generatedVideo.video?.uri}&key=GOOGLE_API_KEY`); // append your API key const writer = createWriteStream(`video${n}.mp4`); Readable.fromWeb(resp.body).pipe(writer); }); } main();
# Use curl to send a POST request to the predictLongRunning endpoint # The request body includes the prompt for video generation curl "${BASE_URL}/models/veo-2.0-generate-001:predictLongRunning?key=${GOOGLE_API_KEY}" -H "Content-Type: application/json" -X "POST" -d '{ "instances": [{ "prompt": "Panning wide shot of a calico kitten sleeping in the sunshine" } ], "parameters": { "aspectRatio": "16:9", "personGeneration": "dont_allow", } }' | tee result.json | jq .name | sed 's/"//g' > op_name
此代碼大約需要2-3 分鐘才能運行完畢,但如果資源受限,則可能需要更長時間。運行完成後,您應該會看到如下視頻:
如果您看到錯誤消息,而不是視頻,則表示資源有限,您的請求無法完成。在這種情況下,請再次運行代碼。
生成的視頻會在服務器上存儲2 天,之後就會被移除。如果您想保存生成的視頻的本地副本,則必須在生成後的2 天內運行result()和save()。
您還可以使用圖片生成視頻。以下代碼使用Imagen 生成圖片,然後使用生成的圖片作為生成的視頻的起始幀。
首先,使用Imagen生成圖片:
prompt="Panning wide shot of a calico kitten sleeping in the sunshine", imagen = client.models.generate_images( model="imagen-3.0-generate-002", prompt=prompt, config=types.GenerateImagesConfig( aspect_ratio="16:9", number_of_images=1 ) ) imagen.generated_images[0].image
import { GoogleGenAI } from "@google/genai"; const ai = new GoogleGenAI({ apiKey: "GOOGLE_API_KEY" }); const response = await ai.models.generateImages({ model: "imagen-3.0-generate-002", prompt: "Panning wide shot of a calico kitten sleeping in the sunshine", config: { numberOfImages: 1, }, }); // you'll pass response.generatedImages[0].image.imageBytes to Veo
然後,使用生成的圖片作為第一幀生成視頻:
operation = client.models.generate_videos( model="veo-2.0-generate-001", prompt=prompt, image = imagen.generated_images[0].image, config=types.GenerateVideosConfig( # person_generation only accepts "dont_allow" for image-to-video aspect_ratio="16:9", # "16:9" or "9:16" number_of_videos=2 ), ) # Wait for videos to generate while not operation.done: time.sleep(20) operation = client.operations.get(operation) for n, video in enumerate(operation.response.generated_videos): fname = f'with_image_input{n}.mp4' print(fname) client.files.download(file=video.video) video.video.save(fname)
import { GoogleGenAI } from "@google/genai"; import { createWriteStream } from "fs"; import { Readable } from "stream"; const ai = new GoogleGenAI({ apiKey: "GOOGLE_API_KEY" }); async function main() { // get image bytes from Imagen, as shown above let operation = await ai.models.generateVideos({ model: "veo-2.0-generate-001", prompt: "Panning wide shot of a calico kitten sleeping in the sunshine", image: { imageBytes: response.generatedImages[0].image.imageBytes, // response from Imagen mimeType: "image/png", }, config: { aspectRatio: "16:9", numberOfVideos: 2, }, }); while (!operation.done) { await new Promise((resolve) => setTimeout(resolve, 10000)); operation = await ai.operations.getVideosOperation({ operation: operation, }); } operation.response?.generatedVideos?.forEach(async (generatedVideo, n) => { const resp = await fetch( `${generatedVideo.video?.uri}&key=GOOGLE_API_KEY`, // append your API key ); const writer = createWriteStream(`video${n}.mp4`); Readable.fromWeb(resp.body).pipe(writer); }); } main();
(命名慣例因編程語言而異。)
1. prompt :視頻的文本提示。 image參數是可選的。
2. image :要用作視頻第一幀的圖片。 prompt參數是可選的。
3. negativePrompt :一個文本字符串,用於描述您想要阻止模型生成的內容
4. aspectRatio :更改生成的視頻的寬高比。支持的值為"16:9"和"9:16"。默認值為"16:9"。
5. personGeneration :允許模型生成人物視頻。支持以下值:
文本轉視頻生成:
"dont_allow" :禁止在圖片中包含人物或人臉。
"allow_adult" :生成包含成人但不包含兒童的視頻。
圖片轉視頻生成功能:
"dont_allow" :圖片轉視頻生成的默認值,也是唯一值。
6. numberOfVideos :請求的輸出視頻, 1或2 。
7. durationSeconds :每個輸出視頻的時長(以秒為單位),介於5和8之間。
8. enhance_prompt :啟用或停用提示重寫器。默認處於啟用狀態。
如需充分利用Veo,請在提示中加入視頻專用術語。 Veo 可以理解與以下內容相關的各種術語:
1.鏡頭構圖:指定鏡頭中的取景和正文數量(例如,“單人鏡頭”“雙人鏡頭”“肩上鏡頭”)。
2.相機定位和移動:使用“平視”“高角度”“蟲眼視角”“搖臂拍攝”“縮放拍攝”“平移拍攝”和“跟踪拍攝”等術語來控制相機的位置和移動。
3.對焦和鏡頭效果:使用“淺景深”“深景深”“柔焦”“微距鏡頭”和“廣角鏡頭”等術語來實現特定的視覺效果。
4.整體風格和主題:通過指定“科幻片”“愛情喜劇片”“動作片”或“動畫”等風格,引導Veo 的創意方向。您還可以描述您想要的正文和背景,例如“城市景觀”“自然”“車輛”或“動物”。
Veo 指南的這一部分包含您可以使用Veo 創建的視頻示例,並介紹瞭如何修改提示以生成不同的結果。
Veo 會在Gemini 中應用安全過濾器,以確保生成的視頻和上傳的照片不含冒犯性內容。我們會屏蔽違反條款和準則的提示。
好的提示應具有描述性且清晰。為了讓生成的視頻盡可能貼近您的預期,請先確定核心創意,然後通過添加關鍵字和修飾符來優化創意。
問題應包含以下元素:
1.正文:您希望在視頻中呈現的對象、人物、動物或場景。
2.背景:正文所處的背景或環境。
3.動作:正文正在執行的操作(例如行走、奔跑或轉頭)。
4.風格:可以是常規內容,也可以是非常具體的內容。考慮使用特定的電影類型關鍵字,例如恐怖片、黑色電影,或卡通等動畫風格。
5.相機運動:[可選] 相機的拍攝方式,例如航拍、平視、俯拍或低角度拍攝。
6.構圖:[可選] 畫面的取景方式,例如廣角鏡頭、特寫鏡頭或特特寫鏡頭。
7.Ambiance :[可選] 色彩和光線對場景的影響,例如藍色調、夜晚或暖色調。
以下提示可幫助您撰寫用於生成視頻的提示:
1.使用描述性語言:使用形容詞和副詞為Veo 描繪清晰的畫面。
2.提供背景信息:根據需要,添加背景信息以幫助模型了解您的需求。
3.參考特定藝術風格:如果您有特定的審美觀,請參考特定藝術風格或藝術運動。
4.利用提示工程工具:可考慮探索提示工程工具或資源,以幫助您優化提示並實現最佳結果。
5.增強個人和群組圖片中的面部細節:指定面部細節作為照片的焦點,例如在提示中使用肖像一詞。
本部分提供了幾個提示,重點介紹了描述性詳細信息如何提升每段視頻的效果。
本視頻演示瞭如何在問題中使用問題撰寫基礎知識中的元素。
提示 | 生成的輸出 |
---|---|
冰凍岩壁(背景)上正在融化的冰柱(正文)的特寫鏡頭(構圖),採用冷色調(氛圍),並通過縮放(攝像頭運動)來保持水滴的特寫細節(動作)。 | ![]() |
這些視頻演示瞭如何通過提供越來越具體的詳細信息來修改問題,以便Veo 按照您的喜好優化輸出結果。
提示 | 生成的輸出 | 分析 |
---|---|---|
攝像機推車拍攝,特寫了一名身穿綠色風衣的絕望男子。他正在使用帶有綠色霓虹燈的旋轉式壁掛電話撥打電話。它看起來像電影場景。 | ![]() | 這是根據提示生成的第一個視頻。 |
電影般的特寫鏡頭跟隨一位穿著風雨殘破的綠色風衣的絕望男子,他撥打著安裝在粗糙磚牆上的旋轉電話,而綠色霓虹燈的幽光籠罩著他。攝像機推近,顯示了他的下巴緊繃,以及他努力撥打電話時臉上刻印的絕望。淺景深將焦點對准他皺起的眉頭和黑色旋轉電話,背景被模糊化為霓虹色和模糊陰影的海洋,營造出緊迫感和孤獨感。 | ![]() | 提示越詳細,視頻的畫面越聚焦,環境越豐富。 |
視頻中,一台老式旋轉電話靠在牆上,牆上散發著詭異的綠色霓虹光芒,身穿綠色風衣的絕望男子正在使用這部電話,鏡頭以平滑的動作推向男子。攝像頭從中距離開始,慢慢靠近男子的臉部,展示他急切撥打電話時的慌張表情和眉上的汗水。畫面聚焦於男子的手,他的手指在撥號盤上摸索,拼命嘗試連接。綠色的霓虹燈在牆上投下長長的陰影,更增添了緊張的氛圍。畫面構圖旨在強調男子的孤獨和絕望,突出霓虹燈的明亮光芒與男子的堅定決心之間的鮮明對比。 | ![]() | 添加更多細節可讓正文呈現逼真的表情,並營造出生動而富有感染力的場景。 |
此示例演示了Veo 可能會針對簡單的問題生成的輸出。
提示 | 生成的輸出 |
---|---|
一隻毛髮如雪豹的可愛生物在冬季森林中漫步,採用3D 卡通風格渲染。 | ![]() |
此提示更詳細,並展示了生成的輸出結果,可能更接近您在視頻中想要的內容。
提示 | 生成的輸出 |
---|---|
以歡快的卡通風格製作短視頻3D 動畫場景。一隻可愛的生物,毛皮如雪豹,眼睛又大又有神,身形圓潤可愛,在奇幻的冬季森林中快樂地蹦跳。場景應包含圓形的白雪覆蓋的樹木、輕柔飄落的雪花,以及透過樹枝的溫暖陽光。該生物的彈跳動作和燦爛笑容應傳達出純粹的喜悅。採用明亮、歡快的色彩和俏皮的動畫,營造積極向上、溫暖人心的氛圍。 | ![]() |
以下示例展示瞭如何按每個基本元素優化問題。
以下示例展示瞭如何指定主題說明。
主題說明 | 提示 | 生成的輸出 |
---|---|---|
此說明可以包含一個主題,也可以包含多個主題和操作。在這裡,我們的主題是“白色混凝土公寓樓”。 | 一棟白色混凝土公寓樓的建築渲染圖,採用流暢的有機形狀,與茂密的綠色植物和未來主義元素無縫融合 | ![]() |
以下示例展示瞭如何指定上下文。
上下文 | 提示 | 生成的輸出 |
---|---|---|
主體所處的背景或環境非常重要。嘗試將正文置於各種背景下,例如繁忙的街道、外太空。 | 一顆衛星在外太空中漂浮,背景是月亮和一些星星。 | ![]() |
此示例展示瞭如何指定操作。
操作 | 提示 | 生成的輸出 |
---|---|---|
拍攝對像在做什麼,例如走路、跑步或轉頭。 | 寬鏡頭拍攝的畫面:一名女子在海灘上散步,在日落時分朝著地平線滿意而放鬆地凝視。 | ![]() |
此示例展示瞭如何指定樣式。
樣式 | 提示 | 生成的輸出 |
---|---|---|
您可以添加關鍵字來提升生成畫質,並使其更接近預期的風格,例如淺景深、電影畫面、極簡主義、超現實主義、復古、未來主義或雙重曝光。 | 黑色電影風格,一男一女在街上散步,神秘、電影感、黑白。 | ![]() |
此示例展示瞭如何指定相機運動。
相機移動 | 提示 | 生成的輸出 |
---|---|---|
攝像頭動作選項包括第一人稱視角拍攝、航拍、跟踪無人機視圖或跟踪拍攝。 | 在加拿大夜晚下雨時,從老式汽車駕駛艙拍攝的POV 鏡頭,具有電影質感。 | ![]() |
此示例展示瞭如何指定構圖。
構圖 | 提示 | 生成的輸出 |
---|---|---|
取景方式(廣角、特寫、低角度)。 | 特寫鏡頭拍攝的眼睛,其中反射出城市景色。 | ![]() |
製作一個視頻,其中包含廣角鏡頭拍攝的衝浪者手持衝浪板在沙灘上行走的畫面,以及美麗的日落,採用電影般的效果。 | ![]() |
此示例展示瞭如何指定氛圍。
氛圍 | 提示 | 生成的輸出 |
---|---|---|
調色板在攝影中發揮著至關重要的作用,會影響氛圍並傳達預期的情感。你可以嘗試使用“柔和的橙色暖色調”“自然光”“日出”或“日落”等指令。例如,溫暖的金色調可以為照片注入浪漫而富有氛圍感。 | 在陽光明媚的公園裡,一個女孩抱著可愛的金毛獵犬小狗的特寫鏡頭。 | ![]() |
電影般的特寫鏡頭,畫面中一位傷心的女士在雨中乘坐公交車,冷色調藍色,傷感氛圍。 | ![]() |
您可以使用Veo 的圖片轉視頻功能,讓圖片動起來。 您可以使用現有素材資源,也可以嘗試使用Imagen生成新素材資源。
提示 | 生成的輸出 |
---|---|
手持巧克力棒的兔子。 | ![]() |
兔子逃跑了。 | ![]() |
否定提示是一種強大的工具,有助於指定您不希望在視頻中出現的元素。在“否定提示”字樣後面,說明您想要阻止模型生成的內容。請按照以下提示操作。
❌ 請勿使用指令性語言或“沒有”或“不”等字詞。例如,“無牆壁”或“不顯示牆壁”。
✅ 請描述您不想看到的內容。例如,“牆、框架”,表示您不希望視頻中出現牆或框架。
提示 | 生成的輸出 |
---|---|
生成一個簡短的樣式化動畫,其中顯示一棵孤獨的大橡樹,葉子在強風中劇烈搖擺。樹應採用略微誇張、不拘一格的形式,並具有動態流暢的樹枝。葉子應呈現各種秋色,在風中旋轉舞動。動畫應使用溫暖、富有吸引力的配色方案。 | ![]() |
生成一個簡短的樣式化動畫,其中顯示一棵孤獨的大橡樹,葉子在強風中劇烈搖擺。樹應採用略微誇張、不拘一格的形式,並具有動態流暢的樹枝。葉子應呈現各種秋色,在風中旋轉舞動。動畫應使用溫暖、富有吸引力的配色方案。 包含負面提示- 城市背景、人工建築、黑暗、暴風或威脅氣氛。 | ![]() |
Gemini Veo 視頻生成功能支持以下兩個寬高比:
寬高比 | 說明 |
---|---|
寬屏或16:9 | 電視、顯示器和手機屏幕(橫向)的最常用寬高比。如果您想拍攝更多背景(例如風景),請使用這種寬高比。 |
縱向或9:16 | 旋轉的寬屏。這種寬高比深受短視頻應用(例如YouTube Shorts)的歡迎。可將這種寬高比用於具有強烈垂直方向的肖像或較高對象,例如建築物、樹或瀑布。 |
此提示是寬屏寬高比為16:9 的示例。
提示 | 生成的輸出 |
---|---|
製作一段視頻,畫面中一名男子在1970 年代的棕櫚泉駕駛紅色敞篷車,無人機跟踪拍攝,陽光溫暖,陰影長長。 | ![]() |
此提示是縱向寬高比為9:16 的示例。
提示 | 生成的輸出 |
---|---|
製作一個視頻,重點展示茂密熱帶雨林中雄偉壯觀的夏威夷瀑布的流暢動作。重點呈現逼真的水流、細緻的樹葉和自然光線,營造寧靜氛圍。拍攝奔騰的河水、迷霧般的氛圍以及透過茂密樹冠灑落的陽光。使用流暢的電影鏡頭運鏡來展示瀑布及其周圍環境。力求營造寧靜、真實的色調,將觀看者帶入夏威夷熱帶雨林的寧靜美景。 | ![]() |
你可以通過Veo Colab 獲得更多生成AI 視頻的經驗。