ยินดีต้อนรับสู่ AI Horde แพลตฟอร์มกระจายอำนาจแบบเปิดฟรีสำหรับ AI ที่ทำงานร่วมกัน! AI Horde ช่วยให้ผู้คนจากทั่วโลกมีส่วนร่วมในพลัง GPU เพื่อสร้างรูปภาพ ข้อความ และอื่นๆ ด้วยการเรียกใช้พนักงานบนเครื่องท้องถิ่นของคุณ คุณจะได้รับคำชมที่ให้ความสำคัญกับคุณเป็นอันดับแรกเมื่อส่งคำขอของคุณเองไปยังฝูงชน
ผู้ปฏิบัติงานคือซอฟต์แวร์ชิ้นหนึ่งที่จัดการงานจาก AI Horde เช่น การสร้างภาพจากข้อความแจ้ง เมื่อพนักงานของคุณทำงานเสร็จเรียบร้อยแล้ว คุณจะได้รับคำชมเชย ยิ่งคุณมีความชื่นชอบมากเท่าใด คำขอของคุณจะถูกดำเนินการเร็วขึ้นเท่านั้น
การดูแลพนักงานไม่เพียงแต่จะทำให้คุณได้รับความชื่นชมเท่านั้น แต่ยังช่วยสนับสนุนระบบนิเวศ AI Horde และทำให้ GPU ของคุณทำงานในระหว่างรอบเดินเบา ไม่ว่าคุณจะเป็นศิลปินที่ต้องการสร้างเนื้อหาที่กำหนดเอง นักพัฒนาซอฟต์แวร์ที่ต้องการประมวลผลภาพในวงกว้าง หรือเป็นเพียงคนที่ตื่นเต้นกับการทำให้ AI เป็นประชาธิปไตย Horde ก็มีทุกสิ่งที่จะนำเสนอ
หากคุณยังไม่ได้ดำเนินการ ให้ไปที่ AI Horde และลงทะเบียนบัญชี จากนั้นจัดเก็บคีย์ API ของคุณไว้ที่ที่ปลอดภัย ปฏิบัติต่อคีย์ API ของคุณเหมือนเป็นรหัสผ่าน คุณจะต้องใช้ในภายหลังในคำแนะนำเหล่านี้ วิธีนี้จะช่วยให้พนักงานของคุณสามารถรวบรวมความชื่นชอบสำหรับบัญชีของคุณได้
ใช้คำแนะนำเหล่านี้หากคุณติดตั้ง git สำหรับ windows
ขอแนะนำตัวเลือกนี้เนื่องจากจะทำให้การเก็บข้อมูลของคุณทันสมัยได้ง่ายขึ้นมาก
เปิด powershell
(หรือเรียกอีกอย่างว่าเทอร์มินัล) หรือ cmd
จากเมนูเริ่มต้น
ใช้ cd
นำทางไปยังโฟลเดอร์ที่คุณต้องการให้ผู้ปฏิบัติงานติดตั้งไว้
โปรดทราบว่าโฟลเดอร์ที่คุณอยู่จะสร้างโฟลเดอร์ชื่อ horde-worker-reGen
โฟลเดอร์นี้ไม่ควรมีอยู่ก่อนที่คุณจะเรียกใช้คำสั่งต่อไปนี้
หากคุณต้องการให้ติดตั้งใน C:horde
ให้รันดังต่อไปนี้:
cd C:horde
หากไม่มีโฟลเดอร์ horde
:
cd C:
mkdir horde
cd C:horde
หากคุณใช้ cmd
และต้องการติดตั้งบนไดรฟ์อื่น ให้รวมตัวเลือก /d
ไว้ดังนี้:
cd /d G:horde
เรียกใช้คำสั่งต่อไปนี้ภายในโฟลเดอร์ที่เลือก (กลุ่ม horde
หากใช้ตัวอย่างด้านบน)
git clone https://github.com/Haidra-Org/horde-worker-reGen.git
cd horde-worker-reGen
ทำตามคำแนะนำการใช้งานพื้นฐานต่อไป
ใช้คำแนะนำเหล่านี้หากคุณไม่มี git สำหรับ windows และไม่ต้องการติดตั้ง คำแนะนำเหล่านี้ทำให้การอัปเดตผู้ปฏิบัติงานทำได้ยากขึ้นเล็กน้อย
นี่ถือว่าคุณได้ติดตั้งคอมไพล์แล้ว
เปิดเทอร์มินัล bash แล้วรันคำสั่งเหล่านี้ (เพียงคัดลอกและวางทั้งหมดเข้าด้วยกัน)
git clone https://github.com/Haidra-Org/horde-worker-reGen.git
cd horde-worker-reGen
ทำตามคำแนะนำการใช้งานพื้นฐานต่อไป
ขณะนี้ AMD ได้รับการพิสูจน์แล้วว่ามีการรองรับที่ดีขึ้น แต่สำหรับ เครื่อง Linux เท่านั้น วิธีที่ดีที่สุดคือติดตั้ง Linux บนเครื่องของคุณโดยตรง การสนับสนุน WSL นั้นมีการทดลองอย่างมาก ตอนนี้คุณสามารถปฏิบัติตามคู่มือนี้โดยใช้ horde-bridge-rocm.sh
และ update-runtime-rocm.sh
ตามความเหมาะสม
หากคุณเต็มใจที่จะลองใช้การ์ด AMD ของคุณ ให้เข้าร่วมการสนทนาที่ไม่ลงรอยกันในความไม่ลงรอยกันอย่างเป็นทางการ
bridgeData_template.yaml
ไปยัง bridgeData.yaml
bridgeData.yaml
แล้วทำตามคำแนะนำภายในเพื่อกรอกรายละเอียด เพื่อให้มั่นใจว่าพนักงานจะได้รับประสบการณ์ที่ราบรื่น โปรดคำนึงถึงสิ่งต่อไปนี้:
threads
ไว้ที่ 2 หรือต่ำกว่า เว้นแต่คุณจะมีการ์ดเกรดศูนย์ข้อมูลที่มี VRAM 48GB+queue_size
ที่ระบุไว้ในการกำหนดค่า หากคุณมี RAM ของระบบน้อยกว่า 32GB ให้ใช้ queue_size
เท่ากับ 1 สำหรับ RAM น้อยกว่า 16GB จำเป็นต้องมีการปรับแต่งเพิ่มเติม (รายละเอียดด้านล่าง) มีการโหลดโมเดลตามความจำเป็นและทันเวลาพอดี คุณสามารถเสนอรุ่นได้มากเท่าที่คุณต้องการ หากคุณมี SSD, RAM อย่างน้อย 32GB และ VRAM อย่างน้อย 8GB (ดูหมายเหตุสำคัญ ) ไม่แนะนำให้ใช้ผู้ปฏิบัติงานที่มี HDD ในขณะนี้ แต่ผู้ที่มี HDD ควรใช้ 1 รุ่นเท่านั้น รุ่น SD1.5 ทั่วไปจะมีขนาดประมาณ 2GB ต่อรุ่น ในขณะที่รุ่น SDXL ทั่วไปจะมีขนาดประมาณ 7GB ต่อรุ่น ปัจจุบัน all
รุ่นมีให้บริการประมาณ 700GB และเรามุ่งมั่นที่จะรักษาจำนวนดังกล่าวให้ต่ำกว่า 1TB หากมีการเปลี่ยนแปลงใดๆ ในอนาคต
หมายเหตุ : เราขอแนะนำให้คุณปิดการใช้งานโหมด 'สลีป' หรือโหมดพลังงานที่ลดลงสำหรับระบบของคุณในขณะที่ผู้ปฏิบัติงานกำลังทำงานอยู่
หากคุณมี การ์ด vram 24gb+ (เช่น 4090, 3090):
- safety_on_gpu : true
- high_performance_mode : true
- post_process_job_overlap : true
- unload_models_from_vram_often : false
- max_threads : 1 # If you have Flux/Cascade loaded, otherwise 2 max
- queue_size : 2 # You can set to 3 if you have 64GB or more of RAM
- max_batch : 8 # or higher
หากคุณมี การ์ดขนาด 12GB - 16GB (เช่น 3080 TI, 4070, 4080/4080 Super):
- safety_on_gpu : true # Consider setting to `false` if offering Cascade or Flux
- moderate_performance_mode : true
- unload_models_from_vram_often : false
- max_threads : 1
- max_batch : 4 # or higher
หากคุณมี การ์ด VRAM ขนาด 8GB-10GB (1080, 2080, 3060, 4060/4060 TI):
- queue_size : 1 # max **or** only offer flux
- safety_on_gpu : false
- max_threads : 1
- max_power : 32 # no higher than 32
- max_batch : 4 # no higher than 4
- allow_post_processing : false # If offering SDXL or Flux, otherwise you may set to true
- allow_sdxl_controlnet : false
ผู้ปฏิบัติงานที่มี การ์ดระดับต่ำหรือมีประสิทธิภาพต่ำด้วยเหตุผลอื่น :
- extra_slow_worker: true
- limit_max_steps: true
- preload_timeout: 120
extra_slow_worker: true
ก็ตาม คนงาน AI Horde อยู่ภายใต้การปรับปรุงอย่างต่อเนื่อง คุณสามารถติดตามความคืบหน้าในความขัดแย้งของเราและรับการแจ้งเตือนเกี่ยวกับการอัปเดตได้ที่นั่น หากคุณสนใจรับการแจ้งเตือนเกี่ยวกับการอัปเดตของผู้ปฏิบัติงานหรือเบต้า ให้ไปที่ช่องทาง #get-roles และรับบทบาทที่เหมาะสม
คำแนะนำด้านล่างอ้างถึง horde-bridge
หรือ update-runtime
ขึ้นอยู่กับระบบปฏิบัติการของคุณ ให้เพิ่ม .cmd
สำหรับ windows หรือ .sh
สำหรับ linux
horde-bridge.cmd
และ update-runtime.cmd
สำหรับ windows ที่มีการ์ด NVIDIAhorde-bridge-rocm.sh
และ update-runtime-rocm.sh
ตามความเหมาะสม ปิดพนักงานของคุณโดยกด Ctrl+C
หนึ่งครั้งและรอให้พนักงานหยุด
อัปเดต repo นี้โดยใช้วิธีการที่เหมาะสม:
คุณสามารถดับเบิลคลิกไฟล์สคริปต์ที่ให้มาด้านล่างจาก File Explorer หรือเรียกใช้จากเทอร์มินัลเช่น bash
, cmd
ขึ้นอยู่กับระบบปฏิบัติการของคุณ ตัวเลือกหลังจะช่วยให้คุณ เห็นข้อผิดพลาดในกรณีที่เกิดข้อขัดข้อง ดังนั้นจึงขอแนะนำ
ใช้แนวทางนี้หากคุณโคลนพื้นที่เก็บข้อมูลดั้งเดิมโดยใช้ git clone
bash
, cmd
หรือเทอร์มินัล powershell
ขึ้นอยู่กับระบบปฏิบัติการของคุณgit pull
ดูการอัปเดตรันไทม์
ใช้วิธีนี้หากคุณดาวน์โหลดที่เก็บ git เป็นไฟล์ zip และแตกไฟล์ไว้ที่ใดที่หนึ่ง
horde_worker_regen/
ออกจากโฟลเดอร์ของคุณดูการอัปเดตรันไทม์
คำเตือน : มีรายงานว่ามีโปรแกรมป้องกันไวรัสบางตัว (รวมถึง Avast) รบกวนการติดตั้ง หากคุณได้รับข้อผิดพลาด
curl: (35) schannel: next InitializeSecurityContext failed: CRYPT_E_NO_REVOCATION_CHECK
เมื่อเรียกใช้ไฟล์นี้ ให้ปิดการใช้งานโปรแกรมป้องกันไวรัสของคุณ เรียกใช้ไฟล์อีกครั้ง จากนั้นเปิดใช้งานโปรแกรมป้องกันไวรัสของคุณอีกครั้ง
เรียกใช้สคริปต์ update-runtime
สำหรับระบบปฏิบัติการของคุณ สิ่งนี้จะอัปเดตการอ้างอิงทั้งหมดหากจำเป็น
ดำเนินการต่อตามคำแนะนำในการเริ่ม/หยุดด้านล่าง
หมายเหตุ : ผู้ปฏิบัติงานเป็นระบบและโปรแกรมที่เน้น GPU มาก คุณไม่ควรเล่นวิดีโอเกมหรือทำงานอื่นๆ ที่เข้มข้น (เช่น การตัดต่อรูปภาพ/วิดีโอ) ทุกครั้งที่ทำได้ หากคุณต้องการมีส่วนร่วมในกิจกรรมเหล่านั้น ให้ปิดพนักงานหรือกำหนดค่าให้ใช้เฉพาะรุ่นขนาดเล็กในการตั้งค่าที่จำกัด และเฝ้าดูการตรวจสอบระบบของคุณอย่างใกล้ชิด
หากนี่เป็นครั้งแรกที่คุณติดตั้ง หรือเมื่อจำเป็นต้องอัปเดต โปรดดูคำแนะนำในการอัปเดต
เรียกใช้ horde-bridge
(.cmd สำหรับ Windows, .sh สำหรับ Linux)
horde-bridge-rocm
Ctrl+C
พร้อมกันในขณะที่ผู้ปฏิบัติงานกำลังทำงาน คุณสามารถติดตามความคืบหน้าได้โดยตรงในเทอร์มินัล มองหาบันทึกที่บ่งบอกถึงความสำเร็จของงาน ความรุ่งโรจน์ที่ได้รับ สถิติประสิทธิภาพ และข้อผิดพลาดใดๆ
สำหรับการตรวจสอบโดยละเอียดเพิ่มเติม โปรดดูไดเร็กทอรี logs
ซึ่งมีไฟล์บันทึกรายวัน
bridge*.log
bridge.log
คือหน้าต่างหลักที่คุณเห็นป๊อปอัปbridge_n.log
สอดคล้องกับแต่ละกระบวนการที่ปรากฏในไฟล์บันทึกหลัก "กระบวนการ 1" จะเป็น bridge_1.log
trace*.log
trace.log
คือหน้าต่างหลักที่คุณเห็นป๊อปอัปtrace_n.log
สอดคล้องกับแต่ละกระบวนการที่ปรากฏในไฟล์บันทึกหลัก "กระบวนการ 1" จะเป็น trace_1.log
ในอนาคต คุณไม่จำเป็นต้องเรียกใช้อินสแตนซ์ของผู้ปฏิบัติงานหลายรายการ
หากต้องการใช้ GPU หลายตัว แต่ละตัวจะต้องเริ่มต้นอินสแตนซ์ของตัวเอง สำหรับ Linux คุณเพียงแค่ต้องจำกัดการทำงานไว้ที่การ์ดเฉพาะ:
CUDA_VISIBLE_DEVICES=0 ./horde-bridge.sh -n " My awesome instance #1 "
CUDA_VISIBLE_DEVICES=1 ./horde-bridge.sh -n " My awesome instance #2 "
ฯลฯ
ได้รับการเตือน ว่าคุณจะต้องมี RAM ระบบที่สูงมาก (32-64gb+) ขึ้นอยู่กับการตั้งค่าของคุณ queue_size
และ max_threads
จะเพิ่มจำนวน RAM ที่ต้องใช้ต่อพนักงานหนึ่งคนอย่างมาก
คุณสามารถโฮสต์โมเดลรูปภาพของคุณเองบนกลุ่มที่ไม่มีอยู่ในการอ้างอิงโมเดลของเรา แต่กระบวนการนี้ซับซ้อนกว่าเล็กน้อย
ในการเริ่มต้น คุณจะต้องขอบทบาท customizer
จากทีม Horde ด้วยตนเอง สามารถสอบถามในช่อง discord ได้เลยครับ นี่เป็นบทบาทที่มอบหมายด้วยตนเองเพื่อป้องกันการใช้ฟีเจอร์นี้ในทางที่ผิด
เมื่อคุณมีบทบาทผู้ปรับแต่งแล้ว:
ดาวน์โหลดไฟล์โมเดลที่คุณต้องการโฮสต์ วางไว้ในตำแหน่งใดก็ได้บนระบบของคุณ
ชี้คนงานของคุณไปยังที่ตั้งของพวกเขาและให้ข้อมูลบางอย่างเกี่ยวกับพวกเขา ใน bridgeData.yaml
ให้เพิ่มบรรทัดดังนี้:
custom_models :
- name : Movable figure model XL
baseline : stable_diffusion_xl
filepath : /home/db0/projects/CUSTOM_MODELS/PVCStyleModelMovable_beta25Realistic.safetensors
เพิ่ม "ชื่อ" เดียวกันให้กับ models_to_load
ของคุณ
หากทุกอย่างได้รับการตั้งค่าอย่างถูกต้อง ตอนนี้คุณควรเห็น custom_models.json
ในไดเร็กทอรีผู้ปฏิบัติงานของคุณหลังจากที่ผู้ปฏิบัติงานเริ่มทำงาน และผู้ปฏิบัติงานของคุณควรเสนอโมเดลดังกล่าว
โปรดทราบว่า:
clip_skip
คุณสามารถค้นหารูปภาพนักเทียบท่าได้ที่https://hub.docker.com/r/tazlin/horde-worker-regen/tags
ดู Dockerfiles/README.md สำหรับคำแนะนำโดยละเอียดเกี่ยวกับฟังก์ชันการทำงานของนักเทียบท่าที่รองรับ
ดูเพิ่มเติมที่ README_advanced.md สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการเรียกใช้งานผู้ปฏิบัติงานด้วยตนเอง
สำหรับข้อมูลล่าสุดและความช่วยเหลือในการแก้ไขปัญหา โปรดดูช่อง #local-workers ใน Discord ของเรา ชุมชนยินดีให้ความช่วยเหลือเสมอ!
ปัญหาทั่วไปบางประการและแนวทางแก้ไข:
max_power
ของคุณallow_post_processing
, allow_controlnet
, allow_sdxl_controlnet
และ/หรือ allow_lora
max_threads
, max_batch
หรือ queue_size
ในการกำหนดค่าของคุณ (ตามลำดับการตั้งค่า) เพื่อลดการใช้งาน VRAM/RAM หลีกเลี่ยงการใช้โปรแกรมที่เข้มข้นอื่นๆ ในขณะที่พนักงานทำงานอยู่หากคุณพบข้อบกพร่องหรือมีคำขอคุณสมบัติ โปรดเปิดปัญหาใน repo เราขอขอบคุณที่คุณมีส่วนร่วม!
โมเดลหลายรุ่นในโปรเจ็กต์นี้ใช้ใบอนุญาต CreativeML OpenRAIL โปรดอ่านใบอนุญาตฉบับเต็มได้ที่นี่