LLM Inference API ช่วยให้คุณเรียกใช้โมเดลภาษาขนาดใหญ่ (LLM) ได้อย่างสมบูรณ์ ในอุปกรณ์ ซึ่งสามารถใช้เพื่อทำงานต่างๆ ได้มากมาย เช่น สร้างข้อความ ดึงข้อมูลในรูปแบบภาษาธรรมชาติ สรุปเอกสาร งานนี้มอบการสนับสนุนในตัวสำหรับ โมเดลภาษาขนาดใหญ่สำหรับการแปลงข้อความเป็นข้อความ เพื่อให้คุณใช้เวอร์ชันล่าสุดในอุปกรณ์ได้ โมเดล Generative AI กับแอปและผลิตภัณฑ์
งานนี้รองรับ Gemma 2B และ 7B ซึ่งเป็นส่วนหนึ่งของ กลุ่มผลิตภัณฑ์แบบเปิดที่ทันสมัยและน้ำหนักเบา สร้างขึ้นจาก งานวิจัยและเทคโนโลยีที่ใช้ในการสร้าง Gemini และยังรองรับรุ่นภายนอกต่อไปนี้ด้วย Phi-2 Falcon-RW-1B และ StableLM-3B
นอกจากรูปแบบที่รองรับโดยค่าเริ่มต้นแล้ว ผู้ใช้ยังแมป โมเดลที่ใช้ AI Edge ของ Google (รวมถึง การแมปโมเดล PyTorch) การดำเนินการนี้ช่วยให้ผู้ใช้ส่งออกโมเดลที่แมปไปยังลายเซ็นหลายรายการได้ โมเดล TensorFlow Lite ซึ่งมากับพารามิเตอร์โทเค็น สร้างชุดงาน
เริ่มต้นใช้งาน
เริ่มใช้งานนี้โดยปฏิบัติตามคู่มือการติดตั้งใช้งานข้อใดข้อหนึ่งต่อไปนี้สำหรับ แพลตฟอร์มเป้าหมาย คำแนะนำเฉพาะแพลตฟอร์มเหล่านี้จะแนะนำคุณเกี่ยวกับข้อมูลเบื้องต้น ของงานนี้พร้อมด้วยตัวอย่างโค้ดที่ใช้โมเดลที่มีอยู่และ ตัวเลือกการกำหนดค่าที่แนะนำมีดังนี้
เว็บ:
Android
iOS
รายละเอียดงาน
ส่วนนี้จะอธิบายความสามารถ อินพุต เอาต์พุต และการกำหนดค่า ของงานนี้
ฟีเจอร์
LLM Inference API มีฟีเจอร์สำคัญดังต่อไปนี้
- การสร้างข้อความเป็นข้อความ - สร้างข้อความตามพรอมต์ข้อความอินพุต
- การเลือก LLM - ใช้โมเดลหลายรายการเพื่อปรับแต่งแอปให้เหมาะกับ Use Case ที่เฉพาะเจาะจง นอกจากนี้คุณยังสามารถฝึกอีกครั้งและใช้น้ำหนักที่ปรับแต่งแล้วกับ โมเดล
- การรองรับ LoRA - ขยายและปรับแต่งความสามารถของ LLM ด้วยโมเดล LoRA ด้วยการฝึกในชุดข้อมูลทั้งหมด หรือรับ LoRA ที่สร้างไว้ล่วงหน้า โมเดลจากชุมชนโอเพนซอร์ส (โมเดลเนทีฟเท่านั้น)
อินพุตงาน | เอาต์พุตของงาน |
---|---|
LLM Inference API ยอมรับอินพุตต่อไปนี้
|
LLM Inference API จะแสดงผลลัพธ์ต่อไปนี้
|
ตัวเลือกการกำหนดค่า
งานนี้มีตัวเลือกการกำหนดค่าต่อไปนี้
ชื่อตัวเลือก | คำอธิบาย | ช่วงค่า | ค่าเริ่มต้น |
---|---|---|---|
modelPath |
เส้นทางไปยังที่เก็บโมเดลภายในไดเรกทอรีโปรเจ็กต์ | เส้นทาง | ไม่มี |
maxTokens |
จำนวนโทเค็นสูงสุด (โทเค็นอินพุต + โทเค็นเอาต์พุต) ที่โมเดลจัดการได้ | จำนวนเต็ม | 512 |
topK |
จำนวนโทเค็นที่โมเดลจะพิจารณาในแต่ละขั้นตอนของการสร้าง จำกัดการคาดการณ์ให้กับโทเค็นที่น่าจะเป็นมากที่สุด K สูงสุด | จำนวนเต็ม | 40 |
temperature |
ปริมาณการสุ่มที่เกิดขึ้นระหว่างการสร้าง สูงกว่า อุณหภูมิช่วยเพิ่มความสร้างสรรค์ ในข้อความที่สร้างขึ้น ขณะที่ อุณหภูมิที่ต่ำลงทำให้รุ่นที่คาดการณ์ได้มากขึ้น | ทศนิยม | 0.8 |
randomSeed |
Seed แบบสุ่มที่ใช้ระหว่างการสร้างข้อความ | จำนวนเต็ม | 0 |
loraPath |
Absolute Path ไปยังโมเดล LoRA ภายในอุปกรณ์ หมายเหตุ: วิธีนี้ใช้ได้เฉพาะกับรุ่น GPU | เส้นทาง | ไม่มี |
resultListener |
ตั้งค่า Listener ผลลัพธ์เพื่อรับผลลัพธ์แบบไม่พร้อมกัน ใช้ได้เฉพาะเมื่อใช้วิธีการสร้างแบบไม่พร้อมกันเท่านั้น | ไม่มี | ไม่มี |
errorListener |
ตั้งค่า Listener ข้อผิดพลาดที่ไม่บังคับ | ไม่มี | ไม่มี |
โมเดล
LLM Inference API มีการรองรับในตัวสำหรับการแปลงข้อความเป็นข้อความที่มีขนาดใหญ่ โมเดลภาษาที่ได้รับการเพิ่มประสิทธิภาพให้ทำงานในเบราว์เซอร์และอุปกรณ์เคลื่อนที่ เหล่านี้ โมเดลขนาดเล็กสามารถดาวน์โหลดเพื่อใช้การอนุมานได้อย่างสมบูรณ์ในอุปกรณ์
ก่อนเริ่มต้นใช้งาน LLM Inference API ให้ดาวน์โหลดโมเดลที่รองรับและ เก็บไฟล์ดังกล่าวไว้ในไดเรกทอรีโปรเจ็กต์ของคุณ
เจมม่า 2B
Gemma 2B เป็นส่วนหนึ่งของครอบครัว โมเดลแบบเปิดที่ทันสมัยและน้ำหนักเบา สร้างขึ้นจากการวิจัยเดียวกันและ เทคโนโลยีที่ใช้ในการสร้างโมเดล Gemini โมเดลมีพารามิเตอร์ 2B และน้ำหนักแบบเปิด รูปแบบนี้เหมาะสมอย่างยิ่งสำหรับ งานสร้างข้อความที่หลากหลาย ซึ่งรวมถึงการตอบคำถาม การสรุป และการให้เหตุผล
รุ่น Gemma 2B มี 4 ตัวแปร ดังนี้
- gemma-2b-it-cpu-int4: รุ่น 4 บิต Gemma 2B ที่มีความเข้ากันได้ของ CPU
- gemma-2b-it-cpu-int8: รุ่น 8 บิต Gemma 2B ที่มีความเข้ากันได้ของ CPU
- gemma-2b-it-gpu-int4: รุ่น 4 บิตของ Gemma 2B ที่เข้ากันได้กับ GPU
- gemma-2b-it-gpu-int8: รุ่น 8 บิตของ Gemma 2B ที่มีความเข้ากันได้กับ GPU
นอกจากนี้ คุณยังปรับแต่งโมเดลและเพิ่มน้ำหนักใหม่ก่อนเพิ่มลงในแอปได้ด้วย สำหรับ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการปรับแต่งและกำหนดค่า Gemma โปรดดูการปรับแต่ง Gemma หลังจากดาวน์โหลด Gemma จาก Kaggle Models โมเดลนี้อยู่ในรูปแบบที่เหมาะสมสำหรับใช้กับ MediaPipe
หากคุณดาวน์โหลด Gemma 2B จาก Hugging ใบหน้า คุณต้องแปลง โมเดลเป็นรูปแบบที่ใช้ได้กับ MediaPipe LLM Inference API จำเป็นต้องดาวน์โหลดและแปลงไฟล์ต่อไปนี้
model-00001-of-00002.safetensors
model-00002-of-00002.safetensors
tokenizer.json
tokenizer_config.json
Gemma 7B
Gemma 7B คือโมเดล Gemma ขนาดใหญ่กว่าที่มี 7B และน้ำหนักแบบเปิด โมเดลมีประสิทธิภาพมากกว่าสำหรับข้อความที่หลากหลาย งานที่สร้างขึ้น ซึ่งรวมถึงการตอบคำถาม การสรุป และการให้เหตุผล Gemma 7B ใช้งานได้เฉพาะบนเว็บเท่านั้น
รุ่น Gemma 7B มีตัวแปรเดียวคือ
- gemma-1.1-7b-it-gpu-int8: รุ่น 8 บิตของ Gemma 7B ที่เข้ากันได้กับ GPU
หากคุณดาวน์โหลด Gemma 7B จาก Hugging Face คุณต้องแปลงโมเดลเป็นรูปแบบที่ใช้ได้กับ MediaPipe LLM Inference API กำหนดให้ต้องดาวน์โหลดและแปลงไฟล์ต่อไปนี้
model-00001-of-00004.safetensors
model-00002-of-00004.safetensors
model-00003-of-00004.safetensors
model-00004-of-00004.safetensors
tokenizer.json
tokenizer_config.json
Falcon 1B
Falcon-1B เป็นโมเดลเครื่องมือถอดรหัสเท่านั้นสำหรับพารามิเตอร์ 1 พันล้านแบบซึ่งฝึกบน 350B โทเค็นของ RefinedWeb
LLM Inference API กำหนดให้ต้องดาวน์โหลดและจัดเก็บไฟล์ต่อไปนี้ ในเครื่อง:
tokenizer.json
tokenizer_config.json
pytorch_model.bin
หลังจากดาวน์โหลดไฟล์โมเดล Falcon โมเดลก็พร้อมที่จะแปลงเป็น รูปแบบ MediaPipe ทำตามขั้นตอนในแปลงโมเดลเป็น MediaPipe format [รูปแบบ]
ความเสถียร 3B
StableLM-3B คือโมเดลภาษาที่ฝึกไว้ล่วงหน้าโดยใช้ตัวถอดรหัสพารามิเตอร์ 3 พันล้านรายการ โทเค็นภาษาอังกฤษที่หลากหลายและชุดข้อมูลโค้ดที่หลากหลาย 1 ล้านล้านโทเค็นสำหรับ 4 Epoch
LLM Inference API กำหนดให้ต้องดาวน์โหลดและจัดเก็บไฟล์ต่อไปนี้ ในเครื่อง:
tokenizer.json
tokenizer_config.json
model.safetensors
หลังจากดาวน์โหลดไฟล์โมเดล StableLM แล้ว โมเดลก็พร้อมที่จะแปลง เป็นรูปแบบ MediaPipe ทำตามขั้นตอนในแปลงโมเดลเป็น MediaPipe format [รูปแบบ]
Phi-2
Phi-2 คือโมเดล Transformer ที่มีพารามิเตอร์ 2.7 พันล้านรายการ ได้รับการฝึกอบรมโดยใช้ ข้อความสังเคราะห์ NLP และเว็บไซต์ที่กรอง โมเดลนี้เหมาะกับพรอมต์มากที่สุด โดยใช้รูปแบบถามและตอบ แชท และโค้ด
LLM Inference API กำหนดให้ต้องดาวน์โหลดและจัดเก็บไฟล์ต่อไปนี้ ในเครื่อง:
tokenizer.json
tokenizer_config.json
model-00001-of-00002.safetensors
model-00002-of-00002.safetensors
หลังจากดาวน์โหลดไฟล์โมเดล Phi-2 แล้ว โมเดลก็พร้อมที่จะแปลงเป็น รูปแบบ MediaPipe ทำตามขั้นตอนในแปลงโมเดลเป็น MediaPipe format [รูปแบบ]
โมเดล AI Edge ที่ส่งออก
AI Edge เป็นข้อเสนอของ Google ที่ให้คุณแปลงโมเดลที่ผู้ใช้แมปไว้ ไปเป็นโมเดล TensorFlow Lite หลายลายเซ็น สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการแมปและ การส่งออกโมเดล โปรดไปที่ AI Edge Torch หน้า GitHub
หลังจากส่งออกโมเดลในรูปแบบ TFLite แล้ว โมเดลดังกล่าวก็พร้อมที่จะเป็น แปลงเป็นรูปแบบ MediaPipe ดูข้อมูลเพิ่มเติมได้ที่ แปลงโมเดลเป็นรูปแบบ MediaPipe
แปลงโมเดลเป็นรูปแบบ MediaPipe
Conversion ของรูปแบบการระบุแหล่งที่มา
หากคุณใช้ LLM ภายนอก (Phi-2, Falcon หรือ StableLM) หรือที่ไม่ใช่ Kaggle ของ Gemma ให้ใช้สคริปต์ Conversion ของเราเพื่อจัดรูปแบบรูปแบบเป็น ทำงานร่วมกับ MediaPipe ได้
กระบวนการแปลงโมเดลต้องการแพ็กเกจ MediaPipe PyPI Conversion
สคริปต์พร้อมใช้งานในแพ็กเกจ MediaPipe ทั้งหมดหลังจากวันที่ 0.10.11
ติดตั้งและนำเข้าทรัพยากร Dependency ด้วยตัวอย่างต่อไปนี้
$ python3 -m pip install mediapipe
ใช้ไลบรารี genai.converter
เพื่อแปลงโมเดล
import mediapipe as mp
from mediapipe.tasks.python.genai import converter
config = converter.ConversionConfig(
input_ckpt=INPUT_CKPT,
ckpt_format=CKPT_FORMAT,
model_type=MODEL_TYPE,
backend=BACKEND,
output_dir=OUTPUT_DIR,
combine_file_only=False,
vocab_model_file=VOCAB_MODEL_FILE,
output_tflite_file=OUTPUT_TFLITE_FILE,
)
converter.convert_checkpoint(config)
หากต้องการแปลงโมเดล LoRA ค่า ConversionConfig
ควรระบุโมเดลฐาน
รวมถึงตัวเลือก LoRA เพิ่มเติม โปรดสังเกตว่าเนื่องจากเฉพาะ API
รองรับการอนุมาน LoRA ด้วย GPU ต้องตั้งค่าแบ็กเอนด์เป็น 'gpu'
import mediapipe as mp
from mediapipe.tasks.python.genai import converter
config = converter.ConversionConfig(
# Other params related to base model
...
# Must use gpu backend for LoRA conversion
backend='gpu',
# LoRA related params
lora_ckpt=LORA_CKPT,
lora_rank=LORA_RANK,
lora_output_tflite_file=LORA_OUTPUT_TFLITE_FILE,
)
converter.convert_checkpoint(config)
ตัวแปลงจะแสดงไฟล์ TFLite Flatbuffer 2 ไฟล์ โดยไฟล์หนึ่งสำหรับโมเดลฐาน และอีกอย่างสำหรับโมเดล LoRA
พารามิเตอร์ | คำอธิบาย | ค่าที่ยอมรับ |
---|---|---|
input_ckpt |
เส้นทางไปยังไฟล์ model.safetensors หรือ pytorch.bin โปรดทราบว่าบางครั้งรูปแบบ Safetensor ของโมเดลจะถูกชาร์ตออกเป็นหลายไฟล์ เช่น model-00001-of-00003.safetensors , model-00001-of-00003.safetensors คุณระบุรูปแบบไฟล์ได้ เช่น model*.safetensors |
เส้นทาง |
ckpt_format |
รูปแบบไฟล์โมเดล | {"safetensors", "pytorch"} |
model_type |
LLM กำลังแปลง | {"PHI_2", "FALCON_RW_1B", "STABLELM_4E1T_3B", "GEMMA_2B"} |
backend |
ตัวประมวลผล (การมอบสิทธิ์) ที่ใช้ในการเรียกใช้โมเดล | {"cpu", "gpu"} |
output_dir |
เส้นทางไปยังไดเรกทอรีเอาต์พุตที่โฮสต์ไฟล์น้ำหนักต่อเลเยอร์ | เส้นทาง |
output_tflite_file |
เส้นทางไปยังไฟล์เอาต์พุต ตัวอย่างเช่น "model_cpu.bin" หรือ "model_gpu.bin" ไฟล์นี้ใช้ร่วมกันได้กับ LLM Inference API เท่านั้น และใช้เป็นไฟล์ "tflite" ทั่วไปไม่ได้ | เส้นทาง |
vocab_model_file |
เส้นทางไปยังไดเรกทอรีที่จัดเก็บ tokenizer.json และ
tokenizer_config.json ไฟล์ สำหรับ Gemma ให้ชี้ไปที่ไฟล์ tokenizer.model ไฟล์เดียว |
เส้นทาง |
lora_ckpt |
เส้นทางไปยังไฟล์ LoRA ckpt ของไฟล์ Safetensor ที่เก็บน้ำหนักของอะแดปเตอร์ LoRA | เส้นทาง |
lora_rank |
จำนวนเต็มที่แทนอันดับของ LoRA ckpt ต้องใช้เพื่อแปลงน้ำหนักลอรา หากไม่ระบุ ตัวแปลงจะถือว่าไม่มีน้ำหนัก LoRA หมายเหตุ: เฉพาะแบ็กเอนด์ GPU เท่านั้นที่รองรับ LoRA | จำนวนเต็ม |
lora_output_tflite_file |
ชื่อไฟล์ tflite สำหรับเอาต์พุตสำหรับน้ำหนักของ LoRA | เส้นทาง |
การแปลงโมเดล AI Edge
หากคุณใช้ LLM ที่แมปกับโมเดล TFLite ผ่าน AI Edge ให้ใช้ กำลังจัดกลุ่มสคริปต์เพื่อสร้าง Task Bundle กระบวนการรวมกลุ่มจะประกอบไปด้วย โมเดลที่แมปพร้อมกับข้อมูลเมตาเพิ่มเติม (เช่น ต้องมีพารามิเตอร์ Tokenizer) เพื่อเรียกใช้การอนุมานจากต้นทางถึงปลายทาง
กระบวนการรวมโมเดลต้องมีแพ็กเกจ MediaPipe PyPI Conversion
สคริปต์พร้อมใช้งานในแพ็กเกจ MediaPipe ทั้งหมดหลังจากวันที่ 0.10.14
ติดตั้งและนำเข้าทรัพยากร Dependency ด้วยตัวอย่างต่อไปนี้
$ python3 -m pip install mediapipe
ใช้ไลบรารี genai.bundler
เพื่อรวมโมเดล:
import mediapipe as mp
from mediapipe.tasks.python.genai import bundler
config = bundler.BundleConfig(
tflite_model=TFLITE_MODEL,
tokenizer_model=TOKENIZER_MODEL,
start_token=START_TOKEN,
stop_tokens=STOP_TOKENS,
output_filename=OUTPUT_FILENAME,
enable_bytes_to_unicode_mapping=ENABLE_BYTES_TO_UNICODE_MAPPING,
)
bundler.create_bundle(config)
พารามิเตอร์ | คำอธิบาย | ค่าที่ยอมรับ |
---|---|---|
tflite_model |
เส้นทางไปยังโมเดล TFLite ที่ส่งออกของ AI Edge | เส้นทาง |
tokenizer_model |
เส้นทางไปยังโมเดลเครื่องมือแปลงข้อมูลเป็นโทเค็นของ SentencePiece | เส้นทาง |
start_token |
โทเค็นเริ่มต้นที่เจาะจงโมเดล โทเค็นเริ่มต้นต้องอยู่ในไฟล์ โมเดลโทเคนไลเซอร์ที่ให้ไว้ | STRING |
stop_tokens |
สร้างโทเค็นหยุดเฉพาะรุ่น โทเค็นหยุดต้องมีอยู่ใน โมเดลโทเคนไลเซอร์ที่ให้ไว้ | รายการ[สตริง] |
output_filename |
ชื่อของไฟล์กลุ่มงานเอาต์พุต | เส้นทาง |
การปรับแต่ง LoRA
กำหนดค่า Mediapipe LLM Inference API ให้รองรับการปรับอันดับต่ำ (LoRA) ได้ สำหรับโมเดลภาษาขนาดใหญ่ นักพัฒนาซอฟต์แวร์สามารถใช้ประโยชน์จากโมเดล LoRA ที่ปรับแต่งแล้ว ปรับแต่งลักษณะการทำงานของ LLM ผ่านกระบวนการฝึกอบรมที่คุ้มค่าการรองรับ LoRA ของ LLM Inference API ใช้งานได้กับโมเดล Gemma-2B และ Phi-2 สำหรับ แบ็กเอนด์ของ GPU ที่มีน้ำหนัก LoRA ที่ใช้กับเลเยอร์ความสนใจเท่านั้น ช่วงเวลานี้ การใช้งานเริ่มต้นทำหน้าที่เป็น API ทดลองสำหรับการพัฒนาในอนาคต โดยมีแผนที่จะรองรับโมเดลเพิ่มเติมและเลเยอร์ประเภทต่างๆ ในอนาคต อัปเดต
เตรียมโมเดล LoRA
ทำตามวิธีการใน HuggingFace เพื่อฝึกโมเดล LoRA ที่ปรับแต่งโดยละเอียดในชุดข้อมูลของคุณเองด้วยประเภทโมเดลที่รองรับ ได้แก่ Gemma-2B หรือ Phi-2 ทั้งรุ่น Gemma-2B และ Phi-2 มีให้บริการใน HuggingFace ในรูปแบบ Safetensors เนื่องจาก LLM Inference API รองรับเฉพาะ LoRA บนเลเยอร์ความสนใจ ให้ระบุเลเยอร์ความสนใจขณะสร้าง LoraConfig
เท่านั้นดังนี้
# For Gemma-2B
from peft import LoraConfig
config = LoraConfig(
r=LORA_RANK,
target_modules=["q_proj", "v_proj", "k_proj", "o_proj"],
)
# For Phi-2
config = LoraConfig(
r=LORA_RANK,
target_modules=["q_proj", "v_proj", "k_proj", "dense"],
)
มีโมเดล LoRA ที่ปรับแต่งอย่างละเอียดและเข้าถึงได้แบบสาธารณะซึ่งเหมาะกับ LLM Inference API ซึ่งพร้อมใช้งานใน HuggingFace เช่น monsterapi/gemma-2b-lora-maths-orca-200k สำหรับ Gemma-2B และ lole25/phi-2-sft-ultrachat-lora สำหรับ Phi-2
หลังจากฝึกในชุดข้อมูลที่เตรียมไว้และบันทึกโมเดล คุณได้รับไฟล์ adapter_model.safetensors
ที่มีน้ำหนักโมเดล LoRA ที่ปรับแต่งอย่างละเอียด ไฟล์ Safetensor คือจุดตรวจ LoRA ที่ใช้ในการแปลงโมเดล
ในขั้นตอนถัดไป คุณต้องแปลงน้ำหนักโมเดลเป็น Flatbuffer ของ TensorFlow Lite โดยใช้แพ็กเกจ MediaPipe Python ConversionConfig
ควรระบุตัวเลือกรุ่นพื้นฐานรวมถึงตัวเลือก LoRA เพิ่มเติม โปรดสังเกตว่าเนื่องจาก API รองรับการอนุมาน LoRA กับ GPU เท่านั้น จึงต้องตั้งค่าแบ็กเอนด์เป็น 'gpu'
import mediapipe as mp
from mediapipe.tasks.python.genai import converter
config = converter.ConversionConfig(
# Other params related to base model
...
# Must use gpu backend for LoRA conversion
backend='gpu',
# LoRA related params
lora_ckpt=LORA_CKPT,
lora_rank=LORA_RANK,
lora_output_tflite_file=LORA_OUTPUT_TFLITE_FILE,
)
converter.convert_checkpoint(config)
ตัวแปลงจะแสดงไฟล์ TFLite Flatbuffer 2 ไฟล์ โดยไฟล์หนึ่งสำหรับโมเดลฐาน และอีกอย่างสำหรับโมเดล LoRA
การอนุมานโมเดล LoRA
LLM Inference API บนเว็บ, Android และ iOS ได้รับการอัปเดตให้รองรับการอนุมานโมเดล LoRA เว็บรองรับ LoRA แบบไดนามิก ซึ่งเปลี่ยน LoRA รุ่นต่างๆ ในระหว่างรันไทม์ได้ Android และ iOS รองรับ LoRA แบบคงที่ ซึ่งใช้น้ำหนัก LoRA เดียวกันตลอดอายุของงาน
Android รองรับ LoRA แบบคงที่ในระหว่างการเริ่มต้น หากต้องการโหลดโมเดล LoRA ให้ผู้ใช้ระบุเส้นทางโมเดล LoRA และ LLM พื้นฐาน// Set the configuration options for the LLM Inference task
val options = LlmInferenceOptions.builder()
.setModelPath('<path to base model>')
.setMaxTokens(1000)
.setTopK(40)
.setTemperature(0.8)
.setRandomSeed(101)
.setLoraPath('<path to LoRA model>')
.build()
// Create an instance of the LLM Inference task
llmInference = LlmInference.createFromOptions(context, options)
หากต้องการเรียกใช้การอนุมาน LLM ด้วย LoRA ให้ใช้เมธอด generateResponse()
หรือ generateResponseAsync()
เดียวกันกับโมเดลฐาน