fix(视频): 场景/商品也送火山审核, 避免含真人参考图被判「疑似真人」拒
场景图与商品图可能出现真人(模特出镜/上身), 此前从不送审, 视频路只能 传原始直链 → 火山报 InputImageSensitiveContentDetected.PrivacyInformation → 整批段失败。现按角色流程把 scene/product_image 也纳入送审: - REVIEW_CATEGORIES 增加 scene + product_image(送审 + 轮询自动覆盖) - 场景/商品基础资产生成后 on_commit 自动静默送审, 拿到 remote_id → 视频路 _seedance_ref_url 换成 asset:// 素材库引用即可放行 - 前端场景卡 + 商品三视图面板挂同款审核盾牌, 可查状态/手动补送审 未改动生成前硬性过审闸(避免无真人的场景/商品被误拦; asset:// 在 processing 态也能引用, 故不拦也能正常出片)。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -1337,11 +1337,12 @@ def run_base_asset_task(*, task_id: str) -> None:
|
||||
group.candidate_assets.add(asset)
|
||||
group.adopted_asset = asset
|
||||
group.save(update_fields=["adopted_asset", "prompt", "updated_at"])
|
||||
# 真人资产:事务提交后静默送火山审核(best-effort,网络调用放 on_commit 避免占着事务)
|
||||
if kind == BaseAssetGroup.Kind.PERSON:
|
||||
from apps.assets.review import submit_asset_for_review
|
||||
# 含人脸资产(角色 / 场景 / 商品):事务提交后静默送火山审核(best-effort,网络调用放 on_commit 避免占着事务)。
|
||||
# 场景 / 商品也送审,因为它们可能出现真人(模特出镜/上身),拿到 remote_id 后视频路才能换 asset:// 引用,
|
||||
# 否则传原始直链会被火山判「疑似真人」拒。submit_asset_for_review 自身按 REVIEW_CATEGORIES 兜底,非送审类不会真送。
|
||||
from apps.assets.review import submit_asset_for_review
|
||||
|
||||
transaction.on_commit(lambda a=asset: submit_asset_for_review(a))
|
||||
transaction.on_commit(lambda a=asset: submit_asset_for_review(a))
|
||||
except Exception as exc: # noqa: BLE001 — 失败要退费并把错误记进 AITask 供前端轮询读取;不向上抛(避免 celery 重试二次扣费)
|
||||
task.status = AITask.Status.FAILED
|
||||
task.error_message = str(exc)
|
||||
|
||||
@@ -34,8 +34,10 @@ class Asset(TeamOwnedModel):
|
||||
FREE_CREATE = "free_create", "Free Create" # 自由创作(图片趴)
|
||||
STORYBOARD = "storyboard", "Storyboard" # 分镜图(视频趴·送审)
|
||||
|
||||
# 送审范围(火山人像审核):视频趴含人脸 = 角色定妆照 / 三视图 / 分镜图。图片趴(上身图/套图/创作)不送审。
|
||||
REVIEW_CATEGORIES = ("person", "tri_view", "storyboard")
|
||||
# 送审范围(火山人像审核):视频趴含人脸 = 角色定妆照 / 三视图 / 分镜图 / 场景 / 商品图。
|
||||
# 场景图与商品图也可能出现真人(模特出镜/上身),不送审则视频路只能传原始直链 → 火山判「疑似真人」拒;
|
||||
# 送审后拿到 remote_id,视频路换 asset:// 素材库引用即可放行。图片趴(上身图/套图/创作)仍不送审。
|
||||
REVIEW_CATEGORIES = ("person", "tri_view", "storyboard", "scene", "product_image")
|
||||
|
||||
name = models.CharField(max_length=255)
|
||||
asset_type = models.CharField(max_length=24, choices=Type.choices)
|
||||
|
||||
Reference in New Issue
Block a user