|
@@ -1,6 +1,7 @@
|
|
|
"""
|
|
|
@author: luojunhui
|
|
|
"""
|
|
|
+import json
|
|
|
import os
|
|
|
import time
|
|
|
import datetime
|
|
@@ -31,23 +32,23 @@ BATCH_SIZE = int(config.getConfigValue("video_extract_batch_size"))
|
|
|
|
|
|
def generate_transforming_prompt(title):
|
|
|
video_transforming_prompt = f"""
|
|
|
- 理解视频内容
|
|
|
+ 理解输入的视频内容
|
|
|
视频的标题是 {title}
|
|
|
你是一名视频分析专家,你非常精通视频的内容的总结,我会给出你视频及视频的标题,现在请你进行仔细的视频分析,并按照以下要求进行回答
|
|
|
#要求
|
|
|
- 1.输出20个以上,30个以下的中文字符输出视频的选题,选题应该要达到使人能从选题中理解到视频主要想表达的内容,要包含这个视频的关键性内容和亮点内容,并针对你的选题进行关键信息和亮点的详细描述;
|
|
|
- 2.用中文字符精简的结构性输出视频的主要内容,需要包含该视频描述的核心事件或观点,字符数量要求在180到230之间;
|
|
|
+ 1.20个以上,30个以下的中文字符输出视频的选题,选题应该要达到使人能从选题中理解到视频主要想表达的内容,要包含这个视频的关键性内容和亮点内容,并针对你的选题进行关键信息和亮点的详细描述;
|
|
|
+ 2.用中文概括视频的主要内容,需要包含该视频描述的核心事件或观点,可以包括具体事例。要求内容通顺易懂具有一定可读性,字数在180到230之间;
|
|
|
3.请严格控制输出的内容能够被正确解析为JSON;
|
|
|
output in JSON format with keys:
|
|
|
- 选题(str)
|
|
|
- 描述(str)//主要内容
|
|
|
+ 选题(str), 用 theme 来作为 key
|
|
|
+ 描述(str), 用 description 来作为 key
|
|
|
你需要注意
|
|
|
1.关注我给出的视频中的主要内容,生成的描述主要面向的是50岁以上的老年人,语言风格要适配用户群体;
|
|
|
2.请针对视频的内容本身输出客观、具象的回答,你的分析必须基于视频内容,不能凭空想象;
|
|
|
2.信息缺失和无法分析理解的部分请你忽略,不能自行编造回答
|
|
|
3.请只描述客观事实,不要加入任何主观评价性语言;请使用专业语言进行回答。不要出现概括性描述、主观猜测,抽象表述
|
|
|
4.语言表达上注意不要使用倒装句、长句、复杂句,尽量使用陈述句、简单句;
|
|
|
- 直接用json格式直接输出结论,不要做任何其他的解释或说明
|
|
|
+ 不要做任何其他的解释或说明,不要出现```json等字段,返回的结果的数据结果是字典dict
|
|
|
"""
|
|
|
return video_transforming_prompt
|
|
|
|
|
@@ -246,6 +247,10 @@ class GenerateTextFromVideo(object):
|
|
|
video_file=google_file
|
|
|
)
|
|
|
if video_text:
|
|
|
+ print(type(video_text))
|
|
|
+ print(video_text)
|
|
|
+ if type(video_text) == dict:
|
|
|
+ video_text = json.dumps(video_text, ensure_ascii=False)
|
|
|
update_sql = f"""
|
|
|
update video_content_understanding
|
|
|
set understanding_status = %s, video_text = %s, file_state = %s
|