全部產品
Search
文件中心

Hologres:最佳實務:基於AI Function的遊戲廣告視頻產生

更新時間:Apr 01, 2026

本文以三國塔防遊戲《箭塔守漢中》為例,示範如何基於 Hologres AI Function,從遊戲原始素材出發,通過 SQL 自動產生主題角色圖、廣告分鏡指令碼,並最終產生10秒廣告視頻。

背景介紹

在遊戲行業中,廣告素材生產是拉新投放和版本宣發中的核心環節。尤其在買量情境下,團隊通常需要在短時間內批量產生不同風格、不同主題、不同賣點的視頻/圖片廣告素材,用於測試點擊率、轉化率和使用者偏好。

傳統廣告製作方式主要依賴人工完成素材整理、創意策劃、海報設計、分鏡編寫和視訊剪輯,存在以下痛點:

  • 原始素材分散:角色圖、情境圖、道具圖、遊戲介紹、賣點文案通常分散在多個系統中,難以統一管理。

  • 創意生產效率低:每做一條廣告,都需要從頭構思主題、篩選素材、撰寫指令碼並進行視頻製作,周期較長。

  • 多版本測試成本高:買量廣告需要進行大量 A/B Test,人工方式難以支撐高頻迭代。

  • 投放與素材脫節:廣告素材、指令碼版本和投放效果資料之間缺少統一沉澱,難以形成最佳化閉環。

基於 Hologres AI Function,可以將遊戲原始素材管理、素材產生、廣告營銷內容產生、廣告投放效果分析串聯起來,形成一套完整的 AI 廣告視頻生產流程。

方案優勢

本方案的核心價值在於:以 Hologres 為 AI 素材生產中台,整合多模型能力,實現廣告智能素材的自動化產生。

  • 全 SQL 鏈路:無需複雜編程,資料工程師僅通過 SQL 即可在 Hologres 中完成 AI 模型調用、素材整合和智能營銷內容產生,門檻極低。

  • 統一管理遊戲素材:通過 Hologres 表結構統一管理遊戲的多種素材,涵蓋圖片、視頻、音頻等多模態資料,可以有效與廣告投放資料混合分析。

  • 端到端自動化:覆蓋從角色變體、分鏡指令碼到視頻合成的全流程,實現分鐘級產出。

  • 高效擴充性:支援多情境的廣告營銷內容批量產生,大幅提升內容生產效率和投放效率。

方案完整流程

通過 AI Function 產生遊戲廣告視頻的完整流程如下:

  1. 在 Hologres 中儲存遊戲資訊的原始物料。

  2. 利用 qwen-image 模型從元素物料產生各個主題的圖片庫。

  3. 按照提示詞,召回主題圖片,利用 qwen-max 產生分鏡指令碼。

  4. 主題圖片 + 分鏡指令碼 + wan 模型產生遊戲廣告視頻。

  5. 選擇合適的廣告視頻進行投放。

前提條件

  • 已建立 Hologres 執行個體,且執行個體版本為 V3.2 及以上。

  • 已在 Hologres 中部署所需的 AI 模型,包括圖片產生模型(如 qwen-image 系列)、文本產生模型(如 qwen 系列)和視頻產生模型(如 wan 系列)。部署方式詳見AI模型與部署

  • 已準備 OSS Bucket 用於儲存產生的圖片和視頻素材,並配置了相應的 RAM 角色授權。

步驟一:準備遊戲資訊物料表

在 Hologres 中建立一張遊戲資訊的物料表,用於儲存遊戲的基本資料和原始素材路徑。

-- 建立遊戲資訊表
CREATE TABLE game_info(
    name TEXT,
    intro TEXT,
    motivation TEXT,
    art_style TEXT,
    material_list TEXT[]
);

-- 插入遊戲資訊
INSERT INTO game_info (name, intro, motivation, art_style, material_list)
VALUES (
    '箭塔守漢中',
    '《箭塔守漢中》是一款輕鬆休閑的三國塔防遊戲。風雲激蕩的三國時代,你將化身為一軍之帥,肩負守土之責!
    遊戲方式:
    1. 通過拖拽將各種防禦塔放置在預設的路徑旁。
    2. 點擊升級已有的防禦塔,提升其威力。
    3. 在關鍵時刻,點擊釋放武將技能,瞬間扭轉戰局。',
    '策略塔防',
    '扁平、中國風、簡約小人',
    ARRAY[
        'oss://<BucketName>/images/liubei.png',
        'oss://<BucketName>/images/lvbu.png'
    ]
);

