φυβλαςのβλογ
phyblas的博客



การทำให้ comfyui สามารถเขียนข้อความสั่งเป็นภาษาไทยได้
เขียนเมื่อ 2024/07/02 21:00
แก้ไขล่าสุด 2024/07/03 21:00
 

comfyui เป็นเครื่องมือสำหรับสร้างภาพด้วยสเตเบิลดิฟฟิวชัน (stable diffusion) ปัญญาประดิษฐ์ช่วยสร้างภาพที่สามารถสร้างภาพที่สวยงามขึ้นได้ตามข้อความที่เราป้อนเข้าไปสั่งมัน

อย่างไรก็ตาม โดยพื้นฐานแล้วข้อความที่ใช้เป็นคำสั่งของสเตเบิลดิฟฟิวชันนั้นใช้ได้แค่ภาษาอังกฤษเท่านั้น ยังไม่มีการรองรับภาษาไทย สำหรับคนที่ไม่ถนัดภาษาอังกฤษอย่างเราแแล้วจึงใช้งานได้ลำบาก

บทความนี้จีงจะมาขอแนะนำวิธีทำให้ comfyui สามารถรับข้อความคำสั่งเป็นภาษาไทยได้ โดยใช้โหนดของปลักอินเสริมที่ชื่อว่า AlekPet




การติดตั้งปลักอินเสริม AlekPet

เริ่มจากติดตั้ง AlekPet โดยวิธีที่ง่ายที่สุดก็คือใช้ comfyui manager เข้าไปยัง custom node manager แล้วพิมพ์ค้นว่า alek ก็น่าจะเจอ



จากนั้นทำการติดตั้งแล้วก็รีสตาร์ตใหม่เท่านี้ก็สามารถใช้ได้แล้ว




การสร้างโหนด

ต่อไปเป็นตัวอย่างการใช้งาน ง่ายสุดขอเริ่มสร้างจากกระแสงาน (workflow) ตั้งต้น โดยกดปุ่ม load default แล้วก็จะได้โหนดตั้งต้นแบบนี้มา



ให้เราทำการเพิ่มโหนดสำหรับใช้งานคราวนี้ที่เราเพิ่งลงเข้าไป ชื่อโหนดคือ DeepTranslatorCLIPTextEncodeNode ลองดับเบิลคลิกแล้วค้นชื่อดูก็น่าจะเจอทันที (ถ้าไม่เจอแสดงว่ายังติดตั้งไม่สำเร็จหรือยังไม่ได้รีสตาร์ต)



หรืออาจใส่โดยคลิกขวาแล้วเลือกตามภาพนี้







การใช้โหนด

เมื่อกดสร้างโหนดมาแล้วก็จะได้โหนดแบบนี้ ให้แก้ตรง from_translate เป็นภาษาที่ต้องการ ในที่นี้เป็น thai (อย่างไรก็ตาม จริงๆจะตั้งเป็น auto ไปก็ได้เหมือนกัน ถ้าเราพิมพ์ภาษาไทยมันก็ตรวจจับอัตโนมัติรู้ว่าเป็นภาษาไทยอยู่แล้ว)



แล้วเราก็เอาโหนด DeepTranslatorCLIPTextEncodeNode ไปต่อเชื่อมแทนในส่วนที่เดิมทีเป็นโหนด CLIPTextEncode โดยมี ๒ อัน อันบนเป็น prompt ก็คือข้อความสั่งสิ่งที่เราต้องการอยากได้ ส่วนอันล่างเป็นข้อความสั่งเชิงลบ negative prompt คือสิ่งที่ไม่ต้องการ


(คลิกเพื่อดูภาพใหญ่)

ทั้ง ๒ โหนดนี้ด้านซ้ายเชื่อมกับส่วน CLIP ของ CheckpointLoaderSimple (load checkpoint) ส่วนด้านขวาเชื่อมกับ KSampler โดยส่วน prompt เชื่อมกับส่วน positive ส่วน negative prompt เชื่อมกับ negative

เท่านี้ก็เชื่อมต่อสำเร็จ พร้อมใช้งาน จากนั้นก็ทำการเลือกตัวแบบที่จะใช้แล้วสั่ง queue prompt ได้เลย




ลองใช้สร้างภาพขึ้นมา

ที่ใช้เป็นตัวอย่างในครั้งนี้คือ COCOtiFaCute เป็นตัวแบบสำหรับสร้างภาพแนวอนิเมะ

ผลที่สร้างได้ก็ออกมาเป็นแบบนี้ เป็นไปตามที่พิมพ์สั่งเป็นภาษาไทย



เพียงเท่านี้เราก็สามารถพิมพ์คำสั่งเป็นภาษาไทย สามารถแสดงออกอะไรได้อย่างอิสระตามที่ต้องการ ไม่ต้องลำบากไปใช้ภาษาอังกฤษแล้ว



ไฟล์ .json กระแสงาน

