בכתבה הזאת אנחנו עוברים על הסביבה שבה מוגדר השרת המפלצתי שלנו עבור AI מקומי ללא תלות בענן – זה לא מסובך אבל יש כמה שלבים שצריך ללמוד בשביל להגיע ליעד
לאחר שבנינו את השרת הביתי שלנו עבור הרצת מודלי AI מקומיים הגיע הזמן להכיר את החלק הטכני – הגדרת הסביבה על מנת שנוכל להריץ מטלות על אותם מודלים. הכתבה הזאת תשתמש בעיקר מדריך לצורך המטרה הזאת.

בתצוגת הרכבת המערכת שלנו פירטנו על החומרה שמשתתפת. מדובר בחומרה שמעניקה יכולות AI בדרך של ארבעה כרטיסים גרפיים, כל אחד בעל 32GB של זיכרון גרפי מהיר מסוג GDDR6.

הפרויקט הזה אפשרי בזכות חברות כמו אינטל, Noctua, ASUS ו-ADATA שתרמו חומרה בעלת ערך מאוד גבוה בימים אלו. אנחנו מודים לתרומה שלהם עבור הפרויקט המתמשך הזה.
הפרויקט מכיל תכונה לה קוראת אינטל Battlematrix, שהיא הגדרה נחמדה למערך ליבות גרפיות עבור שימושי AI.
תחנות עבודה Project Battlematrix
פרויקט Battlematrix מציג פלטפורמת הסקה (Inference) המשלבת חומרה ותוכנה מאומתות במלואן, המיועדת למהנדסים ולמקצוענים המעוניינים לשמור על פרטיות הנתונים שלהם ולהימנע מעלויות ענן גבוהות. המערכת מאפשרת שרשור של מספר כרטיסי Arc Pro B70 (לדוגמה, תצורה של 4 כרטיסים המאגדת 128GB של זיכרון גרפי) על גבי פלטפורמת Intel Xeon.
התקנת החבילות הבסיסיות ומערכת ההפעלה
מחסנית תוכנה מותאמת ל-Linux (AI Software Stack)
רכיבי התוכנה המרכזיים הנתמכים עבור פיתוח וסביבת ריצה:
- מערכת הפעלה: Ubuntu 26.04 (ליבת KMD מסוג
xe, דרייבר UMD מסוג Level Zero). - מסגרות עבודה (Frameworks): PyTorch 2.12.0+xpu, vLLM 0.26.0.
- ספריות OneAPI: oneDNN, oneMKL, oneCCL.
- כלי ניהול:
xpu-smi,xpu-manager.
מדריך התקנה מהיר (Ubuntu 26.04)
אם תחנת העבודה לא סופקה מראש על ידי אינטל (שלנו היא בניה ידנית ולא מערכת שלמה מאינטל), יש לבצע את השלבים הבאים בסדר הבא:
- התקנת מערכת הפעלה: התקן Ubuntu 26.04 (מומלצת גרסת Desktop כדי ליהנות מממשקי ה-UI המבוססים על דפדפן). אפשר למצוא מדריכי התקנה בוידאו ובטקסט ברחבי הרשת של Ubuntu.
- התקנת זמן ריצה (Runtime): חבילת ה-OMIX מוסיפה את מנהל ההתקן Level Zero, ספריות oneDNN, oneMKL, oneCCL ו-PTI בפעולה אחת.
- אתחול המערכת: הפעל מחדש את המערכת כדי לטעון את מנהל ההתקן
xe. - התקנת Docker: התקן את Docker בהתאם למדריך הרשמי של דוקר. מדובר במרכיב שעליו ישב השרת המקומי.
בדיקות אימות (Sanity / Verification)
לחיפוש ואימות זוהות הכרטיסים במערכת, הרץ טרמינל (Bash / Terminal או כל תוכנה שמאפשרת זאת):
sudo xpu-smi discovery

