fix: use image[] field for multi-reference edits

OpenAI documents the multipart array syntax as image[] for multiple
references; strict gateways reject repeated 'image' parts with
duplicate_parameter 400. Use 'image' for single, 'image[]' for 2+.
This commit is contained in:
2026-05-18 23:22:42 +08:00
parent 600f574b5c
commit 4ef2f1ba2b
2 changed files with 6 additions and 2 deletions
+2 -1
View File
@@ -49,6 +49,7 @@ async function callUpstream(args: {
form.append("stream", "true");
form.append("partial_images", "2");
}
const imageField = referenceImages.length > 1 ? "image[]" : "image";
for (let i = 0; i < referenceImages.length; i++) {
const dataUrl = referenceImages[i];
if (!dataUrl) continue;
@@ -56,7 +57,7 @@ async function callUpstream(args: {
if (!decoded) continue;
const ext = decoded.mime.split("/")[1] ?? "png";
form.append(
"image",
imageField,
new Blob([decoded.bytes], { type: decoded.mime }),
`ref-${i}.${ext}`,
);