สุดท้ายนี้ขอแจกไฟล์ .json ที่สร้างขึ้นมาตามวิธีที่อธิบายไปนี้ ให้ทำการคัดลอกไปบันทึกลงเป็นไฟล์ .json แล้วเอาไปโยนลงใน comfyui แล้วใช้ได้เลย สำหรับคนที่ไม่อยากต้องเชื่อมโหนดเอาเอง
{
  "1": {
    "inputs": {
      "ckpt_name": "cocotifacute_v20.safetensors"
    },
    "class_type": "CheckpointLoaderSimple"
  },
  "2": {
    "inputs": {
      "width": 512,
      "height": 512,
      "batch_size": 1
    },
    "class_type": "EmptyLatentImage"
  },
  "3": {
    "inputs": {
      "from_translate": "thai",
      "to_translate": "english",
      "add_proxies": false,
      "service": "GoogleTranslator",
      "text": "เด็กสาวหูแมวผมสีฟ้าอ่อนนั่งเล่นกับไก่อยู่ในสวนจีน",
      "clip": ["1", 1]
    },
    "class_type": "DeepTranslatorCLIPTextEncodeNode"
  },
  "4": {
    "inputs": {
      "from_translate": "thai",
      "to_translate": "english",
      "add_proxies": false,
      "service": "GoogleTranslator",
      "text": "คุณภาพต่ำ, น่าเกลียด",
      "clip": ["1", 1]
    },
    "class_type": "DeepTranslatorCLIPTextEncodeNode"
  },
  "5": {
    "inputs": {
      "seed": 123456789,
      "steps": 20,
      "cfg": 8,
      "sampler_name": "euler",
      "scheduler": "normal",
      "denoise": 1,
      "model": ["1", 0],
      "positive": ["3", 0],
      "negative": ["4", 0],
      "latent_image": ["2", 0]
    },
    "class_type": "KSampler"
  },
  "6": {
    "inputs": {
      "samples": ["5", 0],
      "vae": ["1", 2]
    },
    "class_type": "VAEDecode"
  },
  "7": {
    "inputs": {
      "filename_prefix": "ComfyUI",
      "images": ["6", 0]
    },
    "class_type": "SaveImage"
  }
}


-----------------------------------------

囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧

ดูสถิติของหน้านี้

หมวดหมู่

-- คอมพิวเตอร์ >> ปัญญาประดิษฐ์ >> สเตเบิลดิฟฟิวชัน >> comfyui

ไม่อนุญาตให้นำเนื้อหาของบทความไปลงที่อื่นโดยไม่ได้ขออนุญาตโดยเด็ดขาด หากต้องการนำบางส่วนไปลงสามารถทำได้โดยต้องไม่ใช่การก๊อปแปะแต่ให้เปลี่ยนคำพูดเป็นของตัวเอง หรือไม่ก็เขียนในลักษณะการยกข้อความอ้างอิง และไม่ว่ากรณีไหนก็ตาม ต้องให้เครดิตพร้อมใส่ลิงก์ของทุกบทความที่มีการใช้เนื้อหาเสมอ

目录

从日本来的名言
模块
-- numpy
-- matplotlib

-- pandas
-- manim
-- opencv
-- pyqt
-- pytorch
机器学习
-- 神经网络
javascript
蒙古语
语言学
maya
概率论
与日本相关的日记
与中国相关的日记
-- 与北京相关的日记
-- 与香港相关的日记
-- 与澳门相关的日记
与台湾相关的日记
与北欧相关的日记
与其他国家相关的日记
qiita
其他日志

按类别分日志



ติดตามอัปเดตของบล็อกได้ที่แฟนเพจ

  查看日志

  推荐日志

ตัวอักษรกรีกและเปรียบเทียบการใช้งานในภาษากรีกโบราณและกรีกสมัยใหม่
ที่มาของอักษรไทยและความเกี่ยวพันกับอักษรอื่นๆในตระกูลอักษรพราหมี
การสร้างแบบจำลองสามมิติเป็นไฟล์ .obj วิธีการอย่างง่ายที่ไม่ว่าใครก็ลองทำได้ทันที
รวมรายชื่อนักร้องเพลงกวางตุ้ง
ภาษาจีนแบ่งเป็นสำเนียงอะไรบ้าง มีความแตกต่างกันมากแค่ไหน
ทำความเข้าใจระบอบประชาธิปไตยจากประวัติศาสตร์ความเป็นมา
เรียนรู้วิธีการใช้ regular expression (regex)
การใช้ unix shell เบื้องต้น ใน linux และ mac
g ในภาษาญี่ปุ่นออกเสียง "ก" หรือ "ง" กันแน่
ทำความรู้จักกับปัญญาประดิษฐ์และการเรียนรู้ของเครื่อง
ค้นพบระบบดาวเคราะห์ ๘ ดวง เบื้องหลังความสำเร็จคือปัญญาประดิษฐ์ (AI)
หอดูดาวโบราณปักกิ่ง ตอนที่ ๑: แท่นสังเกตการณ์และสวนดอกไม้
พิพิธภัณฑ์สถาปัตยกรรมโบราณปักกิ่ง
เที่ยวเมืองตานตง ล่องเรือในน่านน้ำเกาหลีเหนือ
ตระเวนเที่ยวตามรอยฉากของอนิเมะในญี่ปุ่น
เที่ยวชมหอดูดาวที่ฐานสังเกตการณ์ซิงหลง
ทำไมจึงไม่ควรเขียนวรรณยุกต์เวลาทับศัพท์ภาษาต่างประเทศ