其中 material_list 儲存了遊戲角色的原始素材圖片在 OSS 中的路徑。

素材樣本:遊戲裡真實的角色、背景等圖片。

oss://ai-demo-dataset/images/liubei.png

oss://ai-demo-dataset/images/lvbu.png

image.png

image.png

劉備

呂布

步驟二:建立主題圖片產生提示詞表

從遊戲原始角色圖片分化出各種主題風格,用於廣告素材的產生。

-- 建立主題風格提示詞表
CREATE TABLE video_style(
    name TEXT PRIMARY KEY,
    prompt TEXT
);

-- 插入不同主題的提示詞
INSERT INTO video_style VALUES
('北境梟雄', '保持人物肖像不變,產生穿著身披厚重的黑色毛領金屬鎧甲,鎧甲上凝結著冰霜與戰火的痕迹。冷峻的藍調光線,史詩級電影感,細節驚人的Q版人物。'),
('雲海劍仙', '保持人物肖像不變,產生氣質儒雅的三國謀士,化身仙風道骨的劍仙。他身著月白色寬袖道袍,袍上有水墨山水的暗紋的Q版人物。'),
('幽冥夜行', '保持人物肖像不變,產生化身為神秘的暗影刺客。他身著啞光黑色的貼身夜行衣,戴著遮住半臉的面具的Q版人物。'),
('黃金鎧甲', '保持人物肖像不變,產生身穿一套極其華麗、裝飾著龍紋與珠寶的黃金鎧甲,披著猩紅色的絲綢鬥篷的Q版人物。');

步驟三:產生主題圖片庫

為每個角色產生不同主題下的圖片。本例中為 2 個角色分別產生 4 個主題的圖片,調用 qwen-image-2.0-pro 模型。

-- 建立產生圖片的結果表
CREATE TABLE generated_images(
    game_name TEXT,
    style_name TEXT,
    style_desc TEXT,
    character1 TEXT,
    character2 TEXT
);

-- 批量產生主題圖片並儲存結果
WITH person_prompt AS (
    SELECT game_info.name AS game_name,
           video_style.name AS style_name,
           material_list[1] AS character1,
           material_list[2] AS character2,
           prompt
    FROM game_info, video_style
    WHERE game_info.name = '箭塔守漢中'
),
gen_image AS (
    SELECT game_name, style_name, prompt AS style_desc,
        ai_gen('qwen_image', json_build_object(
            'prompt', prompt,
            'reference_urls', array[character1],
            'parameters', json_build_object(
                'size', '1280*720',
                'n', 1,
                'watermark', false
            ),
            'output_dir', 'oss://<BucketName>/images/'
        )::text, to_file(character1, 'oss-cn-hangzhou-internal.aliyuncs.com',
            'acs:ram::<AccountId>:role/<RoleName>')) AS obj1,
        ai_gen('qwen_image', json_build_object(
            'prompt', prompt,
            'reference_urls', array[character2],
            'parameters', json_build_object(
                'size', '1280*720',
                'n', 1,
                'watermark', false
            ),
            'output_dir', 'oss://<BucketName>/images/'
        )::text, to_file(character2, 'oss-cn-hangzhou-internal.aliyuncs.com',
            'acs:ram::<AccountId>:role/<RoleName>')) AS obj2
    FROM person_prompt
),
image_urls AS (
    SELECT game_name, style_name, style_desc,
           obj1::json->'image_oss_paths' ->> 0 AS character1,
           obj2::json->'image_oss_paths' ->> 0 AS character2
    FROM gen_image
)
INSERT INTO generated_images SELECT * FROM image_urls;

執行完成後,generated_images 表中將儲存每個角色在各個主題下的產生圖片 OSS 路徑。

image

劉備

呂布

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

步驟四:產生分鏡指令碼

將主題圖片作為視頻物料,調用大語言模型產生廣告分鏡指令碼。

-- 建立提示詞模板表
CREATE TABLE prompts (
    id BIGINT,
    prompt TEXT
);

