From e66a5969f02eb23f7b7265803b5a04929b5cd052 Mon Sep 17 00:00:00 2001 From: linyq Date: Sat, 10 May 2025 16:45:25 +0800 Subject: [PATCH] =?UTF-8?q?actorref(tools):=20=E9=87=8D=E6=9E=84=E5=B7=A5?= =?UTF-8?q?=E5=85=B7=E6=A8=A1=E5=9D=97=E5=B9=B6=E6=B7=BB=E5=8A=A0=E6=97=A5?= =?UTF-8?q?=E5=BF=97=E8=AE=B0=E5=BD=95=E5=8A=9F=E8=83=BD-=20=E5=9C=A8=20ba?= =?UTF-8?q?se.py=20=E4=B8=AD=E6=B7=BB=E5=8A=A0=E4=BA=86=E8=B0=83=E8=AF=95?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E8=AE=B0=E5=BD=95=E8=A7=86=E9=A2=91=E5=8F=82?= =?UTF-8?q?=E6=95=B0=20-=20=E4=BF=AE=E6=94=B9=E4=BA=86=20generate=5Fscript?= =?UTF-8?q?=5Fdocu.py=20=E5=92=8C=20generate=5Fscript=5Fshort.py=20?= =?UTF-8?q?=E4=B8=AD=E7=9A=84=E8=A7=86=E8=A7=89=E5=92=8C=E6=96=87=E6=9C=AC?= =?UTF-8?q?=E5=88=86=E6=9E=90=E5=8F=82=E6=95=B0=E5=A4=84=E7=90=86=E9=80=BB?= =?UTF-8?q?=E8=BE=91=20-=20=E4=BC=98=E5=8C=96=E4=BA=86=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E4=BC=A0=E9=80=92=E5=92=8C=E8=A7=86=E8=A7=89=E5=88=86=E6=9E=90?= =?UTF-8?q?=E5=99=A8=E5=AE=9E=E4=BE=8B=E5=88=9B=E5=BB=BA=E8=BF=87=E7=A8=8B?= =?UTF-8?q?=20-=20=E5=9C=A8=20generate=5Fscript=5Fdocu.py=20=E4=B8=AD?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BA=86=E8=A7=86=E9=A2=91=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=A3=80=E6=9F=A5=E5=87=BD=E6=95=B0=E8=B0=83=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- webui/tools/base.py | 3 ++- webui/tools/generate_script_docu.py | 15 ++++++++++++++- webui/tools/generate_script_short.py | 9 ++++++--- 3 files changed, 22 insertions(+), 5 deletions(-) diff --git a/webui/tools/base.py b/webui/tools/base.py index 439e465..94aeae8 100644 --- a/webui/tools/base.py +++ b/webui/tools/base.py @@ -149,8 +149,9 @@ def chekc_video_config(video_params): adapter = HTTPAdapter(max_retries=retry_strategy) session.mount("https://", adapter) try: + logger.debug(video_params) session.post( - f"{config.app.get('narrato_api_url')}/video/config", + f"{config.app.get('narrato_api_url')}/admin/external-api-config/services", headers=headers, json=video_params, timeout=30, diff --git a/webui/tools/generate_script_docu.py b/webui/tools/generate_script_docu.py index 92cab5f..189d897 100644 --- a/webui/tools/generate_script_docu.py +++ b/webui/tools/generate_script_docu.py @@ -96,6 +96,7 @@ def generate_script_docu(params): 2. 视觉分析(批量分析每一帧) """ vision_llm_provider = st.session_state.get('vision_llm_providers').lower() + llm_params = dict() logger.debug(f"VLM 视觉大模型提供商: {vision_llm_provider}") try: @@ -113,6 +114,12 @@ def generate_script_docu(params): vision_base_url = st.session_state.get(f'vision_{vision_llm_provider}_base_url') # 创建视觉分析器实例 + llm_params = { + "vision_provider": vision_llm_provider, + "vision_api_key": vision_api_key, + "vision_model_name": vision_model, + "vision_base_url": vision_base_url, + } analyzer = create_vision_analyzer( provider=vision_llm_provider, api_key=vision_api_key, @@ -344,7 +351,13 @@ def generate_script_docu(params): text_api_key = config.app.get(f'text_{text_provider}_api_key') text_model = config.app.get(f'text_{text_provider}_model_name') text_base_url = config.app.get(f'text_{text_provider}_base_url') - + llm_params.update({ + "text_provider": text_provider, + "text_api_key": text_api_key, + "text_model_name": text_model, + "text_base_url": text_base_url + }) + chekc_video_config(llm_params) # 整理帧分析数据 markdown_output = parse_frame_analysis_to_markdown(analysis_json_path) diff --git a/webui/tools/generate_script_short.py b/webui/tools/generate_script_short.py index f21f901..0af09c4 100644 --- a/webui/tools/generate_script_short.py +++ b/webui/tools/generate_script_short.py @@ -36,9 +36,10 @@ def generate_script_short(tr, params, custom_clips=5): text_api_key = config.app.get(f'text_{text_provider}_api_key') text_model = config.app.get(f'text_{text_provider}_model_name') text_base_url = config.app.get(f'text_{text_provider}_base_url') - vision_api_key = st.session_state.get(f'vision_{text_provider}_api_key', "") - vision_model = st.session_state.get(f'vision_{text_provider}_model_name', "") - vision_base_url = st.session_state.get(f'vision_{text_provider}_base_url', "") + vision_llm_provider = st.session_state.get('vision_llm_providers').lower() + vision_api_key = st.session_state.get(f'vision_{vision_llm_provider}_api_key', "") + vision_model = st.session_state.get(f'vision_{vision_llm_provider}_model_name', "") + vision_base_url = st.session_state.get(f'vision_{vision_llm_provider}_base_url', "") narrato_api_key = config.app.get('narrato_api_key') update_progress(20, "开始准备生成脚本") @@ -50,9 +51,11 @@ def generate_script_short(tr, params, custom_clips=5): st.stop() api_params = { + "vision_provider": vision_llm_provider, "vision_api_key": vision_api_key, "vision_model_name": vision_model, "vision_base_url": vision_base_url or "", + "text_provider": text_provider, "text_api_key": text_api_key, "text_model_name": text_model, "text_base_url": text_base_url or ""