הרצת מודלי שפה גדולים (LLMs) מקומית מכריחה אותך לעיתים קרובות להיכנס לפינה של מגבלות חומרה. משתמשי NVIDIA חיים בתוך המערכת האקולוגית של CUDA. מפתחי Apple בוחרים ב-Metal. כל השאר מקווים שה-GPU שלהם תומך ב-OpenCL או פשוט חוזרים ל-CPU. הפיצול הזה הופך את הפצת אפליקציית AI לשולחן עבודה למשימה קשה יותר ממה שהיא צריכה להיות. TensorSharp החלה לטפל בבעיה על ידי הוספת Vulkan backend, מה שמעניק למנוע נתיב אמין עבור GPUs נפרדים מכל סוג של יצרן.
למה Vulkan משנה את המשוואה
Vulkan נדון בדרך כלל בחוגי גיימינג, אך כ-API לחישוב (compute) חוצה פלטפורמות עם overhead נמוך, הוא חשוב לא פחות עבור inference. הוא מגיע לחומרה ש-CUDA מתעלם ממנה: שבבי Intel UHD ו-Iris Xe מובנים, כרטיסים נפרדים ישנים יותר, ומחשבים ניידים של Windows בתקציב נמוך ללא מדבקה של NVIDIA. עבור מנוע inference מקומי, הטווח הזה הוא כוח מעשי. מפתח יכול להפיץ נתיב בינארי יחיד שיעבוד על הרבה יותר מכונות ממה שפתרון מבוסס CUDA בלבד יוכל אי פעם.
התמיכה ב-Vulkan של TensorSharp הופיעה לראשונה דרך פרויקט GGML. האינטגרציה הזו עובדת כיום, אם כי המחבר מתכנן לבנות native Vulkan backend בהמשך. השימוש ב-GGML כגשר היה מהלך שלב נכון. הוא מאמת את הארכיטקטורה ומביא את החומרה לידי הבודקים באופן מיידי. native backend יבוא לאחר מכן כדי להסיר את ה-abstraction overhead ולתת למנוע המבוסס על C# שליטה עדינה יותר ב-command buffers וב-memory barriers.
איך נראה מרחב הבדיקות עד כה
הוולידציה כבר מכסה שתי קונפיגורציות Windows שונות מאוד. המפתח בדק על NVIDIA GeForce RTX 3080 Laptop GPU ועל Intel UHD Graphics רגיל. שניהם עבדו היטב. הטווח הזה ראוי לציון. שבבי silicon נפרדים בעלי wattage גבוה וגרפיקה מובנית בסיסית לעיתים רחוקות חולקים מרחב בדיקה נעים בקלות כזו בעולם ה-inference. אם אתם מריצים מחשב נייד קל משקל ללא GPU ייעודי, TensorSharp מציעה כעת נתיב האצה אמיתי שאינו תלוי בדרייברים של NVIDIA.
החסר במטריצה הוא AMD. עדיין לא נבדתה שום חומרה של Radeon. אם יש לכם GPU של AMD, הפרויקט זקוק למשוב שלכם. וולידציה של הקהילה על כרטיסי סדרת RX 6000 או 7000 היא מה שהופך backend ניסיוני לאופציה ברמת ייצור (production-grade). פתחו issue אם זה נשבר. פתחו אחד אם זה עובד מצוין. כל תוצאה כזו דוחפת את הפרויקט קדימה.
TensorSharp אינו wrapper
נקודה זו ראויה להדגשה. TensorSharp אינו C# binding סביב llama.cpp. המפתח בנה את המנוע כולו מאפס. ה-CPU backend הוא pure C#. כשאתם מריצים inference ללא GPU, אתם מריצים managed code במקום לבצע marshaling דרך foreign function interface לתוך binary של C++. הפרויקט גם מתחזק backends ייעודיים עבור CUDA, MLX של Apple, ו-GGML. למרות העצמאות הארכיטקטונית הזו, הביצועים תואמים ל-llama.cpp, שנותר נקודת הייחוס שרוב פרויקטי ה-inference המקומיים שואפים אליה. השוויון הזה הושג בעמל רב. זה אומר שפריסת הזיכרון (memory layout), ה-kernel dispatch ופעולות ה-tensor עומדים במבחן העומס האמיתי.
תמיכה במודלים כוללת את Gemma4, DiffusionGemma, ו-Qwen3.6. ה-runtime מטפל גם בעבודה multimodal. צינורות (pipelines) של ראייה (vision), אודיו והסקה (reasoning) רצים דרך אותו מנוע. אם אתם בונים אבטיפוס של עוזר שולחן עבודה שקורא צילומי מסך ומקבל פקודות קוליות, אתם לא צריכים לחבר שלושה runtimes נפרקים ולהתפלל שטביעת הרגל של הזיכרון שלהם תיכנס למכונה שלכם.
גמישות פלטפורמה ו-API
TensorSharp רץ על Windows, macOS ו-Linux. ה-Vulkan backend החדש משתלב בצורה חלקה במטריצה הזו לצד נתיבי ה-CUDA וה-Metal הקיימים. המנוע גם חושף תאימות ל-APIs של OpenAI ו-Ollama. הבחירה הזו מסירה חיכוך באינטגרציה. אתם יכולים לכוון קוד לקוח קיים לשרת TensorSharp מקומי מבלי לכתוב מחדש prompt templates או לנתח (parse) מבנה תגובה חדש. עבור צוותים שכבר מ
Continuous batching, גם הוא מגיע מ-vLLM, משפר את ה-throughput. המנוע יכול להכניס בקשות חדשות לתוך אצווה (batch) פעילה במקום לחכות שהקבוצה הנוכחית תסתיים. אם הפרומפט של משתמש אחד הוא עשרה טוקנים והשל השני הוא מאתיים, החומרה נשארת עסוקה יותר וה-latency הממוצעת יורדת.
עבור מודלים מסוג Mixture-of-Experts, TensorSharp מממש אסטרטגיית מטמון (cache) מבוססת SSD השאולה מ-oMLX. משקולות מומחה (expert weights) שנגישות בתדירות גבוהה יושבות מוכנות על אחסון מהיר במקום להילחם על ה-RAM של המערכת. במכונות עם זיכרון מוגבל אך כונני NVMe סבירים, זה שומר על ארכיטקטורות MoE בשימוש.
הקוונטיזציה (Quantization) עוקבת אחר תקן GGUF שנקבע על ידי llama.cpp. המודלים המקוונטיזים שלך ב-4-bit ו-5-bit נטענים ישירות ללא צורך בשלב המרה.
השורה התחתונה
תמיכה ב-Vulkan הופכת את TensorSharp מניסוי C# מעניין לאופציית inference מעשית עבור חומרה הטרוגנית. מפת הדרכים ברורה: אימות על פני שבבי AMD ו-Intel נפרדים (discrete), ולאחר מכן הידוק המימוש באמצעות backend Vulkan טבעי. אם יש לך כרטיס AMD בתחנת העבודה או בלפטופ שלך, הרץ את ה-build ושתף את התוצאות שלך. לולאת המשוב הזו היא מה שמקשיחה קוד ניסיוני למשהו שניתן לשחרר (ship).
ניתן למצוא את פרטי הגרסה בכתבה של המפתח. אם הפרויקט חוסך לך את הצורך להתעסק עם ערכות כלי CUDA או להיאבק בחסימות גרסאות macOS, השאר כוכב (star) ב-repository. לדיונים מתמשכים ושרשורי בדיקות קהילתיים, קבוצת ה-Telegram נשארת פתוחה.
