|
@@ -3,6 +3,7 @@
|
|
|
"""
|
|
|
import os
|
|
|
import time
|
|
|
+import datetime
|
|
|
import traceback
|
|
|
|
|
|
import requests
|
|
@@ -30,15 +31,16 @@ BATCH_SIZE = int(config.getConfigValue("video_extract_batch_size"))
|
|
|
|
|
|
def generate_transforming_prompt(title):
|
|
|
video_transforming_prompt = f"""
|
|
|
- 视频的标题是: {title}
|
|
|
+ 理解视频内容
|
|
|
+ 视频的标题是 {title}
|
|
|
你是一名视频分析专家,你非常精通视频的内容的总结,我会给出你视频及视频的标题,现在请你进行仔细的视频分析,并按照以下要求进行回答
|
|
|
#要求
|
|
|
- 1.30个以下的中文字符输出视频的选题,选题应该要达到使人能从选题中理解到视频主要想表达的内容,要包含这个视频的关键性内容和亮点内容,并针对你的选题进行关键信息和亮点的详细描述
|
|
|
- 2.用200个以内的中文字符精简的结构性输出视频的主要内容,需要包含该视频描述的核心事件或观点
|
|
|
+ 1.输出20个以上,30个以下的中文字符输出视频的选题,选题应该要达到使人能从选题中理解到视频主要想表达的内容,要包含这个视频的关键性内容和亮点内容,并针对你的选题进行关键信息和亮点的详细描述;
|
|
|
+ 2.用中文字符精简的结构性输出视频的主要内容,需要包含该视频描述的核心事件或观点,字符数量要求在180到230之间;
|
|
|
3.请严格控制输出的内容能够被正确解析为JSON;
|
|
|
- output in JSON format with keys:
|
|
|
- "theme": 选题
|
|
|
- "summary": 主要内容
|
|
|
+ output in JSON format with keys:
|
|
|
+ 选题(str)
|
|
|
+ 描述(str)//主要内容
|
|
|
你需要注意
|
|
|
1.关注我给出的视频中的主要内容,生成的描述主要面向的是50岁以上的老年人,语言风格要适配用户群体;
|
|
|
2.请针对视频的内容本身输出客观、具象的回答,你的分析必须基于视频内容,不能凭空想象;
|
|
@@ -112,7 +114,7 @@ class GenerateTextFromVideo(object):
|
|
|
query=update_sql,
|
|
|
params=(
|
|
|
new_status,
|
|
|
- int(time.time()),
|
|
|
+ datetime.datetime.now(),
|
|
|
ori_status,
|
|
|
task_id,
|
|
|
)
|
|
@@ -172,7 +174,7 @@ class GenerateTextFromVideo(object):
|
|
|
update_sql,
|
|
|
params=(
|
|
|
const.SUCCESS_STATUS,
|
|
|
- int(time.time()),
|
|
|
+ datetime.datetime.now(),
|
|
|
file_name,
|
|
|
file_state,
|
|
|
expire_time,
|
|
@@ -259,14 +261,14 @@ class GenerateTextFromVideo(object):
|
|
|
const.PROCESSING_STATUS
|
|
|
)
|
|
|
)
|
|
|
- # delete local file and google file
|
|
|
- if os.path.exists(video_local_path):
|
|
|
- os.remove(video_local_path)
|
|
|
-
|
|
|
- tqdm.write("video transform to text success, delete local file")
|
|
|
+ # # delete local file and google file
|
|
|
+ # if os.path.exists(video_local_path):
|
|
|
+ # os.remove(video_local_path)
|
|
|
+ #
|
|
|
+ # tqdm.write("video transform to text success, delete local file")
|
|
|
task_list.remove(task)
|
|
|
-
|
|
|
- self.google_ai_api.delete_video(file_name)
|
|
|
+ #
|
|
|
+ # self.google_ai_api.delete_video(file_name)
|
|
|
tqdm.write("delete video from google success: {}".format(file_name))
|
|
|
else:
|
|
|
# roll back status
|