تطوير وتجميع نماذج Tongyi Qwen3 في تطبيقات الإنتاج بواسطة NVIDIA: دليل للمطورين للتكامل السريع والفعال
تكامل وتوزيع نماذج Tongyi Qwen3 في التطبيقات الإنتاجية باستخدام NVIDIA أعلنت Alibaba مؤخرًا عن إطلاق Tongyi Qwen3، وهي عائلة من النماذج اللغوية الكبيرة ذات الإدراك الهجين والمصدر المفتوح. تتكون عائلة Qwen3 من نموذجين مختلطين (MoE) هما 235B-A22B (235 مليار معلمة إجمالية و22 مليار معلمة نشطة) و30B-A3B، بالإضافة إلى ستة نماذج كثيفة بحجم 0.6 مليار، 1.7 مليار، 4 مليارات، 8 مليارات، 14 مليار، و32 مليار معلمة. أداء الاستدلال في النماذج اللغوية الكبيرة أداء الاستدلال في النماذج اللغوية الكبيرة (LLMs) هو العنصر الأساسي لضمان الانتشار الفعلي والمكلف بشكل فعال في التطبيقات في الوقت الحقيقي. يواجه مطورو البرمجيات تحديات عديدة في تصميم أنظمة استدلال فعالة، بما في ذلك متطلبات الحوسبة والذاكرة المتغيرة في مراحل التحضير والفك في LLMs، والحاجة إلى الاستدلال التوزيعي المتوازي في النماذج الضخمة جدًا، والعديد من الطلبات المتزامنة، ومدخلات ومخرجات ذات طول ديناميكي عالي. هناك العديد من تقنيات التحسين المتاحة في محركات الاستدلال، بما في ذلك النوى الحوسبة عالية الأداء، التكميم الدقيق المنخفض، جدولة الدفعات، تحسين العينة، وتحسين ذاكرة التخزين المؤقت (KV Cache). يجب على المطورين التجربة لمعرفة أي مزيج من التقنيات هو الأنسب لسيناريواتهم. TensorRT-LLM لتحسين أداء الاستدلال على NVIDIA GPUs يوفر TensorRT-LLM النوى الحوسبة المحسنة بشكل كبير، التنفيذ العالي للأداء للانتباه، الدعم التوزيعي لأكثر من عقدة وأكثر من GPU، واستراتيجيات متعددة للتوازي والتكميم، مما يساعد على أداء الاستدلال بكفاءة على NVIDIA GPUs. كما يتميز TensorRT-LLM ببنية جديدة مبنية على PyTorch، تجمع بين الأداء الذروة وعملية عمل مرن وودية للمطورين. يمكن استخدام واجهة برمجة التطبيقات (API) الخاصة بالنموذج اللغوي (LLM) لإعداد الاستدلال بسرعة. تحسين استدلال Qwen3-4B باستخدام TensorRT-LLM سنستخدم نموذج Qwen3-4B لإعداد خلفية PyTorch ثم القيام بالقياس. خطوات القياس: إعداد مجموعة بيانات الاختبار وملف التكوين: python python3 /path/to/TensorRT-LLM/benchmarks/cpp/prepare_dataset.py \ --tokenizer=/path/to/Qwen3-4B \ --stdout token-norm-dist --num-requests=32768 \ --input-mean=1024 --output-mean=1024 \ --input-stdev=0 --output-stdev=0 > /path/to/dataset.txt ```yaml cat >/path/to/extra-llm-api-config.yml <<EOF pytorch_backend_config: use_cuda_graph: true cuda_graph_padding_enabled: true cuda_graph_batch_sizes: 1 2 4 8 16 32 64 128 256 384 print_iter_log: true enable_overlap_scheduler: true EOF ``` تشغيل الأمر القياسي باستخدام trtllm-bench: bash trtllm-bench \ --model Qwen/Qwen3-4B \ --model_path /path/to/Qwen3-4B \ throughput \ --backend pytorch \ --max_batch_size 128 \ --max_num_tokens 16384 \ --dataset /path/to/dataset.txt \ --kv_cache_free_gpu_mem_fraction 0.9 \ --extra_llm_api_options /path/to/extra-llm-api-config.yml \ --concurrency 128 \ --num_requests 32768 \ --streaming مع نفس تكوين GPU، تم تحقيق سرعة توصيل الاستدلال تصل إلى 16.04 مرة أسرع عند تشغيل نموذج Qwen3-4B الكثيف باستخدام TensorRT-LLM ودقة BF16 مقارنة بخط الأساس BF16. تشغيل Qwen3-4B باستخدام الإطارات الأخرى بالإضافة إلى TensorRT-LLM، يمكن توزيع نماذج Qwen باستخدام إطارات أخرى مثل Ollama، SGLang، وvLLM على NVIDIA GPUs بخطوات بسيطة. تشغيل Qwen3-4B باستخدام Ollama: bash ollama run qwen3:4b - لكتابة دالة Python Lambda لإضافة رقمين مع تمكين وضع التفكير: "Write a python lambda function to add two numbers" - بدون تمكين وضع التفكير: "Write a python lambda function to add two numbers /no_think" تشغيل Qwen3-4B باستخدام SGLang: تثبيت SGLang: bash pip install "sglang[all]" تحميل النموذج: bash huggingface-cli download --resume-download Qwen/Qwen3-4B --local-dir ./ تشغيل الخادم: bash python -m sglang.launch_server \ --model-path /ssd4TB/huggingface/hub/models/ \ --trust-remote-code \ --device "cuda:0" \ --port 30000 \ --host 0.0.0.0 استدعاء الاستدلال: bash curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Qwen/Qwen3-4B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' تشغيل Qwen3-4B باستخدام vLLM: تثبيت vLLM: bash pip install vllm تشغيل الخادم: bash vllm serve "Qwen/Qwen3-4B" \ --tensor-parallel-size 1 \ --gpu-memory-utilization 0.85 \ --device "cuda:0" \ --max-num-batched-tokens 8192 \ --max-num-seqs 256 استدعاء الاستدلال: bash curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Qwen/Qwen3-4B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' الخلاصة يمكن للمطورين تجربة عائلة النماذج الجديدة Qwen3 على NVIDIA GPUs باستخدام الإطارات الشائعة مثل TensorRT-LLM لتسريع استدلال الذكاء الاصطناعي. اختيار الإطار المناسب لتوزيع النماذج والاستدلال يعتمد على موازنة الأداء، الموارد، والتكلفة عند نشر نماذج الذكاء الاصطناعي في الإنتاج. تقييم الحدث يعد Tongyi Qwen3 خطوة مهمة في مجال الذكاء الاصطناعي، خاصة في الصين، حيث يوفر دقة عالية في العديد من المعايير الشائعة. يتيح هذا الإصدار للمطورين اختبار وتحسين نماذجهم بسهولة باستخدام NVIDIA GPUs وإطارات الاستدلال المتقدمة، مما يساهم في تعزيز الابتكار وتحسين الأداء في التطبيقات الحالية والمستقبيلة.