| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271 |
- 2025-12-03 19:19:34 - DeconstructionSystem - INFO - [logger.py:58] - DeconstructionLogger initialized successfully
- 2025-12-03 19:19:35 - DeconstructionSystem.src.workflows.script_workflow - INFO - [script_workflow.py:65] - ScriptWorkflow 初始化完成,model_provider: google_genai
- 2025-12-03 19:19:35 - DeconstructionSystem.__main__ - INFO - [run_batch_script.py:118] - 处理视频: channel_content_id=61626151 title=🔴退伍军人二次入伍的感人画面!若有战,召必回
- 2025-12-03 19:19:35 - DeconstructionSystem.src.workflows.script_workflow - INFO - [script_workflow.py:300] - === 开始执行脚本理解工作流(视频分析) ===
- 2025-12-03 19:19:35 - DeconstructionSystem.src.workflows.script_workflow - INFO - [script_workflow.py:92] - 工作流图构建完成 - 流程:视频上传 → 段落划分 → 实质提取 → 形式提取 → 分离结果 → 结果汇总
- 2025-12-03 19:19:35 - DeconstructionSystem.src.workflows.script_workflow - INFO - [script_workflow.py:98] - === 执行节点:视频上传 ===
- 2025-12-03 19:19:35 - DeconstructionSystem.src.components.functions.video_upload_function - INFO - [video_upload_function.py:68] - 开始下载视频: https://rescdn.yishihui.com/pipeline/video/f522fd33-1556-4928-ab5a-c5afdd3c9688.mp4
- 2025-12-03 19:19:35 - DeconstructionSystem.src.components.functions.video_upload_function - INFO - [video_upload_function.py:275] - 构建文件路径: /Users/jihuaqiang/piaoquan/aigc_how_decode_base_project_0916_1125/examples/61626151/61626151.mp4
- 2025-12-03 19:19:35 - DeconstructionSystem.src.components.functions.video_upload_function - INFO - [video_upload_function.py:153] - 未在examples目录下找到同名文件,开始下载...
- 2025-12-03 19:19:44 - DeconstructionSystem.src.components.functions.video_upload_function - INFO - [video_upload_function.py:203] - 视频下载完成,大小: 40.14 MB
- 2025-12-03 19:19:44 - DeconstructionSystem.src.components.functions.video_upload_function - INFO - [video_upload_function.py:82] - 视频文件路径: /var/folders/zg/ktsngwv13cd2wp32tyfx17_c0000gn/T/tmpjw23wkbs.mp4
- 2025-12-03 19:19:44 - DeconstructionSystem.src.utils.llm_invoker - INFO - [llm_invoker.py:164] - 上传视频到Gemini: /var/folders/zg/ktsngwv13cd2wp32tyfx17_c0000gn/T/tmpjw23wkbs.mp4
- 2025-12-03 19:21:01 - DeconstructionSystem.src.utils.llm_invoker - INFO - [llm_invoker.py:120] - 等待文件处理...
- 2025-12-03 19:21:13 - DeconstructionSystem.src.utils.llm_invoker - INFO - [llm_invoker.py:149] - 文件处理完成
- 2025-12-03 19:21:13 - DeconstructionSystem.src.utils.llm_invoker - INFO - [llm_invoker.py:172] - 视频上传并处理完成
- 2025-12-03 19:21:13 - DeconstructionSystem.src.components.functions.video_upload_function - INFO - [video_upload_function.py:114] - 视频上传成功,文件名称: None
- 2025-12-03 19:21:13 - DeconstructionSystem.src.workflows.script_workflow - INFO - [script_workflow.py:113] - 视频上传完成 - URI: https://generativelanguage.googleapis.com/v1beta/files/fn2em29ut33z
- 2025-12-03 19:21:13 - DeconstructionSystem.src.workflows.script_workflow - INFO - [script_workflow.py:129] - === 执行节点:脚本段落划分 ===
- 2025-12-03 19:21:13 - DeconstructionSystem.src.components.agents.script_section_division_agent - INFO - [script_section_division_agent.py:68] - === 开始脚本段落划分 ===
- 2025-12-03 19:21:13 - DeconstructionSystem.src.utils.llm_invoker - INFO - [llm_invoker.py:79] - 通过 URI 提取的 file_name 获取文件: fn2em29ut33z
- 2025-12-03 19:21:14 - DeconstructionSystem.src.components.agents.script_section_division_agent - INFO - [script_section_division_agent.py:81] - 执行段落划分
- 2025-12-03 19:21:14 - DeconstructionSystem.src.components.agents.script_section_division_agent - INFO - [script_section_division_agent.py:94] - 【段落划分】分析视频的分段结构
- 2025-12-03 19:21:14 - DeconstructionSystem.src.utils.llm_invoker - INFO - [llm_invoker.py:258] - Section划分 - 开始视频分析...
- 2025-12-03 19:21:48 - DeconstructionSystem.src.utils.llm_invoker - INFO - [llm_invoker.py:298] - Section划分 - 视频分析完成
- 2025-12-03 19:21:48 - DeconstructionSystem.src.components.agents.script_section_division_agent - INFO - [script_section_division_agent.py:189] - 段落划分详细结果:
- {
- "内容品类": "纪实/情感",
- "段落列表": [
- {
- "id": "段落1",
- "描述": "个人离别:一个士兵的深情告别与牺牲",
- "内容范围": [
- "0:00-0:12"
- ],
- "推理依据": "视频开篇通过聚焦一位士兵与他熟睡的婴儿之间的亲密告别,奠定了视频的感人基调,强调了个人为了职责所做的巨大牺牲。",
- "子项": [
- {
- "id": "段落1.1",
- "描述": "对熟睡婴儿的温柔吻别",
- "内容范围": [
- "0:00-0:05"
- ],
- "推理依据": "画面特写士兵轻吻婴儿的动作,以及字幕提示的“战友不舍吻别睡梦中的宝宝”,直接展现了这一核心情感瞬间。",
- "子项": []
- },
- {
- "id": "段落1.2",
- "描述": "压抑不住的离别悲伤",
- "内容范围": [
- "0:05-0:12"
- ],
- "推理依据": "士兵在起身离开时擦拭眼泪、面露悲伤的镜头,表现出其内心挣扎与不舍,突显了离别的痛苦。",
- "子项": []
- }
- ]
- },
- {
- "id": "段落2",
- "描述": "集体送别:家人对士兵的深情不舍与支持",
- "内容范围": [
- "0:12-1:50"
- ],
- "推理依据": "此段落将视角从个人扩展到多个士兵及其家庭的告别场景,展现了不同亲人间的真挚情感互动,揭示了军队生活背后家庭的默默支持和牺牲。画面中反复出现的'2025 二次入伍 愿世界和平!'与'新兵入伍季 告别亲人 保家卫国'的文字,强化了使命感和对和平的愿望。",
- "子项": [
- {
- "id": "段落2.1",
- "描述": "亲人与士兵的拥抱与安慰",
- "内容范围": [
- "0:12-0:30"
- ],
- "推理依据": "多个士兵与家人(包括朋友、伴侣、父母)拥抱的场景,以及家人流泪、士兵强忍悲痛的表情,展现了离别时刻的温暖与不舍。其中还有'被召回的退伍兵 军令如山老兵归队'的字幕,暗示了服役的责任感。",
- "子项": []
- },
- {
- "id": "段落2.2",
- "描述": "母亲们送别食物的温情瞬间",
- "内容范围": [
- "0:30-1:07"
- ],
- "推理依据": "多位母亲将食物送到即将入伍的士兵手中的画面,象征着母爱和家庭的牵挂,这种无声的关怀比言语更能触动人心。",
- "子项": []
- },
- {
- "id": "段落2.3",
- "描述": "跪地告别与紧紧相拥的泪水",
- "内容范围": [
- "1:07-1:50"
- ],
- "推理依据": "士兵跪地向长辈告别、与亲人紧紧相拥的画面,以及亲人脸上止不住的泪水,将离别的悲伤推向高潮,表达了极度的不舍和对亲人的敬意。其中也出现了“幸福如花绽放在世间”的歌词,增加了影片的抒情感。",
- "子项": []
- }
- ]
- },
- {
- "id": "段落3",
- "描述": "启程远行:奔赴使命与和平的期望",
- "内容范围": [
- "1:50-3:26"
- ],
- "推理依据": "视频最后部分集中展示了士兵们告别家人后,整齐有序地踏上军旅征程的场景,不仅是对离别的总结,更是对未来职责的展望,并再次强调了'愿世界和平!'的宏大主题。",
- "子项": [
- {
- "id": "段落3.1",
- "描述": "最后抚摸与不舍的眼神",
- "内容范围": [
- "1:50-2:45"
- ],
- "推理依据": "亲人为士兵整理军装、轻抚面颊,以及他们在眼神中流露出的不舍与鼓励,是出发前最直接的情感表达,为即将到来的分离做了铺垫。",
- "子项": []
- },
- {
- "id": "段落3.2",
- "描述": "军人列队登车与家人的目送",
- "内容范围": [
- "2:45-3:26"
- ],
- "推理依据": "士兵们携带行李,整齐列队走向火车或巴士,以及亲人们在车旁奔跑、挥手告别的画面,象征着他们正式踏上保家卫国的征途。画面中再次出现'幸福如花绽放在世间'的歌词,与'2025 二次入伍 愿世界和平!'的文字共同传递了奉献与希望的复杂情感。",
- "子项": []
- }
- ]
- }
- ]
- }
- 2025-12-03 19:21:48 - DeconstructionSystem.src.components.agents.script_section_division_agent - INFO - [script_section_division_agent.py:86] - 段落划分结果:
- {
- "内容品类": "纪实/情感",
- "段落列表": [
- {
- "id": "段落1",
- "描述": "个人离别:一个士兵的深情告别与牺牲",
- "内容范围": [
- "0:00-0:12"
- ],
- "推理依据": "视频开篇通过聚焦一位士兵与他熟睡的婴儿之间的亲密告别,奠定了视频的感人基调,强调了个人为了职责所做的巨大牺牲。",
- "子项": [
- {
- "id": "段落1.1",
- "描述": "对熟睡婴儿的温柔吻别",
- "内容范围": [
- "0:00-0:05"
- ],
- "推理依据": "画面特写士兵轻吻婴儿的动作,以及字幕提示的“战友不舍吻别睡梦中的宝宝”,直接展现了这一核心情感瞬间。",
- "子项": []
- },
- {
- "id": "段落1.2",
- "描述": "压抑不住的离别悲伤",
- "内容范围": [
- "0:05-0:12"
- ],
- "推理依据": "士兵在起身离开时擦拭眼泪、面露悲伤的镜头,表现出其内心挣扎与不舍,突显了离别的痛苦。",
- "子项": []
- }
- ]
- },
- {
- "id": "段落2",
- "描述": "集体送别:家人对士兵的深情不舍与支持",
- "内容范围": [
- "0:12-1:50"
- ],
- "推理依据": "此段落将视角从个人扩展到多个士兵及其家庭的告别场景,展现了不同亲人间的真挚情感互动,揭示了军队生活背后家庭的默默支持和牺牲。画面中反复出现的'2025 二次入伍 愿世界和平!'与'新兵入伍季 告别亲人 保家卫国'的文字,强化了使命感和对和平的愿望。",
- "子项": [
- {
- "id": "段落2.1",
- "描述": "亲人与士兵的拥抱与安慰",
- "内容范围": [
- "0:12-0:30"
- ],
- "推理依据": "多个士兵与家人(包括朋友、伴侣、父母)拥抱的场景,以及家人流泪、士兵强忍悲痛的表情,展现了离别时刻的温暖与不舍。其中还有'被召回的退伍兵 军令如山老兵归队'的字幕,暗示了服役的责任感。",
- "子项": []
- },
- {
- "id": "段落2.2",
- "描述": "母亲们送别食物的温情瞬间",
- "内容范围": [
- "0:30-1:07"
- ],
- "推理依据": "多位母亲将食物送到即将入伍的士兵手中的画面,象征着母爱和家庭的牵挂,这种无声的关怀比言语更能触动人心。",
- "子项": []
- },
- {
- "id": "段落2.3",
- "描述": "跪地告别与紧紧相拥的泪水",
- "内容范围": [
- "1:07-1:50"
- ],
- "推理依据": "士兵跪地向长辈告别、与亲人紧紧相拥的画面,以及亲人脸上止不住的泪水,将离别的悲伤推向高潮,表达了极度的不舍和对亲人的敬意。其中也出现了“幸福如花绽放在世间”的歌词,增加了影片的抒情感。",
- "子项": []
- }
- ]
- },
- {
- "id": "段落3",
- "描述": "启程远行:奔赴使命与和平的期望",
- "内容范围": [
- "1:50-3:26"
- ],
- "推理依据": "视频最后部分集中展示了士兵们告别家人后,整齐有序地踏上军旅征程的场景,不仅是对离别的总结,更是对未来职责的展望,并再次强调了'愿世界和平!'的宏大主题。",
- "子项": [
- {
- "id": "段落3.1",
- "描述": "最后抚摸与不舍的眼神",
- "内容范围": [
- "1:50-2:45"
- ],
- "推理依据": "亲人为士兵整理军装、轻抚面颊,以及他们在眼神中流露出的不舍与鼓励,是出发前最直接的情感表达,为即将到来的分离做了铺垫。",
- "子项": []
- },
- {
- "id": "段落3.2",
- "描述": "军人列队登车与家人的目送",
- "内容范围": [
- "2:45-3:26"
- ],
- "推理依据": "士兵们携带行李,整齐列队走向火车或巴士,以及亲人们在车旁奔跑、挥手告别的画面,象征着他们正式踏上保家卫国的征途。画面中再次出现'幸福如花绽放在世间'的歌词,与'2025 二次入伍 愿世界和平!'的文字共同传递了奉献与希望的复杂情感。",
- "子项": []
- }
- ]
- }
- ]
- }
- 2025-12-03 19:21:48 - DeconstructionSystem.src.workflows.script_workflow - INFO - [script_workflow.py:144] - 脚本段落划分完成 - 内容品类: 纪实/情感, 段落数: 3
- 2025-12-03 19:21:48 - DeconstructionSystem.src.workflows.script_workflow - INFO - [script_workflow.py:157] - === 执行节点:实质元素提取 ===
- 2025-12-03 19:21:48 - DeconstructionSystem.src.components.agents.script_substance_extraction_agent - INFO - [script_substance_extraction_agent.py:95] - === 开始实质元素提取(完整流程) ===
- 2025-12-03 19:21:48 - DeconstructionSystem.src.utils.llm_invoker - INFO - [llm_invoker.py:79] - 通过 URI 提取的 file_name 获取文件: fn2em29ut33z
- 2025-12-03 19:21:48 - DeconstructionSystem.src.components.agents.script_substance_extraction_agent - INFO - [script_substance_extraction_agent.py:137] - 意图支撑评估输入: 灵感点=2, 目的点=1, 关键点(实质类)=6
- 2025-12-03 19:21:48 - DeconstructionSystem.src.components.agents.script_substance_extraction_agent - INFO - [script_substance_extraction_agent.py:143] - ▶ Step 1: 提取具体元素
- 2025-12-03 19:21:48 - DeconstructionSystem.src.workflows.script_workflow - ERROR - [script_workflow.py:178] - 实质元素提取失败: Invalid format specifier ' "实质", "二级": "具体元素"' for object of type 'str'
- Traceback (most recent call last):
- File "/Users/jihuaqiang/piaoquan/aigc_how_decode_base_project_0916_1125/src/workflows/script_workflow.py", line 169, in _substance_extraction_node
- result = self.substance_agent.process(state)
- File "/Users/jihuaqiang/piaoquan/aigc_how_decode_base_project_0916_1125/src/components/agents/script_substance_extraction_agent.py", line 144, in process
- concrete_elements = self._step1_extract_concrete_elements(video_file)
- File "/Users/jihuaqiang/piaoquan/aigc_how_decode_base_project_0916_1125/src/components/agents/script_substance_extraction_agent.py", line 291, in _step1_extract_concrete_elements
- "维度": {"一级": "实质", "二级": "具体元素"},
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- ValueError: Invalid format specifier ' "实质", "二级": "具体元素"' for object of type 'str'
- 2025-12-03 19:21:48 - DeconstructionSystem.src.workflows.script_workflow - INFO - [script_workflow.py:195] - === 执行节点:形式元素提取 ===
- 2025-12-03 19:21:48 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:86] - === 开始形式元素提取(视频版,完整流程) ===
- 2025-12-03 19:21:48 - DeconstructionSystem.src.utils.llm_invoker - INFO - [llm_invoker.py:79] - 通过 URI 提取的 file_name 获取文件: fn2em29ut33z
- 2025-12-03 19:21:48 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:151] - 输入: 具体元素=0, 具象概念=0, 抽象概念=0, 灵感点=2, 目的点=1, 形式关键点=1
- 2025-12-03 19:21:48 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:163] - ▶ Step 1: 提取具象概念形式
- 2025-12-03 19:21:48 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - WARNING - [script_form_extraction_agent.py:346] - ⚠️ 没有具象概念,跳过具象概念形式提取
- 2025-12-03 19:21:48 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:167] - ✅ Step 1 完成 - 提取了 0 个具象概念形式
- 2025-12-03 19:21:48 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:177] - ▶ Step 2: 提取具体元素形式
- 2025-12-03 19:21:48 - DeconstructionSystem.src.utils.llm_invoker - INFO - [llm_invoker.py:258] - 具体元素形式提取 - 开始视频分析...
- 2025-12-03 19:22:26 - DeconstructionSystem.src.utils.llm_invoker - INFO - [llm_invoker.py:298] - 具体元素形式提取 - 视频分析完成
- 2025-12-03 19:22:26 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:532] - Step 2 完成 - 提取了 3 个具体元素形式
- 2025-12-03 19:22:26 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:181] - ✅ Step 2 完成 - 提取了 3 个具体元素形式
- 2025-12-03 19:22:26 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:185] - 具体元素形式列表: ['蒙太奇剪辑', '慢节奏抒情配乐', '情感特写与中景构图']
- 2025-12-03 19:22:26 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:191] - ▶ Step 3: 提取整体形式
- 2025-12-03 19:22:26 - DeconstructionSystem.src.utils.llm_invoker - INFO - [llm_invoker.py:258] - 整体形式提取 - 开始视频分析...
- 2025-12-03 19:22:58 - DeconstructionSystem.src.utils.llm_invoker - INFO - [llm_invoker.py:298] - 整体形式提取 - 视频分析完成
- 2025-12-03 19:22:58 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:657] - Step 3 完成 - 提取了 3 个整体形式
- 2025-12-03 19:22:58 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:199] - ✅ Step 3 完成 - 提取了 3 个整体形式
- 2025-12-03 19:22:58 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:203] - 整体形式列表: ['叙事性结构', '情感渲染策略', '多模态信息整合与主题强化']
- 2025-12-03 19:22:58 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:213] - 📊 Step 1-3 汇总 - 总计提取: 6 个形式元素 (具象概念形式:0, 具体元素形式:3, 整体形式:3)
- 2025-12-03 19:22:58 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:221] - ▶ Step 4: 共性分析
- 2025-12-03 19:22:58 - DeconstructionSystem.src.utils.llm_invoker - INFO - [llm_invoker.py:258] - 形式共性分析 - 开始视频分析...
- 2025-12-03 19:23:19 - DeconstructionSystem.src.utils.llm_invoker - INFO - [llm_invoker.py:298] - 形式共性分析 - 视频分析完成
- 2025-12-03 19:23:19 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:720] - 共性分析完成 - 统计了 6 个形式元素的频次
- 2025-12-03 19:23:19 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:226] - ✅ Step 4 完成 - 分析了 6 个形式元素的频次
- 2025-12-03 19:23:19 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:235] - 频次分布: {1: 6}
- 2025-12-03 19:23:19 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:241] - 高频元素(前3): [('蒙太奇剪辑', 1), ('慢节奏抒情配乐', 1), ('情感特写与中景构图', 1)]
- 2025-12-03 19:23:19 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:246] - ▶ Step 5: 多维度评分
- 2025-12-03 19:23:19 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:731] - 【多维度评分】输入: 6 个形式元素
- 2025-12-03 19:23:19 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:732] - 评分目标: 灵感点=2个, 目的点=1个, 关键点=1个
- 2025-12-03 19:23:19 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:809] - 灵感点分批评估: 1 批
- 2025-12-03 19:23:19 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:809] - 目的点分批评估: 1 批
- 2025-12-03 19:23:19 - DeconstructionSystem.src.components.agents.script_form_extraction_agent - INFO - [script_form_extraction_agent.py:809] - 关键点分批评估: 1 批
|