fix: use marked guide for alibaba scale adjust
This commit is contained in:
parent
7c8ae2fe8b
commit
56240d4a6d
@ -2030,15 +2030,22 @@ export async function POST(request: NextRequest) {
|
||||
const scaleAdjustModelFamily = getScaleAdjustModelFamily(
|
||||
resolvedScaleAdjustModelEntry
|
||||
);
|
||||
const useProviderMarkedPhotoCoordinatePrompt =
|
||||
isScaleAdjustOperation &&
|
||||
resolvedScaleAdjustModelEntry?.provider?.type === "alibaba-image";
|
||||
const useScaleAdjustCoordinatePrompt =
|
||||
useScaleAdjustCoordinateGuide || useProviderMarkedPhotoCoordinatePrompt;
|
||||
const useFalScaleAdjustCoordinatePrompt =
|
||||
useScaleAdjustCoordinateGuide &&
|
||||
useScaleAdjustCoordinatePrompt &&
|
||||
resolvedScaleAdjustModelEntry?.provider?.type === "fal-image";
|
||||
const useScaleAdjustVisualLayoutGuide =
|
||||
useScaleAdjustCoordinateGuide && !useFalScaleAdjustCoordinatePrompt;
|
||||
useScaleAdjustCoordinatePrompt &&
|
||||
!useFalScaleAdjustCoordinatePrompt &&
|
||||
!useProviderMarkedPhotoCoordinatePrompt;
|
||||
const useScaleAdjustMarkedPhotoGuide =
|
||||
useScaleAdjustCoordinateGuide && !useScaleAdjustVisualLayoutGuide;
|
||||
useScaleAdjustCoordinatePrompt && !useScaleAdjustVisualLayoutGuide;
|
||||
const annotatedBuffer = isScaleAdjustOperation
|
||||
? useScaleAdjustCoordinateGuide
|
||||
? useScaleAdjustCoordinatePrompt
|
||||
? useScaleAdjustVisualLayoutGuide
|
||||
? await buildScaleAdjustVisualLayoutGuideBuffer({
|
||||
regions,
|
||||
@ -2113,7 +2120,9 @@ export async function POST(request: NextRequest) {
|
||||
: null;
|
||||
const shouldCreateScaleAdjustCropReferences =
|
||||
isScaleAdjustOperation &&
|
||||
(useScaleAdjustVisualLayoutGuide || !useScaleAdjustCoordinateGuide);
|
||||
(useScaleAdjustVisualLayoutGuide ||
|
||||
!useScaleAdjustCoordinatePrompt ||
|
||||
(useScaleAdjustMarkedPhotoGuide && !useFalScaleAdjustCoordinatePrompt));
|
||||
const scaleAdjustCropReferences: ScaleAdjustCropReference[] =
|
||||
shouldCreateScaleAdjustCropReferences
|
||||
? await createScaleAdjustCropReferences({
|
||||
@ -2124,7 +2133,7 @@ export async function POST(request: NextRequest) {
|
||||
})
|
||||
: [];
|
||||
const prompt = isScaleAdjustOperation
|
||||
? useScaleAdjustCoordinateGuide
|
||||
? useScaleAdjustCoordinatePrompt
|
||||
? buildScaleAdjustCoordinatePrompt(
|
||||
regions,
|
||||
scalePercent,
|
||||
@ -2202,7 +2211,7 @@ export async function POST(request: NextRequest) {
|
||||
annotatedReferenceUrl: annotatedUpload.url,
|
||||
annotatedReferenceSentToModel: isScaleAdjustOperation,
|
||||
annotatedReferenceType: isScaleAdjustOperation
|
||||
? useScaleAdjustCoordinateGuide
|
||||
? useScaleAdjustCoordinatePrompt
|
||||
? useScaleAdjustVisualLayoutGuide
|
||||
? "scale-adjust-visual-layout-guide"
|
||||
: useScaleAdjustMarkedPhotoGuide
|
||||
@ -2229,16 +2238,17 @@ export async function POST(request: NextRequest) {
|
||||
resolvedScaleAdjustModelEntry?.provider?.type || null,
|
||||
scaleAdjustModelFamily: scaleAdjustModelFamily || null,
|
||||
scaleAdjustCoordinateGuideApplied: useScaleAdjustCoordinateGuide,
|
||||
scaleAdjustCoordinatePromptApplied: useScaleAdjustCoordinatePrompt,
|
||||
scaleAdjustNeutralCoordinateMapApplied:
|
||||
isScaleAdjustOperation &&
|
||||
useScaleAdjustCoordinateGuide &&
|
||||
useScaleAdjustCoordinatePrompt &&
|
||||
!useScaleAdjustMarkedPhotoGuide &&
|
||||
!useScaleAdjustVisualLayoutGuide,
|
||||
scaleAdjustMarkedPhotoGuideApplied: useScaleAdjustMarkedPhotoGuide,
|
||||
scaleAdjustFalMarkedPhotoGuideApplied: useFalScaleAdjustCoordinatePrompt,
|
||||
scaleAdjustVisualLayoutGuideApplied:
|
||||
isScaleAdjustOperation &&
|
||||
(!useScaleAdjustCoordinateGuide || useScaleAdjustVisualLayoutGuide),
|
||||
(!useScaleAdjustCoordinatePrompt || useScaleAdjustVisualLayoutGuide),
|
||||
falScaleAdjustCoordinateGuideApplied:
|
||||
useScaleAdjustCoordinateGuide &&
|
||||
resolvedScaleAdjustModelEntry?.provider?.type === "fal-image",
|
||||
@ -2265,13 +2275,15 @@ export async function POST(request: NextRequest) {
|
||||
scaleAdjustTargetRegionCount: regions.filter((region) => region.targetRect)
|
||||
.length,
|
||||
scaleAdjustPromptStrategy: isScaleAdjustOperation
|
||||
? useScaleAdjustCoordinateGuide
|
||||
? useFalScaleAdjustCoordinatePrompt
|
||||
? "fal-safe-marked-photo-box-guide-no-old-crop-v44-one-shot"
|
||||
: useScaleAdjustVisualLayoutGuide
|
||||
? "same-name-focused-layout-crop-guide-v54-one-shot"
|
||||
: "same-name-marked-photo-box-guide-no-old-crop-v45-one-shot"
|
||||
: "locked-plate-semantic-target-map-no-old-crop-v15"
|
||||
? useFalScaleAdjustCoordinatePrompt
|
||||
? "fal-safe-marked-photo-box-guide-no-old-crop-v44-one-shot"
|
||||
: useScaleAdjustVisualLayoutGuide
|
||||
? "same-name-focused-layout-crop-guide-v54-one-shot"
|
||||
: useProviderMarkedPhotoCoordinatePrompt
|
||||
? "provider-marked-photo-crop-guide-v60-one-shot"
|
||||
: useScaleAdjustMarkedPhotoGuide
|
||||
? "same-name-marked-photo-box-guide-no-old-crop-v45-one-shot"
|
||||
: "locked-plate-semantic-target-map-no-old-crop-v15"
|
||||
: undefined,
|
||||
scaleAdjustPostCompositeApplied: false,
|
||||
scaleAdjustUsesFullFrameOutput: isScaleAdjustOperation,
|
||||
@ -2282,7 +2294,7 @@ export async function POST(request: NextRequest) {
|
||||
displayPrompt,
|
||||
falSafetyTolerance: useScaleAdjustCoordinateGuide ? "6" : undefined,
|
||||
falSystemPrompt:
|
||||
useScaleAdjustCoordinateGuide
|
||||
useScaleAdjustCoordinatePrompt
|
||||
? buildScaleAdjustCoordinateSystemPrompt()
|
||||
: undefined,
|
||||
falThinkingLevel: useScaleAdjustCoordinateGuide ? "high" : undefined,
|
||||
@ -2294,7 +2306,7 @@ export async function POST(request: NextRequest) {
|
||||
model: resolvedModel || undefined,
|
||||
negativePrompt:
|
||||
isScaleAdjustOperation
|
||||
? useScaleAdjustCoordinateGuide
|
||||
? useScaleAdjustCoordinatePrompt
|
||||
? scaleAdjustCoordinateNegativePrompt
|
||||
: "彩色框、蓝色边框、绿色边框、红色边框、橙色边框、矩形框、箭头、连线、角点、编号圆点、提示词气泡、标注文字、UI 控件、半透明色块、蓝色色块、色条、灰底坐标图、目标占位叠图、淡化痕迹、选区边框、白边、画幅压扁、画面拉伸、整张图缩放、全图放大、全图裁切、全图平移、文字位置变化、文字内容变化、文字模糊、Logo位置变化、主体拉伸、主体压扁、主体变窄、主体变高但变窄、横向挤压、纵向拉伸、透视变形、矩形贴片、硬边、拼接线、补丁感、局部裁切、色差边缘、背景断裂、背景错位、窗框错位、文字错位、地毯纹理错位、非主体背景重绘、主体未缩放、整块框选区域缩放"
|
||||
: "彩色框、蓝色边框、绿色边框、红色边框、橙色边框、矩形框、编号圆点、提示词气泡、标注文字、UI 控件、半透明色块、选区边框、白边、画幅压扁、画面拉伸、主体截断、动物截断、缺头、缺尾巴、缺四肢、贴边裁切、矩形贴片、硬边、拼接线、补丁感、色差边缘、背景错位、地面纹理断裂、椅脚错位",
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user