
โครงการนี้ตระหนักถึงการปรับใช้生成式AI模型ที่หลากหลายสำหรับการคำนวณชิป BM1684X ส่วนใหญ่เป็น LLM โมเดลจะถูกแปลงเป็น BMODEL ผ่านคอมไพเลอร์ TPU-MLIR และปรับใช้กับสภาพแวดล้อม PCIE หรือสภาพแวดล้อม SOC โดยใช้รหัส C ++ ฉันเขียนคำอธิบายเกี่ยวกับ Zhihu โดยใช้ตัวอย่าง ChatGLM2-6B เป็นตัวอย่างเพื่อให้ทุกคนสามารถเข้าใจซอร์สโค้ด: การวิเคราะห์กระบวนการ chatglm2 และการปรับใช้ TPU-MLIR
แบบจำลองที่ปรับใช้มีดังนี้ (จัดเรียงตามลำดับตัวอักษร):
| แบบอย่าง | INT4 | int8 | FP16/BF16 | ลิงค์ HuggingFace |
|---|---|---|---|---|
| Baichuan2-7B | การเชื่อมโยง | |||
| chatglm3-6b | การเชื่อมโยง | |||
| chatglm4-9b | การเชื่อมโยง | |||
| codefuse-7b | การเชื่อมโยง | |||
| Deepseek-6.7b | การเชื่อมโยง | |||
| Falcon-40b | การเชื่อมโยง | |||
| Phi-3-mini-4k | การเชื่อมโยง | |||
| Qwen-7b | การเชื่อมโยง | |||
| Qwen-14b | การเชื่อมโยง | |||
| Qwen-72b | การเชื่อมโยง | |||
| QWEN1.5-0.5B | การเชื่อมโยง | |||
| QWEN1.5-1.8B | การเชื่อมโยง | |||
| QWEN1.5-7B | การเชื่อมโยง | |||
| QWEN2-7B | การเชื่อมโยง | |||
| QWEN2.5-7B | การเชื่อมโยง | |||
| LLAMA2-7B | การเชื่อมโยง | |||
| llama2-13b | การเชื่อมโยง | |||
| LLAMA3-8B | การเชื่อมโยง | |||
| LLAMA3.1-8B | การเชื่อมโยง | |||
| LWM-text-chat | การเชื่อมโยง | |||
| MINICPM3-4B | การเชื่อมโยง | |||
| Mistral-7b-Instruct | การเชื่อมโยง | |||
| การแพร่กระจายที่มั่นคง | การเชื่อมโยง | |||
| การแพร่กระจายที่เสถียร xl | การเชื่อมโยง | |||
| WizardCoder-15B | การเชื่อมโยง | |||
| yi-6b-chat | การเชื่อมโยง | |||
| yi-34b-chat | การเชื่อมโยง | |||
| qwen-vl-chat | การเชื่อมโยง | |||
| qwen2-vl-chat | การเชื่อมโยง | |||
| internvl2-4b | การเชื่อมโยง | |||
| internvl2-2b | การเชื่อมโยง | |||
| MINICPM-V-2_6 | การเชื่อมโยง | |||
| llama3.2-vision-11b | การเชื่อมโยง |
หากคุณต้องการทราบรายละเอียดการแปลงและซอร์สโค้ดคุณสามารถไปที่ไดเรกทอรีย่อยโมเดลของโครงการนี้เพื่อดูรายละเอียดการปรับใช้ของรุ่นต่างๆ
หากคุณมีความสนใจในชิปของเราคุณสามารถติดต่อเราผ่านเว็บไซต์อย่างเป็นทางการของ Sophgo
โคลนโครงการ LLM-TPU และดำเนินการสคริปต์ run.sh
git clone https://github.com/sophgo/LLM-TPU.git
./run.sh --model llama2-7bโปรดดูรายละเอียดการเริ่มต้นอย่างรวดเร็ว
เอฟเฟกต์หลังจากการทำงานจะแสดงในรูปต่อไปนี้

แบบจำลองที่ใช้สำหรับการสาธิตในปัจจุบันคำสั่งทั้งหมดจะแสดงในตารางต่อไปนี้
| แบบอย่าง | Soc | PCIE |
|---|---|---|
| chatglm3-6b | ./run.sh-โมเดล chatglm3-6b-arch soc | ./run.sh-โมเดล chatglm3-6b-arch pcie |
| LLAMA2-7B | ./run.sh-Model Llama2-7b-arch Soc | ./run.sh-โมเดล Llama2-7b-arch pcie |
| Llama3-7B | ./run.sh-Model Llama3-7b-arch Soc | ./run.sh-โมเดล Llama3-7b-arch pcie |
| Qwen-7b | ./run.sh-โมเดล Qwen-7b-arch Soc | ./run.sh-โมเดล QWEN-7B-ARCH PCIE |
| QWEN1.5-1.8B | ./run.sh-โมเดล Qwen1.5-1.8b-arch Soc | ./run.sh-โมเดล QWEN1.5-1.8B-ARCH PCIE |
| QWEN2.5-7B | - | ./run.sh-โมเดล QWEN2.5-7B-ARCH PCIE |
| LWM-text-chat | ./run.sh-โมเดล LWM-Text-Chat-arch Soc | ./run.sh-โมเดล LWM-Text-chat-arch pcie |
| WizardCoder-15B | ./run.sh-Model WizardCoder -15b-arch Soc | ./run.sh-Model WizardCoder -15b-arch pcie |
| internvl2-4b | ./run.sh-Model Internvl2-4b-arch Soc | ./run.sh-Model Internvl2-4b-arch pcie |
| MINICPM-V-2_6 | ./run.sh -โมเดล minicv2_6 -arch soc | ./run.sh -โมเดล minicmv2_6 -arch pcie |
คำอธิบายฟังก์ชั่นขั้นสูง:
| การทำงาน | สารบัญ | คำอธิบายฟังก์ชั่น |
|---|---|---|
| มัลติคอร์ | chatglm3/parallel_demo | สนับสนุน chatglm3 2-core |
| llama2/demo_parallel | สนับสนุน LLAMA2 4/6/8 CORE | |
| qwen/demo_parallel | สนับสนุน Qwen 4/6/8 คอร์ | |
| QWEN1_5/DEMO_PARALLE | รองรับ QWEN1_5 4/6/8 คอร์ | |
| การสุ่มตัวอย่างแบบเก็งกำไร | qwen/jacobi_demo | lookaheaddecoding |
| qwen1_5/speculative_sample_demo | การสุ่มตัวอย่างแบบเก็งกำไร | |
| นำกลับมาใช้ซ้ำ | qwen/prompt_cache_demo | ลำดับที่พบบ่อย prefill มัลติเพล็กซ์ |
| qwen/share_cache_demo | ลำดับที่พบบ่อย prefill มัลติเพล็กซ์ | |
| qwen1_5/share_cache_demo | ลำดับที่พบบ่อย prefill มัลติเพล็กซ์ | |
| การเข้ารหัสแบบจำลอง | qwen/share_cache_demo | การเข้ารหัสแบบจำลอง |
| qwen1_5/share_cache_demo | การเข้ารหัสแบบจำลอง |
โปรดดูคำถามที่พบบ่อยและคำตอบของ LLM-TPU