fix: honor requested model for scale enlargement

This commit is contained in:
134 2026-07-03 10:38:04 +08:00
parent e0e57c6865
commit 97720a55e5

View File

@ -383,6 +383,7 @@ function compareScaleAdjustProviderCandidates(
function resolveScaleAdjustPreferredModelId(params: {
configuredModelId: string;
honorRequestedModelBeforeGpt?: boolean;
requestedModelId: string;
models: AiModelWithProviderForSelection[];
}) {
@ -394,6 +395,14 @@ function resolveScaleAdjustPreferredModelId(params: {
params.models,
params.configuredModelId
);
if (
params.honorRequestedModelBeforeGpt &&
requestedModel &&
isScaleAdjustUsableImageEditModel(requestedModel)
) {
return requestedModel.model.id || params.requestedModelId;
}
const gptImage2Candidates = params.models
.filter((entry) => isScaleAdjustUsableImageEditModel(entry))
.filter((entry) => getScaleAdjustModelFamily(entry) === "gpt-image-2")
@ -2303,6 +2312,10 @@ export async function POST(request: NextRequest) {
const detailFixedModel = isScaleAdjustOperation
? resolveScaleAdjustPreferredModelId({
configuredModelId: configuredDetailModel,
honorRequestedModelBeforeGpt: hasScaleAdjustEnlargeTarget(
regions,
scalePercent
),
requestedModelId: requestedModel || "",
models: scaleAdjustModelCandidates,
})