free-short-video 6.4.4 → 6.4.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,20 +1,20 @@
1
1
  ---
2
2
 
3
- # What's New in v6.4.4
3
+ # What's New in v6.4.5
4
4
 
5
5
  ## What's New
6
6
 
7
7
  ### Features & Improvements
8
8
 
9
- * **Image model selection enabled** — you can now choose the image model used for reference images, end frames, and standalone image generation directly in the Settings panel, instead of it being fixed to the built-in default.
9
+ * **Agnes 3.0 Flash as default text model** — all LLM-powered features (AI screenwriting, scene prompt generation, poetry splitting, manuscript segmentation) now use `agnes-3.0-flash`, Agnes AI's latest reasoning model. It delivers more stable end-to-end task execution, stronger instruction following in long contexts, and higher-quality structured JSON output compared to the previous `agnes-2.5-flash`.
10
10
 
11
- * **Agnes Image 2.5 Flash added and set as default** — the latest generation image model `agnes-image-2.5-flash` is now the default for both text-to-image and image-to-image workflows; the older `agnes-image-2.1-flash` and `agnes-image-2.0-flash` remain available as selectable options.
11
+ * **Reasoning capability (transparent)** — Agnes 3.0 Flash is a reasoning model that internally performs chain-of-thought before generating output. This happens transparently with no configuration needed; the API response format remains fully backward-compatible (`choices[0].message.content`).
12
12
 
13
- * **LLM upgraded to Agnes 2.5 Flash** — the deprecated `agnes-2.0-flash` text model is removed from the selector and replaced by `agnes-2.5-flash` for story, script, and narration generation, following the official model deprecation notice.
13
+ * **Fallback model list updated** — when the `/v1/models` endpoint is unreachable, the application now falls back to `["agnes-3.0-flash", "agnes-2.5-flash"]` for text model selection, ensuring graceful degradation.
14
14
 
15
15
  ---
16
16
 
17
- This is a maintenance release focused on model flexibility: open image model selection, a newer default image model, and migration off the deprecated text model.
17
+ The `agnes-2.5-flash` model remains available in the model selector for users who prefer it. No action is required after upgrading.
18
18
 
19
19
  ---
20
20
 
@@ -58,7 +58,7 @@ def strip_code_fence(text: str) -> str:
58
58
  class AgnesChatAPI:
59
59
  """Agnes LLM Chat API 封装(text + multimodal)。"""
60
60
 
61
- def __init__(self, api_key: str, model: str = "agnes-2.5-flash"):
61
+ def __init__(self, api_key: str, model: str = "agnes-3.0-flash"):
62
62
  self.api_key = api_key
63
63
  self.model = model
64
64
  # 基础 headers(不含 Authorization):每次请求前经 _auth_headers() 注入当前 Key
@@ -21,12 +21,12 @@ REQUEST_TIMEOUT = 20
21
21
 
22
22
  # 分组失败时的兜底列表
23
23
  _FALLBACK = {
24
- "text": [DEFAULT_TEXT_MODEL],
24
+ "text": [DEFAULT_TEXT_MODEL, "agnes-2.5-flash"],
25
25
  "image": [DEFAULT_IMAGE_MODEL, "agnes-image-2.1-flash", "agnes-image-2.0-flash"],
26
26
  "video": [DEFAULT_VIDEO_MODEL],
27
27
  }
28
28
 
29
- # 已废弃、应从可选列表中剔除的模型 ID(如 agnes-2.0-flash,官方已迁移至 agnes-2.5-flash)
29
+ # 已废弃、应从可选列表中剔除的模型 ID(如 agnes-2.0-flash,官方已迁移至新版本)
30
30
  _DEPRECATED_MODELS = {"agnes-2.0-flash"}
31
31
 
32
32
 
@@ -35,7 +35,7 @@ def _classify(model_id: str) -> str:
35
35
 
36
36
  - ``agnes-image*`` → image
37
37
  - ``agnes-video*`` → video
