اگر برای رسیدن به پوستهای طبیعی در تصاویر هوش مصنوعی، صفحات طولانی از دستورات فنی مینویسید، احتمالاً نتیجهای شبیه به پوستهای بیروح و مرده میگیرید. Sparkpix.ai این مشکل را با یک تغییر ساده حل کرد: جایگزینی یک صفحه دستورالعمل با یک جمله کوتاه درباره یک دستگاه مصرفی رایج.
بسیاری از مدلهای تصویری مدرن، میلیونها عکس گرفته شده با دستگاههای خاص را دیدهاند؛ به این معنا که آنها درک نهانی از نویز سنسور و علم رنگ آن سختافزار دارند. وقتی کاربر لیستی عظیم از قوانین برای سایهها، اپتیک لنز و بافت پوست ارائه میدهد، مدل اغلب این بندها را بیش از حد اعمال میکند. این وضعیت شبیه به یک «طنابکشی» است؛ جایی که یک دستور برای افزودن بافت، باعث ایجاد ککومکهای زیاد میشود و دستور بعدی برای حذف آنها، پوست را به شکلی پلاستیکی و تخت درمیآورد.
به نقل از گزارشی در dev.to که در ۲۷ سپتامبر ۲۰۲۶ منتشر شد، این تیم دریافت که نام بردن از یک دوربین آشنا، کار هزار کلمه را انجام میدهد. اکنون پرامپت تولیدی در ابزار AI Image Humanizer آنها، صرفاً از مدل میخواهد تصویر را طوری بسازد که انگار با دوربین iPhone 12 گرفته شده است.
زمینهٔ شکست پرامپتهای طولانی
پرامپتهای طولانی شکست میخورند چون در واقع با خودشان بحث میکنند. در نسخهٔ اولیه با ۲۳۰۰ کاراکتر، هر بند جدید برای اصلاح مشکلی اضافه شده بود که بند قبلی ایجاد کرده بود. برای مثال، دستور «افزودن بافت طبیعی پوست» ککومکهای زیادی ایجاد میکرد؛ سپس افزودن عبارت «ککومک اضافه نکن»، پوستی بیش از حد صاف میساخت. همزمان، دستورات «حفظ رنگهای سالم» با فرمانهای «حذف گرید رنگی اشباعشدهٔ هوش مصنوعی» در تضاد بودند.
مدل هر بند را کمی بیش از حد جدی میگرفت و تصویر را به جهتهای مخالف میکشید. همانطور که در تحلیلهای قبلی ما دربارهی بهینهسازی توکنها اشاره کردیم، مدلها وقتی با دستورات متناقض روبرو میشوند، دچار تداخل میشوند. این چالش با استراتژیهای طبقهبندی قصد کاربر برای بهینهسازی توکنها که پیشتر بررسی کردیم، همراستا است تا از شکست پرامپتها در مقیاس تولیدی جلوگیری شود. طبق گزارش تیم توسعه، آنها در ۳۰ ژوئیه ۲۰۲۶ جایگزین جدید را روی GPT Image 2 آزمایش کردند و نتیجه را از نظر بصری برتر دانستند. پرامپت نهایی آنها به این شکل است:
export const DE_AI_PROMPT = 'Remove the AI-generated look from this image so it looks natural — for a photographic image, like it was taken with an iPhone 12 camera. Keep the original art style: an illustration or anime image must stay an illustration, not become a photograph.'
سازوکار سادهسازی پرامپت
ارجاع به «دوربین iPhone 12»، نویز سنسور، رندر پوست و نورهای ناقص را بهطور همزمان فعال میکند. این تیم سه قانون حیاتی برای حفظ کنترل در عین کاهش طول پرامپت شناسایی کردند:
- نام بردن از دستگاه، نه ژانر: استفاده از عباراتی مثل «سلفی»، «عکس پرتره» یا «عکس خیابانی»، باعث میشود مدل ژست یا کادربندی را تغییر دهد. برای مثال، «سلفی» توصیفکننده یک ژانر است (دست بالا، سر کج، عکس از زاویه بالا) و نه صرفاً یک دوربین. نام بردن از «دوربین iPhone 12» تمرکز مدل را روی ویژگیهای لنز و سنسور میگذارد بدون اینکه ترکیببندی را تغییر دهد.
- محدود کردن دستورات بهجای نفی: جملهای بدون محدوده مثل «آن را شبیه عکس آیفون کن»، دستوری برای تبدیل مدیوم است که باعث میشد آپلودهای انیمه به صورت عکس بازگردانده شوند. بهجای افزودن «سبک هنری را تغییر نده» — که دوباره باعث تکرار شکست اولیه یعنی بحث بین دو بند میشد — ارجاع به دوربین را بهطور خاص به ورودیهای عکاسی محدود کردند («برای یک تصویر عکاسی، انگار با... گرفته شده است»). این رویکرد مشابه استفاده از قالبهای ساختاریافته بهجای پرامپتهای متنی است که دقت خروجی را در طراحیهای پیچیده افزایش میدهد.
- منبع واحد حقیقت: برای جلوگیری از «انحراف پرامپت» (Prompt Drift)، تیم دستور را از پیشفرضهای پراکنده در سرور و متون صفحهٔ فرود، به یک ثابت (Constant) واحد در کدبیس Next.js App Router منتقل کرد که روی Vercel مستقر شده است. پیش از این، متون صفحهٔ فرود اولویت داشتند و تغییرات در پیشفرضهای سرور به کاربران نمیرسید. اکنون پرامپت توسط هر دو بخش پیکربندی ابزار و صفحات فراخوانی میشود و پرامپت طولانی قدیمی فقط در تاریخچه git باقی مانده است.
مدیریت شکستهای عملیاتی
فراتر از پرامپت، تیم یک الگوی بازپرداخت سختگیرانه در سطح پایگاهداده برای مدیریت شکستهای API پیاده کرد. بر اساس بررسیها، فیلترهای ایمنی GPT Image 2 (که از طریق apimodels.app فراخوانی میشود) در اوایل سپتامبر ۲۰۲۶ تقریباً از هر ۲۰ درخواست، یک مورد را رد میکنند. سیستم باید تضمین کند اعتبار کاربر دقیقاً یکبار بازگردانده شود.
شکستها میتوانند از طریق مسیرهای مختلف کد، از جمله جابهای پسزمینه (Background Jobs)، نظرسنجیهای کلاینت (Client Polls) و کرونهای پاکسازی (Cleanup Crons) مشاهده شوند. برای جلوگیری از بازپرداخت تکراری، آنها از یک دستور SQL UPDATE استفاده میکنند که تنها در صورتی تعداد ردیفهای تغییریافته را برمیگرداند که وضعیت با موفقیت از 'processing' به 'failed' تغییر کند:
const failAndRefund = async (errorMessage: string) => { const result = await query( UPDATE generations SET status = 'failed', error_message = $1 WHERE id = $2 AND status = 'processing', [errorMessage.substring(0, 500), generationId], ) if (result.rowCount && result.rowCount > 0) { await addCredits(userId, creditsCharged) } }
این روش از اشتباه هزینهبرِ استفاده از SELECT و سپس UPDATE جلوگیری میکند؛ چرا که در روش قبلی، ممکن بود دو پردازش نظارتکننده (Poller) وضعیت 'processing' را بخوانند پیش از آنکه هر کدام بتوانند شکست را ثبت کنند.
محدودیتها و پرسشهای متداول
این رویکرد تکجملهای جایگزین کامل تمام ابزارها نیست. این روش هیچ «دکمهای» برای کنترل شدت نویز یا جزئیات پوست در هر تصویر به کاربر نمیدهد و برای این کار، ابزارهای مبتنی بر اسلایدر بهتر هستند. همچنین، رندرهای مجدد میتوانند جزئیات بسیار ریز را تغییر دهند.
پاسخ به برخی پرسشهای رایج:
- چرا iPhone 12؟ چون یک دوربین رایج است که در دادههای آموزشی به خوبی نمایش داده شده است. کاربران اغلب این مورد را در پرامپتهای خود به مدلهای آیفون ۱۳ تا ۱۷ تغییر میدهند.
- آیا روی مدلهای دیگر جواب میدهد؟ آزمایشها محدود به GPT Image 2 بود، اما تئوری نام بردن از دستگاه بهجای توصیف خروجی باید قابل تعمیم باشد.
- چرا فقط نویز را در پسپردازش اضافه نکنیم؟ لایههای بافت (Texture Overlays) فقط سطح را اصلاح میکنند، اما مشکلات ساختاری مثل نور پلاستیکی و پوست بیش از حد صاف، نیاز به رندر مجدد دارند.
این ابزار در sparkpix.ai/ai-image-humanizer با هزینه ۵ اعتبار در هر تصویر (اولین تصویر رایگان) در دسترس است. برای کسانی که ابزارهای مشابه میسازند، این تغییر نشان میدهد عصر مهندسی پرامپت (Prompt Engineering) — شبیه به کسی که میداند چطور از یک مشاور باتجربه بهترین جواب را بگیرد — از طریق فهرستهای جامع در حال پایان است. در واقع، برای رسیدن به نتایج دقیق در عکاسی محصول، رویکرد تبدیل تصویر به تصویر اغلب راهکاری موثرتر برای عبور از بنبستهای متنی است. ارزش واقعی اکنون در شناسایی «توکنهای با چگالی بالا» است که خوشههای آموزشی داخلی مدل را دقیقتر از لیستی از صفتها فعال میکنند.
گام بعدی شما
- در پرامپتهای خود بهجای توصیف ویژگیهای بصری (مثل «نور طبیعی» یا «بافت پوست»)، نام سختافزارهای مشهور (مثل دوربینهای DSLR یا مدلهای خاص گوشی) را امتحان کنید.
- اگر از APIهای هوش مصنوعی استفاده میکنید، برای عملیات حساس مثل بازپرداخت اعتبار، بهجای SELECT-then-UPDATE، از شرطهای اتمیک در دستور UPDATE استفاده کنید.
- بررسی کنید آیا توکنهای کوتاه و متراکم میتوانند جایگزین دستورات طولانی شما در مدلهای تبدیل متن به تصویر شوند یا خیر.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما دربارهی تراشههای Blackwell مراجعه کنید.




گفتگو