ข้อมูลพรอมต์

คลังพรอมต์ของ IMGPrompt รวบรวมจากแหล่งข้อมูลออนไลน์, promptoMANIA, sd-webui-prompt-all-in-one และ awesome-gpt-image-2-prompts (CC BY 4.0) หลังผ่านการตัดรายการซ้ำ จัดมาตรฐาน และแปลเป็น 18 ภาษา ได้พรอมต์สร้างภาพ/วิดีโอรวม 5000+ รายการ กระจายอยู่ใน 16 หมวดหลักและหมวดย่อยอีกหลายร้อยหมวด

โครงสร้างข้อมูล

ข้อมูลพรอมต์ทั้งหมดเก็บอยู่ในไดเรกทอรี src/app/data ของโปรเจกต์:

src
└── app
    └── data
        ├── prompt              # พรอมต์ทั้ง 18 ภาษา
        │   ├── prompt-zh.json  # จีนตัวย่อ (ต้นฉบับหลัก ภาษาอื่นแปลงมาจากไฟล์นี้)
        │   ├── prompt-en.json  # อังกฤษ
        │   ├── prompt-ja.json  # ญี่ปุ่น
        │   └── ......          # อีก 15 ภาษา
        └── prompt-custom.json  # พรอมต์ที่ผู้ใช้กำหนดเอง (โหลดให้ทุกภาษา)

พรอมต์แต่ละรายการคือออบเจกต์ JSON หนึ่งตัว:

{
  "displayName": "portrait",
  "langName": "ภาพบุคคล",
  "object": "ตัวละคร",
  "attribute": "พื้นฐาน",
  "description": "(ไม่บังคับ) คำอธิบายหรือเครดิตผู้สร้าง",
  "preview": "(ไม่บังคับ) URL ภาพพรีวิว"
}

คำอธิบายฟิลด์

ฟิลด์ จำเป็น คำอธิบาย
displayName ✅ ใช่ พรอมต์ภาษาอังกฤษ (ห้ามซ้ำ) — ข้อความจริงที่ถูกแทรกลงกล่องพรอมต์
langName ✅ ใช่ คำแปลภาษาไทย/ภาษาเป้าหมาย แสดงบนแท็กใน UI
object ✅ ใช่ หมวดหลัก (เช่น ตัวละคร / สภาพแวดล้อม / การถ่ายภาพ / สไตล์ศิลปะ)
attribute ✅ ใช่ หมวดย่อย (เช่น พื้นฐาน / การแสดงอารมณ์ / เอฟเฟกต์แสง)
description ❌ ไม่ ข้อความเพิ่มเติมในหน้าต่างพรีวิว (เครดิตผู้สร้าง คำแนะนำการใช้ ฯลฯ) — แสดงเมื่อชี้เมาส์บนเดสก์ท็อป / กดค้างบนจอสัมผัส
preview ❌ ไม่ URL ภาพพรีวิว — แสดงในหน้าต่างลอยเมื่อชี้เมาส์บนเดสก์ท็อปหรือกดค้างราว 0.5 วินาทีบนจอสัมผัส คลิก / แตะภาพย่อเพื่อเปิด lightbox ขยายดู

💡 ฟิลด์ preview คือแหล่งข้อมูลของฟีเจอร์ "ชี้เมาส์ / กดค้างเพื่อพรีวิว + คลิกเพื่อขยาย" — เดสก์ท็อปใช้การ hover จอสัมผัสใช้การกดค้าง ส่วนการแตะหนึ่งครั้งยังคงเป็นแค่การเพิ่ม / เอาแท็กออก

เคล็ดลับการดูแลข้อมูล

  • displayName ต้องไม่ซ้ำกัน — รายการซ้ำจะถูกข้ามและทำให้คุณภาพของคำแนะนำลดลง
  • ข้อตกลงเรื่องจุลภาค", " (จุลภาค+เว้นวรรค) คือตัวคั่นแท็กของแอป ภายในรายการแบบรวมชุดให้เชื่อมคำด้วย "," แบบไม่มีเว้นวรรค (เช่น snow,ice) จุลภาคที่มีเว้นวรรคหรือจุลภาคเต็มความกว้างจะถูกปฏิเสธตอนบิลด์ (การตรวจสอบ sliceData)
  • ใช้ค่า object / attribute ชุดเดียวกันในทุกภาษา เพื่อให้การนำทางหมวดหมู่สอดคล้องกัน
  • เขียน langName ให้กระชับที่สุด เพื่อไม่ให้ข้อความบนแท็กถูกตัด
  • สำหรับ preview แนะนำ WebP ขนาด ≤ 150 KB สัดส่วนจัตุรัส (1:1) จะแสดงผลในหน้าต่างพรีวิวได้สวยที่สุด

เพิ่มพรอมต์ที่กำหนดเอง

หากต้องการขยายคลังพรอมต์ ใช้ตัวแปลงข้อมูล IMGPrompt แปลงข้อมูลของคุณให้เป็นรูปแบบมาตรฐาน แล้วบันทึกผลลัพธ์ลงใน src/app/data/prompt-custom.json ไฟล์นี้จะถูกโหลดอัตโนมัติตอนเริ่มแอปและมีผลกับทุกภาษา

ตัวอย่าง:

[
  {
    "displayName": "cyberpunk cityscape",
    "langName": "ทิวทัศน์เมืองไซเบอร์พังค์",
    "object": "สภาพแวดล้อม",
    "attribute": "เมือง"
  },
  {
    "displayName": "cinematic lighting",
    "langName": "แสงระดับโรงภาพยนตร์",
    "object": "แสงและเงา",
    "attribute": "เอฟเฟกต์แสง",
    "description": "แสงทิศทางนุ่มนวล + ริมไลต์เพิ่มมิติ",
    "preview": "https://example.com/preview/cinematic.webp"
  }
]

รายการที่กำหนดเองใช้กฎการแสดงผลเดียวกับรายการในตัวทุกประการ — รายการที่มี preview จะได้ฟีเจอร์ชี้เมาส์ / กดค้างเพื่อพรีวิว + คลิกเพื่อขยายด้วย