-- 插入分鏡指令碼產生的提示詞模板
INSERT INTO prompts VALUES (10,
'你的任務是為手遊行業產生一份用於投放廣告的10秒視頻素材文案。

<遊戲名稱>{0}</遊戲名稱>
<遊戲介紹>{1}</遊戲介紹>
<玩家動機>{2}</玩家動機>
<遊戲畫面風格>{3}</遊戲畫面風格>
<圖片物料>{4} {5}</圖片物料>

視頻素材結構:
1. 開場2秒:選取一張圖片,顯示遊戲名稱,展示誇張特效。
2. 中段6秒:展示1個核心玩法,選取2張圖片,描述角色動作和效果。
3. 結尾2秒:所有角色登場,使用行動號召。

要求:圍繞玩家動機展開,指令碼不超過10秒,使用圖片全路徑。');

使用模板產生分鏡指令碼,調用 qwen3.5-plus 模型:

-- 產生分鏡指令碼
WITH game_material AS (
    SELECT * FROM game_info
    LEFT JOIN generated_images ON name = game_name
    WHERE game_name = '箭塔守漢中' AND style_name = '雲海劍仙'
),
tmp_prompt AS (
    SELECT json_build_object(
        'prompt', prompt,
        'args', json_build_array(
            name, intro, motivation, art_style,
            to_file(character1, 'oss-cn-hangzhou-internal.aliyuncs.com',
                'acs:ram::<AccountId>:role/<RoleName>'),
            to_file(character2, 'oss-cn-hangzhou-internal.aliyuncs.com',
                'acs:ram::<AccountId>:role/<RoleName>')
        )
    ) AS prompt, character1, character2
    FROM game_material, prompts WHERE id = 10
),
story_script AS (
    SELECT ai_gen('qwen3_5_plus', prompt::text,
        to_file('oss://<BucketName>/images/placeholder.png',
            'oss-cn-hangzhou-internal.aliyuncs.com',
            'acs:ram::<AccountId>:role/<RoleName>')) AS script,
        character1, character2
    FROM tmp_prompt
)
SELECT script FROM story_script;

分鏡指令碼樣本:

image

步驟五:產生視頻

產生分鏡指令碼後,將指令碼和主題圖片傳入的視訊產生模型,產生廣告視頻。使用 wan2.6-r2v-flash 模型。

-- 產生廣告視頻(一次完成指令碼產生 + 視頻產生)
WITH game_material AS (
    SELECT * FROM game_info
    LEFT JOIN generated_images ON name = game_name
    WHERE game_name = '箭塔守漢中' AND style_name = '雲海劍仙'
),
tmp_prompt AS (
    SELECT json_build_object(
        'prompt', prompt,
        'args', json_build_array(
            name, intro, motivation, art_style,
            to_file(character1, 'oss-cn-hangzhou-internal.aliyuncs.com',
                'acs:ram::<AccountId>:role/<RoleName>'),
            to_file(character2, 'oss-cn-hangzhou-internal.aliyuncs.com',
                'acs:ram::<AccountId>:role/<RoleName>')
        )
    ) AS prompt, character1, character2
    FROM game_material, prompts WHERE id = 10
),
story_script AS (
    SELECT ai_gen('qwen3_5_plus', prompt::text,
        to_file('oss://<BucketName>/images/placeholder.png',
            'oss-cn-hangzhou-internal.aliyuncs.com',
            'acs:ram::<AccountId>:role/<RoleName>')) AS script,
        character1, character2
    FROM tmp_prompt
)
SELECT character1, character2,
    ai_gen('wan_26_r2v_flash', json_build_object(
        'prompt', script,
        'reference_urls', array[character1, character2],
        'parameters', json_build_object(
            'size', '1280*720',
            'duration', 10,
            'shot_type', 'multi',
            'audio', true,
            'watermark', true
        ),
        'output_dir', 'oss://<BucketName>/videos/'
    )::text,
    to_file('oss://<BucketName>/images/placeholder.png',
        'oss-cn-hangzhou-internal.aliyuncs.com',
        'acs:ram::<AccountId>:role/<RoleName>')) AS video_result,
    script
FROM story_script;

執行完成後,返回結果中的 video_url 欄位即為產生的廣告視頻地址,同時視頻也會儲存至指定的 OSS 目錄中。

步驟六:產生視頻效果預覽

產生的視頻:

  1. 北境梟雄

  2. 雲海劍仙