מומלץ לוודא שכל הכרטיסים פועלים במצב PCIe Gen5 האופטימלי בעזרת הפקודה הבאה:
for i in 0 1 2 3; do echo "=== Device $i ==="; sudo xpu-smi discovery -d $i | grep -i "PCIe"; done
הערה: אם כרטיס כלשהו ירד לדור 4 עקב תאימות רגישה מדי, ניתן להחזירו לדור 5 באמצעות הפקודה:
sudo xpu-smi config -d <device_id> --pciedowngrade 0
(יש להחליף את <device_id> במספר ההתקן המושפע, ולאחר מכן לבצע כיבוי והדלקה קרים – Cold Reboot).
מדריך הגדרה והרצת vLLM
למעקב אחר ניצול משאבי ה-GPU (זיכרון, טמפרטורה וניצולת מעבד), השתמש בפקודה:
sudo xpu-smi dump --metrics 0,1,2,18
שליפת אימג' ה-Docker והרצתו
docker pull vllm/vllm-openai-xpu:v0.26.0
הגדרת משתני הסביבה והרצת הקונטיינר (vllm_serve):
export HF_TOKEN=<your_hugging_face_token>
export HF_HOME=/home/$USER/models
docker run -td --privileged --net=host --device=/dev/dri --name=vllm_serve \
-v ${HF_HOME}:/llm/models \
-e no_proxy=localhost,127.0.0.1 \
-e http_proxy=$http_proxy -e https_proxy=$https_proxy \
-e HF_TOKEN=${HF_TOKEN} -e HF_HOME=/llm/models \
--shm-size="200g" --entrypoint /bin/bash vllm/vllm-openai-xpu:v0.26.0
docker exec -it vllm_serve bash
תרחיש GPU יחיד (1x GPU Scenario) – בדיקת שפיות
הפעלת שרת vLLM עם מודל Llama-3.1-8B (תצורת Parallel size 1):
VLLM_WORKER_MULTIPROC_METHOD=spawn HF_HOME=/llm/models vllm serve meta-llama/Llama-3.1-8B \
--served-model-name Llama-3.1-8B --dtype bfloat16 --tensor-parallel-size 1 \
--max-model-len 4096 --max-num-batched-tokens 8192 --max-num-seqs 128 \
--gpu-memory-utilization 0.9 --enforce-eager --trust-remote-code \
--disable-log-stats --no-enable-prefix-caching --block-size 64 \
--port 8000 --host 0.0.0.0
תרחיש 4 מעבדים גרפיים (4x GPU Scenario)
1. הרצת שרת vLLM בתצורת 4 כרטיסים (tp=4)
פקודה להרצת השרת עבור המודל meta-llama/Llama-3.3-70B-Instruct בתוך הקונטיינר vllm_serve:
TORCH_LLM_ALLREDUCE=1 VLLM_ALLOW_LONG_MAX_MODEL_LEN=1 VLLM_WORKER_MULTIPROC_METHOD=spawn \
vllm serve meta-llama/Llama-3.3-70B-Instruct \
--served-model-name meta-llama/Llama-3.3-70B-Instruct \
--quantization fp8 \
--kv-cache-dtype fp8 \
--enforce-eager \
--port 8000 \
--host 0.0.0.0 \
--trust-remote-code \
--gpu-memory-util=0.85 \
--no-enable-prefix-caching \
--disable-sliding-window \
--max-model-len=5120 \
--block-size 64 \
--tensor-parallel-size 4
2. הרצת בנצ'מרק בדיקת עומסים (Benchmark)
פתח חלון טרמינל נפרד, היכנס לקונטיינר והרצ את ה-Benchmark:
docker exec -it vllm_serve bash
vllm bench serve \
--model meta-llama/Llama-3.3-70B-Instruct \
--served-model-name meta-llama/Llama-3.3-70B-Instruct \
--dataset-name random \
--random-input-len=1024 \
--random-output-len=512 \
--ignore-eos \
--num-prompts 50 \
--trust-remote-code \
--request-rate inf \
--backend vllm \
--port=8000
הדגמות AI וערכות פיתוח (GPU Skill Packs & Demos)
- Intel GPU Skill Pack: אוסף של 20 כישורי סוכן (Agent Skills) המאפשרים לסוכני קידוד להריץ, לבצע בנצ'מרק, לנתח ולבצע מגריישן (Migration) למודלים על גבי מעבדי Intel Arc. להלן הפקודות שניתן להריץ בטרמינל:
git clone https://github.com/intel/gpu-ai-skills.git intel-gpu-ai-skills cd intel-gpu-ai-skills && bash scripts/install.sh - Intel Xpu AI Demos: אוסף מחברות Jupyter Lab מוכנות להרצה לבניית יישומי בינה מלאכותית מלאים (RAG, עיבוד תמונה, OCR, יצירת וידאו וקול).
git clone https://github.com/intel/intel-xpu-ai-demos.git cd intel-xpu-ai-demos python -m pip install -r requirements.txt jupyter lab
הדגמות בינה מלאכותית עבור Intel XPU (Intel XPU AI Demos)
אוסף של מחברות Jupyter עצמאיות, שכל אחת מהן בונה יישום בינה מלאכותית מלא על גבי מעבד ה-GPU: הגשת מודלי שפה (LLM Serving), מערכות RAG על גבי המסמכים האישיים שלך, זיהוי תווים אופטי (OCR), בדיקה חזותית (Vision Inspection), יצירת תמונות ווידאו, עיבוד קול וסוכני ביצוע משימות (Tool-calling Agents). כל מחברת בודקת את הסביבה, מתקינה את הרכיבים החסרים, מפעילה את המודל ופותחת אפליקציה אינטראקטיבית – כאשר הכל רץ באופן מקומי על הכרטיס: https://github.com/intel/intel-xpu-ai-demos
התקנה ראשונית (חד-פעמית):
- וודא שמנהל ההתקן של ה-GPU ו-Docker מותקנים (בהתאם לסעיף 8), ושהמשתמש שלך מוגדר כחלק מקבוצות render ו-docker.
- שכפל את מאגר הקוד (Repository) והתקן את JupyterLab:
git clone https://github.com/intel/intel-xpu-ai-demos.git cd intel-xpu-ai-demos python -m pip install -r requirements.txt- הפעל את JupyterLab:
jupyter labפתח את המחברת בנתיב demos/02_hello_world_vllm/ ובחר בתפריט העליון ב-Run -> Run All Cells. ההרצה הראשונית תוריד את אימג' הקונטיינר ואת משקלי המודל ותמשך מספר דקות; שני הרכיבים נשמרים במטמון (Cache), כך שהרצות עתידיות יהיו מהירות ויפעלו גם ללא חיבור לרשת.
הדגמת יכולות – שימוש בארבעה ARC PRO B70
לצורך הדגמת יכולות אפשר להשתמש בתוכנות כמו LM Studio אשר מחוברת באופן ישיר למאגר המודלים המקומיים Huggingface.

