การปรับใช้ LoRA
พื้นที่เก็บข้อมูลนี้สาธิตวิธีการให้บริการ Stable Diffusions ที่ปรับแต่งอย่างละเอียดของ LoRA หลายรายการจาก ? ห้องสมุด Diffusers บนจุดสิ้นสุดการอนุมานใบหน้ากอด เนื่องจากมีจุดตรวจสอบเพียงไม่กี่ ~ MB เท่านั้นที่สร้างขึ้นหลังจากการปรับแต่งด้วย LoRA เราจึงสามารถสลับจุดตรวจสอบที่แตกต่างกันสำหรับ Stable Diffusion ที่ปรับแต่งอย่างละเอียดต่างๆ ได้อย่างรวดเร็วเป็นพิเศษ มีประสิทธิภาพหน่วยความจำ และพื้นที่ดิสก์อย่างมีประสิทธิภาพ
เพื่อจุดประสงค์ในการสาธิต ฉันได้ทดสอบที่เก็บ Hugging Face Model ต่อไปนี้ซึ่งมีจุดตรวจสอบ LoRA ที่ปรับแต่งอย่างละเอียด ( pytorch_lora_weights.bin
):
- อีธาน_ไอ
- โนโตะอิโมจิ
- โปเกมอน
โน๊ตบุ๊ค
- สมุดบันทึกนำร่อง: แสดงวิธีการเขียนและทดสอบตัวจัดการแบบกำหนดเองสำหรับ Hugging Face Inference Endpoint ในสภาพแวดล้อมภายในเครื่องหรือ Colab
- สมุดบันทึกการอนุมาน: แสดงวิธีการร้องขอการอนุมานไปยังตัวจัดการแบบกำหนดเองที่ใช้งานบน Endopint การอนุมานของ Hugging Face
- สมุดบันทึกการอนุมานของผู้ปฏิบัติงานหลายคน: แสดงวิธีเรียกใช้คำขอพร้อมกันไปยังตัวจัดการที่กำหนดเองซึ่งใช้งานบน Hugging Face Inference Endpoint ในสภาพแวดล้อม Colab
ตัวจัดการแบบกำหนดเอง
- handler.py: ตัวจัดการพื้นฐาน ตัวจัดการแบบกำหนดเองนี้ได้รับการพิสูจน์แล้วว่าทำงานร่วมกับ repo Hugging Face Model นี้
- multiworker_handler.py: ตัวจัดการขั้นสูงพร้อมพูลผู้ปฏิบัติงานหลายคน (Stable Diffusion) ตัวจัดการแบบกำหนดเองนี้ได้รับการพิสูจน์แล้วว่าทำงานร่วมกับ repo Hugging Face Model นี้
สคริปต์
- inference.py: สคริปต์ Python แบบสแตนด์อโลนเพื่อส่งคำขอไปยังตัวจัดการแบบกำหนดเองที่ใช้งานบน Hugging Face Inference Endpoint
อ้างอิง
- https://huggingface.co/blog/lora