mirror of
https://github.com/TheSmallHanCat/flow2api.git
synced 2026-05-06 14:00:50 +08:00
fix(models): 补齐显式横屏模型并兼容缺失监控依赖
This commit is contained in:
50
README.md
50
README.md
@@ -187,13 +187,13 @@ Prometheus 可直接抓 `/metrics`。如果部署到 Kubernetes,建议只在
|
||||
| `veo_3_1_t2v_fast_ultra_relaxed` | 文生视频 | 横屏 |
|
||||
| `veo_3_1_t2v_portrait` | 文生视频 | 竖屏 |
|
||||
| `veo_3_1_t2v_landscape` | 文生视频 | 横屏 |
|
||||
| `veo_3_1_t2v_4s` | 文生视频 4秒 | 横屏 |
|
||||
| `veo_3_1_t2v_landscape_4s` | 文生视频 4秒 | 横屏 |
|
||||
| `veo_3_1_t2v_portrait_4s` | 文生视频 4秒 | 竖屏 |
|
||||
| `veo_3_1_t2v_6s` | 文生视频 6秒 | 横屏 |
|
||||
| `veo_3_1_t2v_landscape_6s` | 文生视频 6秒 | 横屏 |
|
||||
| `veo_3_1_t2v_portrait_6s` | 文生视频 6秒 | 竖屏 |
|
||||
| `veo_3_1_t2v_fast_4s` | 文生视频 Fast 4秒 | 横屏 |
|
||||
| `veo_3_1_t2v_fast_landscape_4s` | 文生视频 Fast 4秒 | 横屏 |
|
||||
| `veo_3_1_t2v_fast_portrait_4s` | 文生视频 Fast 4秒 | 竖屏 |
|
||||
| `veo_3_1_t2v_fast_6s` | 文生视频 Fast 6秒 | 横屏 |
|
||||
| `veo_3_1_t2v_fast_landscape_6s` | 文生视频 Fast 6秒 | 横屏 |
|
||||
| `veo_3_1_t2v_fast_portrait_6s` | 文生视频 Fast 6秒 | 竖屏 |
|
||||
| `veo_3_1_t2v_lite_portrait` | 文生视频 Lite | 竖屏 |
|
||||
| `veo_3_1_t2v_lite_landscape` | 文生视频 Lite | 横屏 |
|
||||
@@ -221,13 +221,13 @@ Prometheus 可直接抓 `/metrics`。如果部署到 Kubernetes,建议只在
|
||||
| `veo_3_1_i2v_s_fast_ultra_relaxed` | 图生视频 | 横屏 |
|
||||
| `veo_3_1_i2v_s_portrait` | 图生视频 | 竖屏 |
|
||||
| `veo_3_1_i2v_s_landscape` | 图生视频 | 横屏 |
|
||||
| `veo_3_1_i2v_s_4s` | 图生视频 4秒 | 横屏 |
|
||||
| `veo_3_1_i2v_s_landscape_4s` | 图生视频 4秒 | 横屏 |
|
||||
| `veo_3_1_i2v_s_portrait_4s` | 图生视频 4秒 | 竖屏 |
|
||||
| `veo_3_1_i2v_s_6s` | 图生视频 6秒 | 横屏 |
|
||||
| `veo_3_1_i2v_s_landscape_6s` | 图生视频 6秒 | 横屏 |
|
||||
| `veo_3_1_i2v_s_portrait_6s` | 图生视频 6秒 | 竖屏 |
|
||||
| `veo_3_1_i2v_s_fast_4s_fl` | 图生视频 Fast 4秒 | 横屏 |
|
||||
| `veo_3_1_i2v_s_fast_landscape_4s_fl` | 图生视频 Fast 4秒 | 横屏 |
|
||||
| `veo_3_1_i2v_s_fast_portrait_4s_fl` | 图生视频 Fast 4秒 | 竖屏 |
|
||||
| `veo_3_1_i2v_s_fast_6s_fl` | 图生视频 Fast 6秒 | 横屏 |
|
||||
| `veo_3_1_i2v_s_fast_landscape_6s_fl` | 图生视频 Fast 6秒 | 横屏 |
|
||||
| `veo_3_1_i2v_s_fast_portrait_6s_fl` | 图生视频 Fast 6秒 | 竖屏 |
|
||||
| `veo_3_1_i2v_lite_portrait` | 图生视频 Lite(仅首帧) | 竖屏 |
|
||||
| `veo_3_1_i2v_lite_landscape` | 图生视频 Lite(仅首帧) | 横屏 |
|
||||
@@ -258,11 +258,11 @@ Prometheus 可直接抓 `/metrics`。如果部署到 Kubernetes,建议只在
|
||||
| 模型名称 | 说明| 尺寸 |
|
||||
|---------|---------|--------|
|
||||
| `veo_3_1_r2v_fast_portrait` | 图生视频 | 竖屏 |
|
||||
| `veo_3_1_r2v_fast` | 图生视频 | 横屏 |
|
||||
| `veo_3_1_r2v_fast_landscape` | 图生视频 | 横屏 |
|
||||
| `veo_3_1_r2v_fast_portrait_ultra` | 图生视频 | 竖屏 |
|
||||
| `veo_3_1_r2v_fast_ultra` | 图生视频 | 横屏 |
|
||||
| `veo_3_1_r2v_fast_landscape_ultra` | 图生视频 | 横屏 |
|
||||
| `veo_3_1_r2v_fast_portrait_ultra_relaxed` | 图生视频 | 竖屏 |
|
||||
| `veo_3_1_r2v_fast_ultra_relaxed` | 图生视频 | 横屏 |
|
||||
| `veo_3_1_r2v_fast_landscape_ultra_relaxed` | 图生视频 | 横屏 |
|
||||
|
||||
#### 视频放大模型 (Upsample)
|
||||
|
||||
@@ -270,17 +270,17 @@ Prometheus 可直接抓 `/metrics`。如果部署到 Kubernetes,建议只在
|
||||
|
||||
| 模型名称 | 说明 | 输出 |
|
||||
|---------|---------|--------|
|
||||
| `veo_3_1_t2v_4k` | 文生视频放大 | 4K |
|
||||
| `veo_3_1_t2v_landscape_4k` | 文生视频放大 | 4K |
|
||||
| `veo_3_1_t2v_portrait_4k` | 文生视频放大 | 4K |
|
||||
| `veo_3_1_t2v_1080p` | 文生视频放大 | 1080P |
|
||||
| `veo_3_1_t2v_landscape_1080p` | 文生视频放大 | 1080P |
|
||||
| `veo_3_1_t2v_portrait_1080p` | 文生视频放大 | 1080P |
|
||||
| `veo_3_1_t2v_4s_4k` | 文生视频 4秒放大 | 4K |
|
||||
| `veo_3_1_t2v_landscape_4s_4k` | 文生视频 4秒放大 | 4K |
|
||||
| `veo_3_1_t2v_portrait_4s_4k` | 文生视频 4秒放大 | 4K |
|
||||
| `veo_3_1_t2v_4s_1080p` | 文生视频 4秒放大 | 1080P |
|
||||
| `veo_3_1_t2v_landscape_4s_1080p` | 文生视频 4秒放大 | 1080P |
|
||||
| `veo_3_1_t2v_portrait_4s_1080p` | 文生视频 4秒放大 | 1080P |
|
||||
| `veo_3_1_t2v_6s_4k` | 文生视频 6秒放大 | 4K |
|
||||
| `veo_3_1_t2v_landscape_6s_4k` | 文生视频 6秒放大 | 4K |
|
||||
| `veo_3_1_t2v_portrait_6s_4k` | 文生视频 6秒放大 | 4K |
|
||||
| `veo_3_1_t2v_6s_1080p` | 文生视频 6秒放大 | 1080P |
|
||||
| `veo_3_1_t2v_landscape_6s_1080p` | 文生视频 6秒放大 | 1080P |
|
||||
| `veo_3_1_t2v_portrait_6s_1080p` | 文生视频 6秒放大 | 1080P |
|
||||
| `veo_3_1_t2v_fast_portrait_4k` | 文生视频放大 | 4K |
|
||||
| `veo_3_1_t2v_fast_4k` | 文生视频放大 | 4K |
|
||||
@@ -294,22 +294,22 @@ Prometheus 可直接抓 `/metrics`。如果部署到 Kubernetes,建议只在
|
||||
| `veo_3_1_i2v_s_fast_ultra_fl_4k` | 图生视频放大 | 4K |
|
||||
| `veo_3_1_i2v_s_fast_portrait_ultra_fl_1080p` | 图生视频放大 | 1080P |
|
||||
| `veo_3_1_i2v_s_fast_ultra_fl_1080p` | 图生视频放大 | 1080P |
|
||||
| `veo_3_1_i2v_s_4k` | 图生视频放大 | 4K |
|
||||
| `veo_3_1_i2v_s_landscape_4k` | 图生视频放大 | 4K |
|
||||
| `veo_3_1_i2v_s_portrait_4k` | 图生视频放大 | 4K |
|
||||
| `veo_3_1_i2v_s_1080p` | 图生视频放大 | 1080P |
|
||||
| `veo_3_1_i2v_s_landscape_1080p` | 图生视频放大 | 1080P |
|
||||
| `veo_3_1_i2v_s_portrait_1080p` | 图生视频放大 | 1080P |
|
||||
| `veo_3_1_i2v_s_4s_4k` | 图生视频 4秒放大 | 4K |
|
||||
| `veo_3_1_i2v_s_landscape_4s_4k` | 图生视频 4秒放大 | 4K |
|
||||
| `veo_3_1_i2v_s_portrait_4s_4k` | 图生视频 4秒放大 | 4K |
|
||||
| `veo_3_1_i2v_s_4s_1080p` | 图生视频 4秒放大 | 1080P |
|
||||
| `veo_3_1_i2v_s_landscape_4s_1080p` | 图生视频 4秒放大 | 1080P |
|
||||
| `veo_3_1_i2v_s_portrait_4s_1080p` | 图生视频 4秒放大 | 1080P |
|
||||
| `veo_3_1_i2v_s_6s_4k` | 图生视频 6秒放大 | 4K |
|
||||
| `veo_3_1_i2v_s_landscape_6s_4k` | 图生视频 6秒放大 | 4K |
|
||||
| `veo_3_1_i2v_s_portrait_6s_4k` | 图生视频 6秒放大 | 4K |
|
||||
| `veo_3_1_i2v_s_6s_1080p` | 图生视频 6秒放大 | 1080P |
|
||||
| `veo_3_1_i2v_s_landscape_6s_1080p` | 图生视频 6秒放大 | 1080P |
|
||||
| `veo_3_1_i2v_s_portrait_6s_1080p` | 图生视频 6秒放大 | 1080P |
|
||||
| `veo_3_1_r2v_fast_portrait_ultra_4k` | 多图视频放大 | 4K |
|
||||
| `veo_3_1_r2v_fast_ultra_4k` | 多图视频放大 | 4K |
|
||||
| `veo_3_1_r2v_fast_landscape_ultra_4k` | 多图视频放大 | 4K |
|
||||
| `veo_3_1_r2v_fast_portrait_ultra_1080p` | 多图视频放大 | 1080P |
|
||||
| `veo_3_1_r2v_fast_ultra_1080p` | 多图视频放大 | 1080P |
|
||||
| `veo_3_1_r2v_fast_landscape_ultra_1080p` | 多图视频放大 | 1080P |
|
||||
|
||||
## 📡 API 使用示例(需要使用流式)
|
||||
|
||||
|
||||
@@ -10,14 +10,45 @@ import urllib.request
|
||||
from datetime import datetime, timezone
|
||||
from typing import Any, Optional
|
||||
|
||||
from prometheus_client import (
|
||||
CONTENT_TYPE_LATEST,
|
||||
CollectorRegistry,
|
||||
Counter,
|
||||
Gauge,
|
||||
Histogram,
|
||||
generate_latest,
|
||||
)
|
||||
try:
|
||||
from prometheus_client import (
|
||||
CONTENT_TYPE_LATEST,
|
||||
CollectorRegistry,
|
||||
Counter,
|
||||
Gauge,
|
||||
Histogram,
|
||||
generate_latest,
|
||||
)
|
||||
except ModuleNotFoundError:
|
||||
CONTENT_TYPE_LATEST = "text/plain; version=0.0.4; charset=utf-8"
|
||||
|
||||
class _NoopMetric:
|
||||
def __init__(self, *args: Any, **kwargs: Any):
|
||||
pass
|
||||
|
||||
def labels(self, **kwargs: Any) -> "_NoopMetric":
|
||||
return self
|
||||
|
||||
def inc(self, *args: Any, **kwargs: Any) -> None:
|
||||
return None
|
||||
|
||||
def set(self, *args: Any, **kwargs: Any) -> None:
|
||||
return None
|
||||
|
||||
def observe(self, *args: Any, **kwargs: Any) -> None:
|
||||
return None
|
||||
|
||||
def clear(self) -> None:
|
||||
return None
|
||||
|
||||
class CollectorRegistry:
|
||||
def __init__(self, *args: Any, **kwargs: Any):
|
||||
pass
|
||||
|
||||
Counter = Gauge = Histogram = _NoopMetric
|
||||
|
||||
def generate_latest(registry: Any = None) -> bytes:
|
||||
return b"# prometheus_client is not installed; metrics are disabled\n"
|
||||
|
||||
from .config import config
|
||||
|
||||
|
||||
@@ -732,6 +732,9 @@ def _apply_veo_3_1_model_updates():
|
||||
landscape = "VIDEO_ASPECT_RATIO_LANDSCAPE"
|
||||
portrait = "VIDEO_ASPECT_RATIO_PORTRAIT"
|
||||
|
||||
def add_alias(alias: str, target: str):
|
||||
MODEL_CONFIG[alias] = dict(MODEL_CONFIG[target])
|
||||
|
||||
# Non-fast/non-lite Veo 3.1 aliases must call Quality upstream keys.
|
||||
MODEL_CONFIG["veo_3_1_t2v_landscape"].update({"model_key": "veo_3_1_t2v"})
|
||||
MODEL_CONFIG["veo_3_1_t2v_portrait"].update({"model_key": "veo_3_1_t2v_portrait"})
|
||||
@@ -851,6 +854,48 @@ def _apply_veo_3_1_model_updates():
|
||||
"veo_3_1_i2v_s_portrait_fl", portrait, upsample=upsample
|
||||
)
|
||||
|
||||
for seconds in (4, 6):
|
||||
suffix = f"{seconds}s"
|
||||
|
||||
# Explicit landscape names for /v1/models; short landscape names remain compatible.
|
||||
add_alias(f"veo_3_1_t2v_fast_landscape_{suffix}", f"veo_3_1_t2v_fast_{suffix}")
|
||||
add_alias(f"veo_3_1_t2v_landscape_{suffix}", f"veo_3_1_t2v_{suffix}")
|
||||
add_alias(f"veo_3_1_i2v_s_fast_landscape_{suffix}_fl", f"veo_3_1_i2v_s_fast_{suffix}_fl")
|
||||
add_alias(f"veo_3_1_i2v_s_landscape_{suffix}", f"veo_3_1_i2v_s_{suffix}")
|
||||
|
||||
add_alias(f"veo_3_1_t2v_lite_landscape_{suffix}", f"veo_3_1_t2v_lite_{suffix}_landscape")
|
||||
add_alias(f"veo_3_1_t2v_lite_portrait_{suffix}", f"veo_3_1_t2v_lite_{suffix}_portrait")
|
||||
add_alias(f"veo_3_1_i2v_lite_landscape_{suffix}", f"veo_3_1_i2v_lite_{suffix}_landscape")
|
||||
add_alias(f"veo_3_1_i2v_lite_portrait_{suffix}", f"veo_3_1_i2v_lite_{suffix}_portrait")
|
||||
add_alias(
|
||||
f"veo_3_1_interpolation_lite_landscape_{suffix}",
|
||||
f"veo_3_1_interpolation_lite_{suffix}_landscape",
|
||||
)
|
||||
add_alias(
|
||||
f"veo_3_1_interpolation_lite_portrait_{suffix}",
|
||||
f"veo_3_1_interpolation_lite_{suffix}_portrait",
|
||||
)
|
||||
|
||||
for resolution_name in ("4k", "1080p"):
|
||||
add_alias(
|
||||
f"veo_3_1_t2v_landscape_{suffix}_{resolution_name}",
|
||||
f"veo_3_1_t2v_{suffix}_{resolution_name}",
|
||||
)
|
||||
add_alias(
|
||||
f"veo_3_1_i2v_s_landscape_{suffix}_{resolution_name}",
|
||||
f"veo_3_1_i2v_s_{suffix}_{resolution_name}",
|
||||
)
|
||||
|
||||
for resolution_name in ("4k", "1080p"):
|
||||
add_alias(f"veo_3_1_t2v_landscape_{resolution_name}", f"veo_3_1_t2v_{resolution_name}")
|
||||
add_alias(f"veo_3_1_i2v_s_landscape_{resolution_name}", f"veo_3_1_i2v_s_{resolution_name}")
|
||||
|
||||
add_alias("veo_3_1_r2v_fast_landscape", "veo_3_1_r2v_fast")
|
||||
add_alias("veo_3_1_r2v_fast_landscape_ultra", "veo_3_1_r2v_fast_ultra")
|
||||
add_alias("veo_3_1_r2v_fast_landscape_ultra_relaxed", "veo_3_1_r2v_fast_ultra_relaxed")
|
||||
add_alias("veo_3_1_r2v_fast_landscape_ultra_4k", "veo_3_1_r2v_fast_ultra_4k")
|
||||
add_alias("veo_3_1_r2v_fast_landscape_ultra_1080p", "veo_3_1_r2v_fast_ultra_1080p")
|
||||
|
||||
|
||||
_apply_veo_3_1_model_updates()
|
||||
|
||||
|
||||
@@ -188,35 +188,60 @@ const FALLBACK_MODELS = {
|
||||
"imagen-4.0-generate-preview": "Image generation (alias) - aspects: landscape, portrait",
|
||||
"veo_3_1_t2v_fast": "Video generation (alias) - supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_t2v_fast_4s": "Video generation (alias) - 4s, supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_t2v_fast_landscape_4s": "Video generation - fast 4s landscape",
|
||||
"veo_3_1_t2v_fast_6s": "Video generation (alias) - 6s, supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_t2v_fast_landscape_6s": "Video generation - fast 6s landscape",
|
||||
"veo_3_1_t2v_fast_ultra": "Video generation (alias) - supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_t2v_fast_ultra_relaxed": "Video generation (alias) - supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_t2v": "Video generation (alias) - supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_t2v_4s": "Video generation (alias) - 4s, supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_t2v_landscape_4s": "Video generation - quality 4s landscape",
|
||||
"veo_3_1_t2v_6s": "Video generation (alias) - 6s, supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_t2v_landscape_6s": "Video generation - quality 6s landscape",
|
||||
"veo_3_1_t2v_4k": "Video upsample alias - generate then upscale to 4K",
|
||||
"veo_3_1_t2v_landscape_4k": "Video upsample alias - generate landscape then upscale to 4K",
|
||||
"veo_3_1_t2v_1080p": "Video upsample alias - generate then upscale to 1080P",
|
||||
"veo_3_1_t2v_landscape_1080p": "Video upsample alias - generate landscape then upscale to 1080P",
|
||||
"veo_3_1_t2v_4s_4k": "Video upsample alias - generate 4s then upscale to 4K",
|
||||
"veo_3_1_t2v_landscape_4s_4k": "Video upsample alias - generate 4s landscape then upscale to 4K",
|
||||
"veo_3_1_t2v_4s_1080p": "Video upsample alias - generate 4s then upscale to 1080P",
|
||||
"veo_3_1_t2v_landscape_4s_1080p": "Video upsample alias - generate 4s landscape then upscale to 1080P",
|
||||
"veo_3_1_t2v_6s_4k": "Video upsample alias - generate 6s then upscale to 4K",
|
||||
"veo_3_1_t2v_landscape_6s_4k": "Video upsample alias - generate 6s landscape then upscale to 4K",
|
||||
"veo_3_1_t2v_6s_1080p": "Video upsample alias - generate 6s then upscale to 1080P",
|
||||
"veo_3_1_t2v_landscape_6s_1080p": "Video upsample alias - generate 6s landscape then upscale to 1080P",
|
||||
"veo_3_1_i2v_s_fast_fl": "Video generation (alias) - supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_i2v_s_fast_4s_fl": "Video generation (alias) - 4s, supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_i2v_s_fast_landscape_4s_fl": "Video generation - fast 4s landscape",
|
||||
"veo_3_1_i2v_s_fast_6s_fl": "Video generation (alias) - 6s, supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_i2v_s_fast_landscape_6s_fl": "Video generation - fast 6s landscape",
|
||||
"veo_3_1_i2v_s_fast_ultra_fl": "Video generation (alias) - supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_i2v_s_fast_ultra_relaxed": "Video generation (alias) - supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_i2v_s": "Video generation (alias) - supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_i2v_s_4s": "Video generation (alias) - 4s, supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_i2v_s_landscape_4s": "Video generation - quality 4s landscape",
|
||||
"veo_3_1_i2v_s_6s": "Video generation (alias) - 6s, supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_i2v_s_landscape_6s": "Video generation - quality 6s landscape",
|
||||
"veo_3_1_i2v_s_4k": "Video upsample alias - generate then upscale to 4K",
|
||||
"veo_3_1_i2v_s_landscape_4k": "Video upsample alias - generate landscape then upscale to 4K",
|
||||
"veo_3_1_i2v_s_1080p": "Video upsample alias - generate then upscale to 1080P",
|
||||
"veo_3_1_i2v_s_landscape_1080p": "Video upsample alias - generate landscape then upscale to 1080P",
|
||||
"veo_3_1_i2v_s_4s_4k": "Video upsample alias - generate 4s then upscale to 4K",
|
||||
"veo_3_1_i2v_s_landscape_4s_4k": "Video upsample alias - generate 4s landscape then upscale to 4K",
|
||||
"veo_3_1_i2v_s_4s_1080p": "Video upsample alias - generate 4s then upscale to 1080P",
|
||||
"veo_3_1_i2v_s_landscape_4s_1080p": "Video upsample alias - generate 4s landscape then upscale to 1080P",
|
||||
"veo_3_1_i2v_s_6s_4k": "Video upsample alias - generate 6s then upscale to 4K",
|
||||
"veo_3_1_i2v_s_landscape_6s_4k": "Video upsample alias - generate 6s landscape then upscale to 4K",
|
||||
"veo_3_1_i2v_s_6s_1080p": "Video upsample alias - generate 6s then upscale to 1080P",
|
||||
"veo_3_1_i2v_s_landscape_6s_1080p": "Video upsample alias - generate 6s landscape then upscale to 1080P",
|
||||
"veo_3_1_r2v_fast": "Video generation (alias) - supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_r2v_fast_landscape": "Video generation - R2V fast landscape",
|
||||
"veo_3_1_r2v_fast_ultra": "Video generation (alias) - supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_r2v_fast_landscape_ultra": "Video generation - R2V fast ultra landscape",
|
||||
"veo_3_1_r2v_fast_ultra_relaxed": "Video generation (alias) - supports landscape/portrait via generationConfig",
|
||||
"veo_3_1_r2v_fast_landscape_ultra_relaxed": "Video generation - R2V fast ultra relaxed landscape",
|
||||
"veo_3_1_r2v_fast_landscape_ultra_4k": "Video upsample alias - generate R2V landscape then upscale to 4K",
|
||||
"veo_3_1_r2v_fast_landscape_ultra_1080p": "Video upsample alias - generate R2V landscape then upscale to 1080P",
|
||||
};
|
||||
|
||||
let ALL_MODELS = {};
|
||||
|
||||
@@ -105,6 +105,33 @@ class VeoLiteGenerationHandlerTests(unittest.TestCase):
|
||||
self.assertEqual(cfg["upsample"]["model_key"], "veo_3_1_upsampler_1080p")
|
||||
self.assertEqual(cfg["upsample"]["resolution"], "VIDEO_RESOLUTION_1080P")
|
||||
|
||||
def test_short_duration_models_include_explicit_landscape_aliases(self):
|
||||
expected_aliases = {
|
||||
"veo_3_1_t2v_landscape_4s": "veo_3_1_t2v_4s",
|
||||
"veo_3_1_t2v_landscape_6s": "veo_3_1_t2v_6s",
|
||||
"veo_3_1_i2v_s_landscape_4s": "veo_3_1_i2v_s_4s",
|
||||
"veo_3_1_i2v_s_landscape_6s": "veo_3_1_i2v_s_6s",
|
||||
"veo_3_1_t2v_landscape_4s_4k": "veo_3_1_t2v_4s_4k",
|
||||
"veo_3_1_i2v_s_landscape_6s_1080p": "veo_3_1_i2v_s_6s_1080p",
|
||||
}
|
||||
|
||||
for alias, target in expected_aliases.items():
|
||||
self.assertIn(alias, MODEL_CONFIG)
|
||||
self.assertEqual(MODEL_CONFIG[alias], MODEL_CONFIG[target])
|
||||
|
||||
def test_r2v_models_include_explicit_landscape_aliases(self):
|
||||
expected_aliases = {
|
||||
"veo_3_1_r2v_fast_landscape": "veo_3_1_r2v_fast",
|
||||
"veo_3_1_r2v_fast_landscape_ultra": "veo_3_1_r2v_fast_ultra",
|
||||
"veo_3_1_r2v_fast_landscape_ultra_relaxed": "veo_3_1_r2v_fast_ultra_relaxed",
|
||||
"veo_3_1_r2v_fast_landscape_ultra_4k": "veo_3_1_r2v_fast_ultra_4k",
|
||||
"veo_3_1_r2v_fast_landscape_ultra_1080p": "veo_3_1_r2v_fast_ultra_1080p",
|
||||
}
|
||||
|
||||
for alias, target in expected_aliases.items():
|
||||
self.assertIn(alias, MODEL_CONFIG)
|
||||
self.assertEqual(MODEL_CONFIG[alias], MODEL_CONFIG[target])
|
||||
|
||||
def test_direct_upsampler_keys_are_not_public_models(self):
|
||||
self.assertNotIn("veo_3_1_upsampler_4k", MODEL_CONFIG)
|
||||
self.assertNotIn("veo_3_1_upsampler_1080p", MODEL_CONFIG)
|
||||
|
||||
Reference in New Issue
Block a user