אחד היתרונות שבשימוש בארבעה כרטיסים גרפיים הוא כמות הבקשות שאפשר להריץ במקביל על מודלים. להלן מבחני ביצועים שמציגים את הביצועים עם בקשה בודדת, לצד 8 ו-16 בקשות מקבילות של חישוב מהמודלים. הביצועים הללו מסומלים ב-8C ו-16C.
הביצועים הנמדדים הם בכמות הטוקנים לשניה של המודל.
Google Gemma 4 – 33GB
| GPU / System | VRAM / Memory | Gemma 4 Q4_K_M Speed (Tokens/sec) |
|---|---|---|
| Intel ARC PRO B70 X4 | 128GB | 59 |
| Intel ARC PRO B70 X4 – 8C | 128GB | 424.6 |
| Intel ARC PRO B70 X4 – 16C | 128GB | 662 |
| Asus GX10 (DGX Spark) | 128GB | 46.5 |
| NVIDIA GeForce RTX 5090 | 32GB | 0 |
| NVIDIA GeForce RTX 4090 | 24GB | 0 |
| NVIDIA GeForce RTX 5060 Ti | 16GB | 0 |
Google Gemma E4b – 6GB
| GPU / System | VRAM / Memory | Gemma 4 E4b Q4_K_M Speed (Tokens/sec) |
|---|---|---|
| Intel ARC PRO B70 X4 | 128GB | 51 |
| Intel ARC PRO B70 X4 – 8C | 128GB | 373.6 |
| Intel ARC PRO B70 X4 – 16C | 128GB | 641 |
| NVIDIA GeForce RTX 5090 | 32GB | 182.8 |
| NVIDIA GeForce RTX 4090 | 24GB | 151.0 |
| NVIDIA GeForce RTX 5060 Ti | 16GB | 83.2 |
| Asus GX10 (DGX Spark) | 128GB | 46.5 |
OpenAI GPT OSS – 12GB
| GPU / System | VRAM / Memory | OpenAI GPT OSS 20B Speed (Tokens/sec) |
|---|---|---|
| Intel ARC PRO B70 X4 | 128GB | 114.5 |
| Intel ARC PRO B70 X4 – 8C | 128GB | 440 |
| Intel ARC PRO B70 X4 – 16C | 128GB | 687.2 |
| NVIDIA GeForce RTX 5090 | 32GB | 277.3 |
| NVIDIA GeForce RTX 4090 | 24GB | 209.8 |
| NVIDIA GeForce RTX 5060 Ti | 16GB | 103.4 |
| Asus GX10 (DGX Spark) | 128GB | 60.6 |
Qwen 3.8 27b – 15GB
| GPU / System | VRAM / Memory | Qwen 3.8 27B Q4_K_M Speed (Tokens/sec) |
|---|---|---|
| Intel ARC PRO B70 X4 | 128GB | 70.2 |
| Intel ARC PRO B70 X4 – 8C | 128GB | 320 |
| Intel ARC PRO B70 X4 – 16C | 128GB | 559.1 |
| NVIDIA GeForce RTX 5090 | 32GB | 112.9 |
| NVIDIA GeForce RTX 4090 | 24GB | 96.3 |
| Asus GX10 (DGX Spark) | 128GB | 15.66 |
| NVIDIA GeForce RTX 5060 Ti | 16GB | 12.0 |
אפשר לראות שעבור שימוש בבקשה אחת בודדת, לא מדובר בשיאן ביצועים. אפילו היינו אומרים שמדובר בבזבוז דיי גדול של משאבים ותקציב עבור שימושים של משתמש אחד עם בקשה אחת.
אמנם, כשמרחיבים את השימוש ל-8 או 16 בקשות בו-זמנית אפשר לראות עליה אדירה ביכולת הפקת טוקנים לשניה. מדובר למעשה בפתיחה משמעותית של צוואר בקבוק חומרתי כשזה מגיע למימוש רשתות מקומיות ומודלים. במקרים מסוימים אפשר להגיע לביצועים רב-שימושיים שעולים משמעותית על שימוש בכרטיסי מסך מתקדמים אחרים.
איך אני בוחר במודל המקומי הנכון?

