feat: 支持视频 API 多图参考输入
This commit is contained in:
1 parent
f616188a4e
commit
699bc0828b
2 files changed
+18
No files matched your search
@@ -625,6 +625,13 @@ def validate_request(request: ChatCompletionRequest):
|
||||
# video 验证
|
||||
if model_info and model_info.is_video:
|
||||
config = request.video_config or VideoConfig()
|
||||
_, image_urls = _extract_prompt_images(request.messages)
|
||||
if len(image_urls) > 7:
|
||||
raise ValidationException(
|
||||
message="Too many image_url references for video. Maximum is 7.",
|
||||
param="messages",
|
||||
code="invalid_image_count",
|
||||
)
|
||||
effective_stream = (
|
||||
request.stream if request.stream is not None else get_config("app.stream")
|
||||
)
|
||||
|
||||
@@ -1092,6 +1092,17 @@ class VideoService:
|
||||
parent_post_id = (parent_post_id or "").strip() or None
|
||||
source_image_url = (source_image_url or "").strip()
|
||||
reference_items = [item for item in (reference_items or []) if isinstance(item, dict)]
|
||||
if image_attachments and not reference_items:
|
||||
reference_items = [
|
||||
{
|
||||
"parent_post_id": "",
|
||||
"image_url": str(image_url or "").strip(),
|
||||
"source_image_url": str(image_url or "").strip(),
|
||||
"mention_alias": f"Image {index}",
|
||||
}
|
||||
for index, image_url in enumerate(image_attachments, start=1)
|
||||
if str(image_url or "").strip()
|
||||
]
|
||||
used_tokens: set[str] = set()
|
||||
|
||||
for attempt in range(max_token_retries):
|
||||
|
||||
Reference in new issue
Block a user