38
- - 其余(如 ``agnes-2.5-flash``)→ text
38
+ - 其余(如 ``agnes-3.0-flash``)→ text
39
39
  """
40
40
  if model_id.startswith("agnes-image"):
41
41
  return "image"
package/core/config.py CHANGED
@@ -18,7 +18,7 @@ CONFIG_FILE = os.path.join(CONFIG_DIR, "config.json")
18
18
  # ═══════════════════════════════════════════════════
19
19
  # 应用版本号(v6.1 新增:发版时同步更新,见 docs/dev/release_process.md)
20
20
  # ═══════════════════════════════════════════════════
21
- APP_VERSION = "6.4.4"
21
+ APP_VERSION = "6.4.5"
22
22
 
23
23
  # 未配置 API Key 时的统一报错文案(含免费获取与在线体验兜底,全站路由共用)
24
24
  API_KEY_MISSING_MSG = (
@@ -870,7 +870,7 @@ DURATION_FRAME_MAP = {
870
870
  # ═══════════════════════════════════════════════════
871
871
 
872
872
  # 各类型 Agnes 模型默认值(与三个 API 客户端的默认 model 对齐)
873
- DEFAULT_TEXT_MODEL = "agnes-2.5-flash"
873
+ DEFAULT_TEXT_MODEL = "agnes-3.0-flash"
874
874
  DEFAULT_IMAGE_MODEL = "agnes-image-2.5-flash"
875
875
  DEFAULT_VIDEO_MODEL = "agnes-video-v2.0"
876
876
 
@@ -75,7 +75,7 @@ class AnchorPipeline(MultiScenePipeline):
75
75
  api_key: str,
76
76
  task_id: str,
77
77
  dir_name: Optional[str] = None,
78
- chat_model: str = "agnes-2.5-flash",
78
+ chat_model: str = "agnes-3.0-flash",
79
79
  image_model: str = "agnes-image-2.5-flash",
80
80
  video_model: str = "agnes-video-v2.0",
81
81
  progress_callback: Optional[Callable] = None,
@@ -47,7 +47,7 @@ class CreativeVideoPipeline(
47
47
  api_key: str,
48
48
  task_id: str,
49
49
  dir_name: Optional[str] = None,
50
- chat_model: str = "agnes-2.5-flash",
50
+ chat_model: str = "agnes-3.0-flash",
51
51
  image_model: str = "agnes-image-2.5-flash",
52
52
  video_model: str = "agnes-video-v2.0",
53
53
  progress_callback: Optional[Callable] = None,
@@ -144,7 +144,7 @@ class ManuscriptVideoPipeline(MultiScenePipeline):
144
144
  api_key: str,
145
145
  task_id: str,
146
146
  dir_name: str = None,
147
- chat_model: str = "agnes-2.5-flash",
147
+ chat_model: str = "agnes-3.0-flash",
148
148
  image_model: str = "agnes-image-2.5-flash",
149
149
  video_model: str = "agnes-video-v2.0",
150
150
  progress_callback: Optional[Callable] = None,
@@ -73,7 +73,7 @@ class PoetryVideoPipeline(MultiScenePipeline):
73
73
  api_key: str,
74
74
  task_id: str,
75
75
  dir_name: Optional[str] = None,
76
- chat_model: str = "agnes-2.5-flash",
76
+ chat_model: str = "agnes-3.0-flash",
77
77
  video_model: str = "agnes-video-v2.0",
78
78
  progress_callback: Optional[callable] = None,
79
79
  shutdown_event: Optional = None,
@@ -37,7 +37,7 @@ class SimpleVideoPipeline(BasePipeline):
37
37
  api_key: str,
38
38
  task_id: str,
39
39
  dir_name: str = None,
40
- chat_model: str = "agnes-2.5-flash",
40
+ chat_model: str = "agnes-3.0-flash",
41
41
  image_model: str = "agnes-image-2.5-flash",
42
42
  video_model: str = "agnes-video-v2.0",
43
43
  progress_callback: Optional[Callable] = None,
@@ -112,7 +112,7 @@ class Screenwriter(
112
112
  对外接口与拆分前完全一致(mixin 组合,方法经 MRO 解析)。
113
113
  """
114
114
 
115
- def __init__(self, api_key: str, model: str = "agnes-2.5-flash", language: str = None):
115
+ def __init__(self, api_key: str, model: str = "agnes-3.0-flash", language: str = None):
116
116
  self.api_key = api_key
117
117
  self.model = model
118
118
  self.language = language if language else PROMPT_LANGUAGE # "zh" 中文 / "en" 英文
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "free-short-video",
3
- "version": "6.4.4",
3
+ "version": "6.4.5",
4
4
  "description": "Free AI short-video generator — run the full free-short-video service locally with one command. Text-to-video, image generation, Edge-TTS narration, subtitles, and compositing, all free. Official site: https://video.lichuanyang.top",
5
5
  "bin": {
6
6
  "free-short-video": "bin/cli.js",