התשובה לשאלה הזאת היא קצת מורכבת, שכן ישנם הרבה מודלים שאפשר להוריד ולהריץ בדיוק לאותן מטרות. הורדה של מודלים תהיה לרוב חינמית, ולכן ההמלצה הטובה ביותר שאנחנו יכולים לתת היא לנסות ולראות כיצד הפלט שלכם נראה מבחינת מהירות ובעיקר מבחינת איכות.
כל מודל מיועד לעשות דברים ספציפיים בצורה הטובה ביותר. יש מודלים שכותבים קוד, יש כאלה שמג'נרטים תמונות או כותבים סיפור, יש מודלים לזיהוי שפה או לזיהוי אובייקטים בוידאו.
לרוב, ספריות כמו אלה שיש ב-Huggingface מתארות באופן מפורט את שימוש המודלים, ויש גם ביקורות גולשים לצד ביקורות כלליות ברחבי הרשת.

חשוב לזכור שלא כל המודלים עובדים בצורה חלקה על כל סוגי החומרה, אבל באופן כללי ניתן לטעון ולהריץ כמעט את כולם עם קונפיגורציה כמו שאנחנו מדגימים במאמר הזה, אפילו כשמדובר בחומרה יחסית אקזוטית ולא נפוצה במיוחד בשוק. מודלים כמו Qwen נחשבים למאוד פופולריים ביכולת שלהם לייצר טקסט או קוד בצורה מהירה ועל חומרה פשוטה. דבר זה תומך גם ליכולת להריץ המון בקשות בו-זמנית כשיש קונפיגורציה רצינית כמו זאת שלנו פה.
בפועל זה יכול לשמש משרד שלם או חברה קטנה רק במודל מקומי בודד עם בקשות שונות.





