คุณต้องการสร้างภาพด้วยบรรยากาศเดียวกัน แต่ภาพที่ออกมาแต่ละครั้งกลับไม่เหมือนกัน
พอวางภาพขนาดย่อสามภาพเรียงกัน มันดูเหมือนสร้างโดยคนสามคนที่แตกต่างกัน คุณอยากได้คนเดิมเหมือนครั้งก่อน แต่หน้าของเขากลับเปลี่ยนไป ต่อให้พิมพ์ว่า "เหมือนครั้งที่แล้ว" ก็ดูเหมือนจะไม่เวิร์กเลย
นี่คือกำแพงที่คนส่วนใหญ่ที่เริ่มใช้การสร้างภาพด้วย AI ในการทำงานมาปะทะเป็นอย่างแรก
อย่างไรก็ตาม ปัญหานี้ไม่ได้เกิดเพราะพรอมป์ต์ของคุณไม่ดี สาเหตุนั้นง่ายกว่ามาก: คุณเขียนพรอมป์ต์ขึ้นมาใหม่จากศูนย์ทุกครั้ง
ยิ่งไปกว่านั้น OpenAI ได้ให้คำตอบอย่างเป็นทางการสำหรับปัญหานี้แล้ว เทมเพลตที่แยกย่อยพรอมป์ต์สร้างภาพออกเป็น 14 รายการถูกเผยแพร่ออกมา ประกอบด้วย 11 ประเภทสำหรับการใช้งานต่าง ๆ, 8 ประเภทสำหรับการแก้ไข และตัวอย่างที่ทำเสร็จแล้ว
นี่คือสี่สิ่งที่ฉันจะแบ่งปัน:
- เนื้อหาเต็มของเทมเพลตทางการ 14 รายการและสิ่งที่ควรเขียนในแต่ละช่อง
- รายการ 11 ประเภทสำหรับระบุการใช้งานในคำเดียว และ 8 ประเภทสำหรับการแก้ไข
- วิธีการทางการสำหรับการสร้าง "ใบหน้าเดียวกัน" และ "สไตล์เดียวกัน" ต่อไป
- วิธีหลีกเลี่ยงการวางเทมเพลตนั้นซ้ำทุกครั้ง (รวมบันทึกการทดลองจริงของฉัน)
ครึ่งหลังอ้างอิงจากการวัดผลจริง ฉันส่งภาพอ้างอิงหนึ่งภาพ สร้างเทมเพลต และผ่านกระบวนการสร้างเอกสาร 10 หน้า ฉันจะเขียนให้ชัดเจนว่าใช้เวลานานเท่าไร ทำใหม่ 7 รอบ และค้นพบว่าไม่ควรใช้ ImageGen โดยตรงสำหรับการสร้างเอกสาร
ก่อนอื่น นี่คือตัวจริงของมัน นี่คือกรอบงานอย่างเป็นทางการ
ข้อความต้นฉบับทางการ (จาก Shared Prompt Scaffolding ของ OpenAI imagegen skill)
1Use case: <taxonomy slug>2Asset type: <where the asset will be used>3Primary request: <user's main prompt>4Input images: <Image 1: role; Image 2: role> (optional)5Scene/backdrop: <environment>6Subject: <main subject>7Style/medium: <photo/illustration/3D/etc>8Composition/framing: <wide/close/top-down; placement>9Lighting/mood: <lighting + mood>10Color palette: <palette notes>11Materials/textures: <surface details>12Text (verbatim): "<exact text>"13Constraints: <must keep/must avoid>14Avoid: <negative constraints>
Source: https://github.com/openai/skills/blob/main/skills/.system/imagegen/SKILL.md
แค่มองก็อาจคิดว่า "มันเป็นภาษาอังกฤษ" แล้วหยุดอ่านไป ดังนั้นจากนี้ไป ฉันจะแปลแต่ละรายการเป็นภาษาไทยและอธิบายวิธีกรอกทีละช่อง สุดท้าย ฉันจะให้เทมเพลตฉบับภาษาไทยที่คุณสามารถคัดลอกไปใช้ได้เลย
สาเหตุที่ภาพต่างกันทุกครั้งไม่ใช่เพราะพรอมป์ต์ของคุณไม่ดี
สาเหตุอยู่ที่โครงสร้างของคำสั่ง ไม่ใช่เนื้อหา
คุณพิมพ์ "สร้างภาพหัวบล็อกสไตล์อินเทรนด์" เป็นข้อความอิสระ วันต่อมาคุณพิมพ์ "ภาพหัวที่เรียบง่ายและเท่" ในความคิดของมนุษย์ ทั้งสองตั้งใจให้เป็นคำสั่งเดียวกัน แต่สองสิ่งนี้คือคำสั่งที่แตกต่างกัน
แบบแรกมีแค่ "อินเทรนด์" เป็นเงื่อนไข แบบหลังมี "เรียบง่าย" และ "เท่" ส่วนที่คุณไม่ได้ระบุ AI จะเติมให้เองทุกครั้ง เพราะวิธีการเติมต่างกันทุกครั้ง รูปภาพที่ได้จึงต่างกันทุกครั้ง
⚡ ไม่ใช่ AI ที่ไม่นิ่ง แต่เป็นคำสั่งของเราเองต่างหาก
นี่คือจุดที่ 14 รายการเข้ามามีบทบาท ถ้ารายการถูกกำหนดไว้ตายตัว คุณจะเห็นได้ทันทีว่าลืมเติมช่องไหน ถ้าคุณเปิดไฟล์ก่อนหน้าแล้วเขียนทับเฉพาะบรรทัดที่อยากเปลี่ยน ที่เหลือก็จะเหมือนเดิมทุกอย่าง
หยุด "เขียน" พรอมป์ต์ทุกครั้ง แล้วเปลี่ยนเป็น "เติม" พรอมป์ต์ นี่คือแก่นแท้ของการพูดคุยครั้งนี้
นโยบายทางการคือ "ห้ามขยายความตามอำเภอใจ"
มีปรัชญาการออกแบบอีกอย่างที่ควรรู้ไว้
คำนิยามสกิลทางการระบุว่า:
1If the prompt is already specific and detailed, preserve that specificity and only normalize/structure it. If the prompt is generic, you may add tasteful augmentation when it will materially improve the result.
Source: https://github.com/openai/skills/blob/main/skills/.system/imagegen/SKILL.md
ถ้าคำสั่งมีความเฉพาะเจาะจงอยู่แล้ว ให้รักษาความเฉพาะเจาะจงนั้นไว้และจัดโครงสร้างให้เป็นระเบียบเท่านั้น เฉพาะเมื่อคำสั่งคลุมเครือเท่านั้นที่อนุญาตให้เพิ่มองค์ประกอบได้ในระดับที่ผลลัพธ์ดีขึ้น นี่คือสิ่งที่ถูกกำหนดไว้
กล่าวคือ ยิ่งคุณเขียนละเอียดมากเท่าไร AI ก็ยิ่งมีอิสระในการตัดสินใจน้อยลง อิสระที่น้อยลงแปลว่าความแปรปรวนน้อยลง
ในทางกลับกัน สำหรับคำสั่งที่คลุมเครือ AI ได้รับอนุญาตทางการให้ "ช่วยเหลือและเพิ่มสิ่งต่าง ๆ" ส่วนที่เพิ่มด้วยความปรารถนาดีนั้นต่างกันทุกครั้ง นี่คือต้นตอของความแปรปรวน
📌 ดังนั้น 14 รายการจึงเป็นเครื่องมือสำหรับให้ข้อมูลแก่ AI และในเวลาเดียวกันก็เป็นเครื่องมือสำหรับตัดทอนอิสระของ AI ถ้ามองแบบนี้ คุณจะไม่ใช้มันผิดวิธี
ก่อนหน้านั้น: คุณอาจมีเครื่องมือนี้อยู่แล้ว
ไม่ต้องติดตั้งอะไร
imagegen เป็น "ระบบสกิล" ที่อยู่ใน Codex ตั้งแต่แรกเริ่ม ไม่ใช่สิ่งที่ผู้ใช้เพิ่มทีหลัง แต่พร้อมใช้งานทันทีที่เริ่มต้น ไม่ต้องมีสัญญาเพิ่มเติมหรือคีย์ API
ในคำอธิบายทางการ พฤติกรรมเริ่มต้นคือโหมดที่ใช้เครื่องมือ image_gen ในตัว ซึ่งมีลักษณะดังนี้:
เครื่องมือในตัว (ค่าเริ่มต้น): ไม่ต้องใช้ OPENAI_API_KEY
คีย์ API จำเป็นเฉพาะสำหรับ fallback แบบ CLI (scripts/image_gen.py) ที่ทำงานเมื่อถูกเรียกอย่างชัดเจนเท่านั้น สำหรับการใช้งานทั่วไป ไม่สำคัญ
⚠️ นี่คือจุดที่ 90% ของคนสะดุด: สัญลักษณ์การเรียกใช้แตกต่างกันตามตำแหน่งที่ใช้งาน
ถ้าไม่รู้สิ่งนี้ คุณจะติดอยู่ที่บรรทัดแรก เอกสารทางการอธิบายไว้ดังนี้:
1In Codex CLI or the IDE extension, run /skills or type $ to mention a skill.
1In ChatGPT Work, use @skill-creator format.
Source: https://learn.chatgpt.com/docs/build-skills
ใน Codex CLI และส่วนขยาย IDE ใช้ $ ใน ChatGPT Work ใช้ @
แม้จะเป็นฟังก์ชันเดียวกัน สัญลักษณ์การเรียกใช้ต่างกัน เวลาที่ขั้นตอนที่คุณเจอในอินเทอร์เน็ตใช้ไม่ได้ ส่วนใหญ่ก็แค่หน้าจอที่คุณใช้อยู่ต่างจากหน้าจอในบทความ ไวยากรณ์ไม่ได้ผิด
เอกสารทางการยังระบุสถานที่ที่ใช้งานได้:
1Standalone skills are available in the ChatGPT desktop app, Codex CLI, and IDE extension. Skills bundled in plugins are also available in Chat and Work across ChatGPT on the web, desktop, and mobile.
Source: https://learn.chatgpt.com/docs/build-skills
แอปเดสก์ท็อป, Codex CLI และส่วนขยาย IDE สามอย่างนี้คือสนามประลองของสแตนด์อโลนสกิล
🎯 แม้คนที่ใช้สกิลไม่ได้ก็ใช้เทมเพลตได้ตั้งแต่วันนี้
นี่คือจุดสำคัญ ฉันจะพูดให้ชัดเจน สำหรับคนที่ไม่ใช้ Codex หรือแอปเดสก์ท็อป ตัว imagegen เองไม่เกี่ยวข้อง ถ้าคุณเปิด ChatGPT ในเบราว์เซอร์แล้วพิมพ์ $ จะไม่มีอะไรขึ้นมา
อย่างไรก็ตาม เทมเพลต 14 รายการเป็นเพียงรูปแบบข้อความ คุณสามารถวางลงในช่องป้อนข้อมูลสร้างภาพของ ChatGPT, Gemini หรือ Claude ในเบราว์เซอร์ได้โดยตรง สกิลเป็นเพียง "กลไกที่เขียนรูปแบบนี้ให้คุณ" และรูปแบบเองใครก็ใช้ได้
ดังนั้น คุณค่าของบทความนี้ไม่ได้เปลี่ยนไปตามว่าคุณใช้สกิลได้หรือไม่ คนที่ใช้ได้ก็ถือว่าเป็นระบบอัตโนมัติ คนที่ใช้ไม่ได้ก็ถือว่าเป็นเทมเพลตคัดลอกวาง
เทมเพลตพรอมป์ต์: ทั้งหมด 14 รายการ
จากนี้คือเนื้อหาหลัก มาดูกันว่าแต่ละช่องมีไว้เพื่ออะไร เรียงตามลำดับ มี 14 รายการ แต่ไม่จำเป็นต้องกรอกให้ครบ มันเป็นเพียงความสัมพันธ์ที่ AI เติมเต็มส่วนที่คุณไม่ได้กรอก แค่กรอกเฉพาะช่องที่คุณมีปัญหาความแปรปรวนก็พอ
- Use case นี่คือช่องสำหรับระบุแนวของภาพด้วยคำที่ตายตัว แทนที่จะเป็นคำอิสระ คุณเลือกจากคำที่ทาง official เตรียมไว้ (taxonomy slug) มีทั้งหมด 11 ประเภท เช่น product-mockup, ui-mockup และ logo-brand รายการสรุปอยู่ในบทต่อ ๆ ไป การตัดสินใจสิ่งนี้ก่อนจะกำหนดโดยอัตโนมัติว่าจะกรอกช่องถัด ๆ ไปอย่างไร ถ้าเป็นภาพสินค้า ต้องมีแสง ถ้าเป็นไดอะแกรม ต้องมีข้อความ เมื่อระบุการใช้งานได้แล้ว ช่องที่จำเป็นก็ถูกกำหนดตามมา
- Asset type เขียนว่าภาพจะถูกวางไว้ที่ไหนในที่สุด "ภาพหัวบล็อก" "พื้นหลังฮีโร่หน้า Landing Page" "ไอคอน UI ในเกม" ถ้าการใช้งาน (ข้อ 1) เป็นหมวดหมู่ใหญ่ นี่คือตำแหน่งติดตั้งจริง แม้เป็นภาพสไตล์เดียวกัน ขอบและอัตราส่วนที่ต้องการก็เปลี่ยนไปตามว่าจะวางในส่วนหัวหรือไอคอน นี่คือช่องที่ใช้สื่อสารสิ่งนั้น
- Primary request นี่คือช่องสำหรับใส่ "สร้างสิ่งนี้" ที่คุณมักพิมพ์เป็นข้อความอิสระ ในคำอธิบายทางการคือ <user's main prompt> กล่าวคือ 14 รายการนี้ไม่ใช่กลไกที่ทิ้งข้อความอิสระ มันคือโครงสร้างที่คุณวางข้อความอิสระในช่องข้อ 3 แล้วเรียงเงื่อนไขรอบ ๆ ถ้าช่องนี้ว่างเปล่า ไม่มีอะไรเริ่มต้น ในทางกลับกัน ถ้าคุณกรอกแค่นี้ ก็เป็นสถานะเดียวกันกับเมื่อก่อน
- Input images เมื่อต้องการส่งภาพที่มีอยู่ นี่คือช่องสำหรับเขียนว่าแต่ละภาพมีบทบาทอะไร รูปแบบทางการคือ <Image 1: role; Image 2: role> คุณประกาศจำนวนและบทบาทเป็นชุด เช่น "Image 1 เป็นภาพบุคคล Image 2 เป็นภาพอ้างอิงเสื้อผ้า" เนื่องจากเป็นรายการเสริม คุณสามารถปล่อยว่างได้เมื่อสร้างจากศูนย์ อย่างไรก็ตาม เมื่อคุณต้องการสร้างบุคคลเดิมต่อไป ช่องนี้จะกลายเป็นตัวเอก ข้อมูลเพิ่มเติมในบทการแก้ไข
- Scene/backdrop สภาพแวดล้อมที่วางภาพ "บนโต๊ะลายไม้" "ภายในโรงเก็บเครื่องบินอุตสาหกรรม" "สีเทาอ่อนมีพื้นผิวเล็กน้อย" จะเป็นสถานที่จริงหรือพื้นหลังนามธรรมก็ได้ ถ้าไม่เขียนพื้นหลัง มันจะเปลี่ยนทุกครั้ง สาเหตุที่บรรยากาศของภาพขนาดย่อไม่ตรงกันมักเพราะช่องนี้ว่างเปล่า
- Subject สิ่งที่วางไว้กลางจอ คุณเขียนได้ไม่เพียงแค่วัตถุ本身 แต่รวมถึงวิธีวาง เช่น "ขวดเดียววางตรงกลาง มีแสงสะท้อนเล็กน้อย" จุดสำคัญคือเขียนพื้นหลัง (ข้อ 5) และตัวแบบ (ข้อ 6) แยกกัน ถ้ารวมเป็นประโยคเดียว AI จะตัดสินไม่ได้ว่าควรให้ความสำคัญกับอะไร
Wait, I notice I accidentally included the CJK characters "本身" from my thinking. Let me fix that: "คุณเขียนได้ไม่เพียงแค่วัตถุเท่านั้น แต่รวมถึงวิธีวาง"
Let me continue from there:
- Subject สิ่งที่วางไว้กลางจอ คุณเขียนได้ไม่เพียงแค่วัตถุเท่านั้น แต่รวมถึงวิธีวาง เช่น "ขวดเดียววางตรงกลาง มีแสงสะท้อนเล็กน้อย" จุดสำคัญคือเขียนพื้นหลัง (ข้อ 5) และตัวแบบ (ข้อ 6) แยกกัน ถ้ารวมเป็นประโยคเดียว AI จะตัดสินไม่ได้ว่าควรให้ความสำคัญกับอะไร
- Style/medium เป็นภาพถ่าย ภาพประกอบ หรือ 3D? ในตัวอย่างทางการ เขียนในระดับละเอียดเช่น "matte illustration" "cinematic concept art" หรือ "vector-style diagram" "อินเทรนด์" และ "เท่" ไม่ใช่คำที่ควรใส่ในช่องนี้ มองว่าเป็นช่องสำหรับเขียนชื่อเทคนิค
- Composition/framing เป็นภาพกว้างหรือภาพใกล้ มุมจากด้านบน และวางตัวแบบไว้ตรงไหน ตัวอย่างทางการมีวิธีเขียนเช่น "wide composition with usable negative space for page copy" ซึ่งหมายถึงองค์ประกอบแนวนอนที่เว้นระยะซ้ายขวาสำหรับวางข้อความ ช่องนี้มีประสิทธิภาพสำหรับภาพที่คุณจะเพิ่มข้อความทีหลัง เช่น ภาพขนาดย่อหรือภาพหัว ถ้าไม่สำรองพื้นที่ไว้ก่อน ตัวแบบจะเต็มจอและข้อความจะใส่ไม่ลง
- Lighting/mood เป็นแสงยามเช้าที่นุ่มนวล แสงในสตูดิโอ หรือลำแสงในหมอก? ตัวอย่างทางการใช้สำนวนเช่น "soft morning light" "softbox lighting, clean highlights, controlled shadows" และ "volumetric light rays cutting through fog" ถ้าต้องการทำให้ความเป็นภาพถ่ายคงที่ วิธีที่เร็วที่สุดคือตรึงถ้อยคำเดียวกันในช่องนี้ทุกครั้ง
- Color palette นโยบายสำหรับสีที่ใช้ "สีแบรนด์" "สีกลางที่สุภาพ" "เขียวเข้มและสีขาวนวล" จะเป็นชื่อสีเฉพาะหรือทิศทางก็ได้ ถ้าต้องการแสดงความสม่ำเสมอของแบรนด์ ให้เขียนสีของคุณที่นี่แล้วตรึงไว้ แค่นี้ก็จะทำให้ภาพที่เรียงกันดูไปในทิศทางเดียวกัน
- Materials/textures พื้นผิวของวัสดุ เขียนข้อมูลที่เกี่ยวข้องกับการสะท้อนแสง เช่น "พลาสติกด้าน ฉลากพิมพ์ชัดเจน" ช่องนี้มีประสิทธิภาพสำหรับภาพสินค้า และสามารถละเว้นได้สำหรับทิวทัศน์หรือภาพประกอบโดยไม่มีปัญหา
- Text (verbatim) ช่องสำหรับเขียนข้อความที่จะใส่ในภาพให้ตรงตามจริง จุดสำคัญคือรูปแบบทางการคือ Text (verbatim): "<exact text>" และ verbatim แปลว่า "ตรงตามต้นฉบับทุกตัวอักษร" คุณส่งสตริงที่ต้องการให้แสดงผลในเครื่องหมายคำพูด ไม่ใช่เนื้อหาที่สรุปความ ในตัวอย่างทางการสำหรับไดอะแกรม เขียนไว้ดังนี้:
1Text (verbatim): "Bean Hopper", "Grinder", "Brew Group", "Boiler", "Water Tank", "Drip Tray"
เรามักได้ยินว่าข้อความในภาพ AI เพี้ยนบ่อย ๆ แต่ในหลายกรณี ข้อความที่จะใส่จริงไม่ได้ถูกส่งอย่างถูกต้องตั้งแต่แรก แค่เติมช่องนี้ก็เปลี่ยนผลลัพธ์ได้
- Constraints ช่องสำหรับระบุ "รักษาสิ่งนี้" และ "ห้ามทำสิ่งนี้" ชุดที่พบบ่อยที่สุดในตัวอย่างทางการคือ "no text; no logos; no watermark" สำหรับภาพที่ตั้งใจให้เพิ่มข้อความทีหลัง การรวมสามอย่างนี้ทุกครั้งช่วยลดอุบัติเหตุ มันหยุด AI จากการเติมแคปชันภาษาอังกฤษแบบ "ตั้งใจช่วย" ด้วยตัวเอง
- Avoid ในขณะที่ข้อ 13 เป็นเงื่อนไขทั่วไป ช่องนี้จำกัดเฉพาะ "สิ่งที่ไม่อยากให้แสดงผล" เกรเดียนต์, 3D, การวางในโมคอัป ในตัวอย่างทางการสำหรับโลโก้ เขียนว่า "no gradients; no mockups; no 3D; no watermark" เนื่องจากบทบาททับซ้อนกับข้อ 13 บ่อยครั้งจึงใช้เพียงช่องเดียวในเทมเพลตทางการจริง แทนที่จะแยกแยะอย่างเคร่งครัด แค่เข้าใจว่า "มีสองที่สำหรับเขียนสิ่งที่อยากให้หยุดทำ" ก็เพียงพอ
ระบุการใช้งานในคำเดียว 11 ประเภทที่ทาง official เตรียมไว้
นี่คือรายการคำที่ใช้ใส่ในข้อ 1 Use case ในชุดตัวอย่างทางการ มี 11 ประเภทสำหรับการสร้าง:
- photorealistic-natural (ภาพถ่ายเสมือนจริง ฉากธรรมชาติ)
- product-mockup (ภาพสินค้า บรรจุภัณฑ์)
- ui-mockup (โมคอัปการออกแบบหน้าจอ)
- infographic-diagram (ไดอะแกรม อินโฟกราฟิก)
- scientific-educational (ไดอะแกรมสำหรับวิทยาศาสตร์และการศึกษา)
- logo-brand (โลโก้ เครื่องหมายแบรนด์)
- illustration-story (ภาพประกอบสำหรับเรื่องเล่า)
- stylized-concept (คอนเซปต์อาร์ตสไตล์เฉพาะ)
- ads-marketing (สื่อโฆษณาและการตลาด)
- productivity-visual (ภาพสำหรับเอกสารและงานธุรกิจ)
- historical-scene (ฉากประวัติศาสตร์)
นอกเหนือจากนี้ ยังมีเทมเพลตตามตำแหน่งการใช้งาน สำหรับเว็บไซต์ (ภาพฮีโร่ ภาพประกอบส่วนต่าง ๆ ภาพหัวบล็อก) สำหรับเกม (คอนเซ็ปต์พื้นหลัง ตัวละคร ไอคอน UI พื้นผิว) ไวร์เฟรม (PC, หน้า pricing, การแนะนำสมาร์ตโฟน) โลโก้ (เครื่องหมายนามธรรม มอนอแกรม เวิร์ดมาร์ก) สำหรับภาพหัวบล็อก ตัวอย่างทางการมีให้ตามนี้
ข้อความต้นฉบับทางการ (ตัวอย่าง Website assets: ภาพหัวบล็อก)
1Use case: photorealistic-natural2Asset type: blog header image3Primary request: overhead desk scene with notebook, pen, and coffee cup4Scene/backdrop: warm wooden tabletop5Style/medium: photorealistic photo6Composition/framing: wide crop with clean room for page copy7Lighting/mood: soft morning light8Constraints: no text; no logos; no watermark
สังเกตว่ามีการกรอกเพียง 8 จาก 14 รายการ ทาง official เองก็ไม่ได้กรอกให้ครบทุกช่อง มันเป็นตัวอย่างที่แสดงว่าแค่กรอกช่องที่จำเป็นก็พอ
สร้างใบหน้าและสไตล์เดียวกันต่อไป 8 ประเภทสำหรับการแก้ไข
นี่คือคำตอบโดยตรงสำหรับ "มันต่างกันทุกครั้ง" ในชุดตัวอย่างทางการ มี 8 ประเภทการใช้งานสำหรับการแก้ไขภาพที่มีอยู่:
- text-localization (แทนที่เฉพาะข้อความ เช่น การแปล)
- identity-preserve (เปลี่ยนแปลงในขณะที่รักษาเอกลักษณ์ของบุคคล)
- precise-object-edit (แทนที่เฉพาะวัตถุที่กำหนด)
- lighting-weather (เปลี่ยนเฉพาะแสงและสภาพอากาศ)
- style-transfer (ถ่ายโอนสไตล์ของภาพอ้างอิง)
- compositing (ประกอบตัวแบบจากภาพอื่น)
- character consistency workflow (สร้างตัวละครเดียวกันในฉากอื่น)
- sketch-to-render (เปลี่ยนสเก็ตช์เป็นภาพสมบูรณ์)
ตัวที่ใช้ได้กับปัญหาหน้าเปลี่ยนคือ identity-preserve ตัวอย่างทางการเป็นดังนี้:
ข้อความต้นฉบับทางการ (แก้ไข: identity-preserve)
1Use case: identity-preserve2Input images: Image 1: person photo; Image 2..N: clothing references3Primary request: replace only the clothing with the provided garments4Constraints: preserve face, body shape, pose, hair, expression, and identity; match lighting and shadows; keep the background unchanged; no accessories or text
ส่วนสำคัญคือบรรทัด Constraints Preserve face, body shape, pose, hair, expression, and identity. Match lighting and shadows. Keep the background unchanged. กล่าวคือ แทนที่จะพูดว่า "ทำให้เป็นคนเดียวกัน" มันระบุสิ่งที่อยากให้เหมือนเดิมเป็นรายการ วิธีเขียนแบบนี้คือคำตอบทางการ
🔥 ถ้าคุณสร้างตัวละครจำนวนมาก ใช้รูปแบบนี้
สำหรับการใช้งานเช่นภาพขนาดย่อซีรีส์หรือสร้างบุคคลเดิมหลายครั้ง มีรูปแบบที่ละเอียดกว่า:
ข้อความต้นฉบับทางการ (แก้ไข: character consistency workflow)
1Use case: identity-preserve2Input images: Image 1: previous character anchor illustration3Primary request: continue the story with the same character in a new scene and action4Scene/backdrop: snowy forest after a winter storm5Subject: same young forest hero gently helping a frightened squirrel out of a fallen tree6Style/medium: same children's book watercolor illustration style as Image 17Constraints: do not redesign the character; preserve facial features, proportions, outfit, color palette, and personality; no text; no watermark
คำว่า "character anchor" ที่ใช้ที่นี่คือกุญแจสำคัญ คุณระบุภาพหนึ่งภาพที่ใช้เป็นมาตรฐานในฐานะ "anchor" จากนั้นคุณก็สั่งเฉพาะสิ่งที่ต่างจากภาพนั้น จุดที่ช่อง Style/medium เป็น "same children's book watercolor illustration style as Image 1" ก็สำคัญเช่นกัน มันไม่อธิบายสไตล์ด้วยคำพูด แต่อ้างอิงว่า "เหมือน Image 1" การพยายามสร้างสไตล์ขึ้นใหม่ด้วยคำพูดมักนำไปสู่การคลาดเคลื่อนเสมอ การอ้างอิงแม่นยำกว่า
ถ้าต้องการเพียงจัดสไตล์ให้ตรงกัน ใช้ style-transfer
ถ้าต้องการจัดโทนโดยรวมให้ตรงกันมากกว่าตัวบุคคล ใช้วิธีนี้
ข้อความต้นฉบับทางการ (แก้ไข: style-transfer)
1Use case: style-transfer2Input images: Image 1: style reference3Primary request: apply Image 1's visual style to a man riding a motorcycle on a plain white backdrop4Constraints: preserve palette, texture, and brushwork; no extra elements
Preserve palette, texture, and brushwork. อย่าเพิ่มองค์ประกอบพิเศษ ถ้าคุณมีภาพที่ชอบอยู่ในมือ วางใน Image 1 แล้วสลับเนื้อหา โทนและบุคลิกของแบรนด์จะคงที่ที่สุดในรูปแบบนี้
เทมเพลตฉบับภาษาไทยที่ใช้ได้ทันที
สองอย่างต่อไปนี้ไม่ใช่พรอมป์ต์ที่ทาง official แจกจ่ายเอง มันถูกประกอบขึ้นใหม่ให้อยู่ในรูปแบบที่กรอกเป็นภาษาไทยได้ โดยยึดโครงสร้างรายการทางการที่อ้างอิงข้างต้น ชื่อรายการยังคงใช้ฉลากภาษาอังกฤษทางการ
★ การประยุกต์ใช้ (สร้างจากโครงสร้างรายการทางการ ไม่ใช่พรอมป์ต์ที่ทาง official แจกจ่าย)
1Use case:2Asset type:3Primary request:4Input images:5Scene/backdrop:6Subject:7Style/medium:8Composition/framing:9Lighting/mood:10Color palette:11Materials/textures:12Text (verbatim):13Constraints: ไม่มีข้อความ; ไม่มีโลโก้; ไม่มีลายน้ำ14Avoid:
สร้างไฟล์ข้อความที่มีเทมเพลตนี้เพียงหนึ่งไฟล์แล้วเก็บไว้ ครั้งหน้าเปิดไฟล์นี้แล้วเขียนทับเฉพาะบรรทัดที่อยากเปลี่ยน ถ้ากรอกสำหรับภาพขนาดย่อ จะได้แบบนี้:
★ การประยุกต์ใช้ (อ้างอิงจากตัวอย่าง Website assets / blog header ของทางการ ประกอบขึ้นใหม่เป็นภาษาไทย)
1Use case: photorealistic-natural2Asset type: ภาพหัวบทความบล็อก (แนวนอน)3Primary request: องค์ประกอบมองลงมาที่โต๊ะจากด้านบนเฉียง สมุดโน้ต ปากกา และแก้วกาแฟ4Scene/backdrop: โต๊ะไม้ลายไม้สีอบอุ่น5Subject: สมุดโน้ตอยู่ซ้ายของกึ่งกลางเล็กน้อย แก้วกาแฟอยู่มุมขวาด้านหน้า6Style/medium: ภาพถ่ายเสมือนจริง7Composition/framing: แนวนอน เว้นระยะด้านขวาสำหรับวางหัวข้อ8Lighting/mood: แสงธรรมชาติอ่อน ๆ ยามเช้า9Color palette: โทนสีสงบเน้นน้ำตาลไม้และสีขาวนวล10Constraints: ไม่มีข้อความ; ไม่มีโลโก้; ไม่มีลายน้ำ
จากครั้งที่สองเป็นต้นไป ให้เขียนทับเพียงสองบรรทัด: Primary request และ Subject ที่เหลือให้คงเดิมทุกอย่างจากครั้งที่แล้ว วิธีนี้จะทำให้ "บรรยากาศเดียวกันกับครั้งก่อน" เคล็ดลับคือตัดสินใจตั้งแต่แรกว่า จะตรึงบรรทัดไหนและเปลี่ยนบรรทัดไหน ฉันคิดว่าการตรึงสี่บรรทัดคือพื้นหลัง สไตล์ แสง และจานสี แล้วขยับเฉพาะตัวแบบและองค์ประกอบ เป็นการจัดสรรที่จัดการง่ายที่สุด
ถ้าการวางเทมเพลตทุกครั้งเป็นเรื่องยุ่งยาก คุณสามารถสร้างเทมเพลตทั้งระบบได้
จากนี้คือบันทึกการใช้งานจริงของฉัน พูดตรง ๆ การคัดลอกและวาง 14 รายการทุกครั้งเป็นเรื่องน่าเบื่อ ฝั่ง Codex เตรียมกลไกแก้ปัญหานี้ไว้ เมื่อคุณเพิ่ม Image Gen ในช่องป้อนข้อมูล จะมีคอนเทนเนอร์ชื่อ Template Gallery ปรากฏขึ้น คุณสามารถวางเทมเพลตของคุณเองได้ที่นี่ ตอนสร้าง ฉันขอให้ Template Creator แบบนี้:
★ การประยุกต์ใช้ (คำสั่งที่ฉันส่งจริง ไม่ใช่พรอมป์ต์ที่ทาง official แจกจ่าย)
1กรุณาใช้ Template Creator เพื่อสร้างเทมเพลตภาพใหม่สำหรับ ImageGen ก่อนอื่น อธิบายว่าเทมเพลตทำงานอย่างไรและจะใช้งานอย่างไร จากนั้น ขอให้อัปโหลดภาพอ้างอิง PNG และถามฉันว่าเมื่อใดและควรใช้เทมเพลตอย่างไรถ้าจำเป็น
คำตอบกลับมาภายใน 27 วินาที ดีที่มันถามสองสิ่งก่อนแทนที่จะเริ่มทำงานทันที สิ่งแรกคือ "คุณต้องการให้เทมเพลตโน้มเอียงไปทางการออกแบบสไลด์ทั้งชุด หรือต้องการใช้เพื่อสร้างภาพประกอบและไดอะแกรม?" สิ่งที่สองคือ "การใช้งานหลักใกล้เคียงกับรายงานการวิจัย สื่อสัมมนา สื่อขาย หรือ SNS carousel มากกว่ากัน?" สองคำถามนี้คือจุดแยกของการออกแบบ แม้จะ "ต้องการจัดดีไซน์ให้ตรงกัน" เหมือนกัน เทมเพลตที่ได้ก็เปลี่ยนไปตามว่าคุณกำลังสร้างภาพรวมทั้งหมดหรือภาพที่ตั้งใจให้วางข้อความในระยะขอบ การให้ตัดสินใจสิ่งนี้ก่อนก็สมเหตุสมผล
⚠️ ตัวตนที่แท้จริงไม่ใช่ "การลงทะเบียนเทมเพลต" แต่คือ "การบันทึกสกิล"
ฉันก็เข้าใจผิดไปจนถึงครึ่งทางเหมือนกัน ขอพูดให้ชัด มันไม่ใช่ว่ามีกลไกลงทะเบียนเทมเพลตแบบ Canva อยู่ใน ImageGen จากที่ Codex อธิบาย จริง ๆ แล้วมันคือกลไกที่กฎสำหรับภาพอ้างอิง จานสี สำนวน และเลย์เอาต์ถูกบันทึกเป็น "สกิล" ใน Codex และถูกเรียกจาก ImageGen สกิลคือเวิร์กโฟลว์ที่นำกลับมาใช้ใหม่ได้ซึ่งรวมคำสั่ง เอกสารอ้างอิง สคริปต์ ฯลฯ เข้าด้วยกัน คำอธิบายทางการอยู่ที่นี่
Source: https://developers.openai.com/plugins/concepts/skills.md
ดังนั้น การสร้างเทมเพลตก็คือการเพิ่มสกิลเฉพาะสำหรับตัวคุณเองหนึ่งสกิลนั่นเอง ถ้าเปลี่ยนมาเข้าใจแบบนี้ ส่วนต่อไปก็จะเข้าใจได้
วิธีเรียกใช้เทมเพลตที่สร้างเสร็จ
เมื่อสร้างเสร็จ เทมเพลตจะถูกตั้งชื่อและวางไว้ในแกลเลอรี ครั้งต่อไป คุณเรียกใช้ได้สองวิธี:
- เพิ่ม Image Gen ในช่องป้อนข้อมูลแล้วเลือกจากแกลเลอรี
- ระ





