اجرای تماس های ابزار Deepseek-R1 با OpenWebui و Llama.cpp برای گردش کار محلی AI

آخرین پیشرفت در فناوری هوش مصنوعی ، اخبار هیجان انگیز را برای توسعه دهندگان و علاقه مندان به هوش مصنوعی به ارمغان آورده است. در llama.cpp
تیم اخیراً برای پشتیبانی از ابزار خواستار DeepSeek-R1 ، درخواست Pivotal Pull (#11556) را ادغام کرده است ، و به طور موثری آخرین مانع برای استقرار محلی را از بین می برد. این توسعه ، همراه با OpenWebui و llama.cpp
، امکان ایجاد گردش کار جامع AI محلی ، مانند تصحیح خودکار مقاله را فراهم می کند.
استراتژی استقرار اصلی
تنظیم محیط
-
آخرین نسخه از
llama.cpp
با پشتیبانی ابزار:
git clone https://github.com/ggerganov/llama.cpp
cmake -B build -DLLAMA_CURL=ON -DLLAMA_CUDA=ON
cmake --build build --config Release
- بارگیری مدل کمیت UD-IQ1_S (تقریباً 131 گیگابایت):
from huggingface_hub import snapshot_download
snapshot_download(repo_id="unsloth/DeepSeek-R1-GGUF", allow_patterns=["*UD-IQ1_S*"])
شروع سرور
- تنظیم کردن
--n-gpu-layers
بر اساس GPU VRAM:
./build/bin/server --model DeepSeek-R1-UD-IQ1_S-00001-of-00003.gguf \
--port 10000 --ctx-size 8192 --n-gpu-layers 40
ادغام با OpenWebui
- در OpenWebui ، به “تنظیمات> اتصال OpenAI” بروید و اضافه کنید:
API Endpoint: http://localhost:10000/v1
API Key: none
دستیابی به موفقیت در ویژگی های تماس ابزار
با تشکر از ادغام PR اخیر (github.com/ggerganov/llama.cpp/pull/11556) ، در اینجا قابلیت های جدید وجود دارد:
-
خروجی ساختاری: تعریف ابزارها در قالب JSON با استفاده از
--tools
پارامتر - هماهنگی چند ابزار: چندین API یا توابع را در یک تعامل واحد اجرا کنید.
- بازیابی خطا: منطق آزمایش مجدد را برای دعوت های ابزار ناموفق به طور خودکار پیاده سازی می کند.
مثال استفاده کنید: گردش کار خودکار تصحیح
در اینجا چگونه می توانید ابزارهایی را برای یک سیستم تصحیح خودکار تعریف کنید:
tools = [
{
"name": "grammar_checker",
"description": "Check and correct grammar",
"parameters": {"text": "string"}
},
{
"name": "style_adjuster",
"description": "Adjust the style of an article",
"parameters": {"text": "string", "style": "string"}
}
]
این تنظیم امکان گردش کار مانند:
Original Text → Grammar Check → Style Adjustment → Final Output
نکات بهینه سازی عملکرد
توصیه های سخت افزاری:
- حداقل: RTX 3090 (VRAM 24 گیگابایتی)
-
توصیه می شود: RTX 4090 دوگانه برای شتاب کامل GPU با
--n-gpu-layers 80
استراتژی های کمیت:
- کمیت 8 بیتی سرعت استنباط را 37 ٪ با از دست دادن دقت کمتر از 2 ٪ افزایش می دهد.
- کمیت 4 بیتی میزان مصرف حافظه را 45 ٪ کاهش می دهد.
این استراتژی استقرار در محیط های CI/CD اقدامات GitHub تأیید شده است (به ساخت سیاهههای مربوطه مراجعه کنید). شعبه اصلی اکنون شامل پشتیبانی کامل ابزار است. برای اطلاعات بیشتر در مورد جزئیات آموزش ، پروژه Open-R1 یا برای استقرار تجاری را بررسی کنید ، به مجموعه شرکت NVIDIA مراجعه کنید.