مشخصات پروتکل فراگیر فراخوانی ابزار (UTCP)
این مخزن شامل مستندات رسمی مشخصات پروتکل فراگیر فراخوانی ابزار (UTCP) است. UTCP یک استاندارد مدرن، انعطافپذیر و مقیاسپذیر برای تعریف و تعامل با ابزارها در پروتکلهای ارتباطی مختلف است.
UTCP چیست؟
UTCP روشی استاندارد برای سیستمهای هوشمند مصنوعی و سایر کلاینتها فراهم میکند تا ابزارها را از ارائهدهندگان مختلف کشف کرده و فراخوانی نمایند، بدون توجه به پروتکل زیرساختی مورد استفاده (HTTP، WebSocket، CLI و غیره). این مشخصات موارد زیر را تعریف میکند:
- مکانیزمهای کشف ابزار
- قالبهای فراخوانی ابزار
- پیکربندی ارائهدهنده
- روشهای احراز هویت
- مدیریت پاسخ
مشارکت در مشخصات
ما از مشارکت شما در مشخصات UTCP استقبال میکنیم! روش مشارکت به شرح زیر است:
- مخزن را فورک کنید: یک فورک از مخزن مشخصات بسازید
- تغییرات خود را اعمال کنید: مستندات را بر اساس نیاز بهروزرسانی یا اضافه کنید
- درخواست pull ارسال کنید: یک PR با تغییرات خود برای بازبینی باز کنید
- در بحثها شرکت کنید: به گفتوگو درباره تغییرات پیشنهادی بپیوندید
- اطمینان حاصل کنید که تغییرات شما با چشمانداز و اهداف کلی UTCP همسو باشد
- ساختار و قالببندی مستندات موجود را دنبال کنید
- هنگام افزودن ویژگیها یا مفاهیم جدید، مثال ارائه دهید
- بخشهای مرتبط را برای حفظ یکپارچگی مستندات بهروزرسانی کنید
ساخت مستندات به صورت محلی
پیشنیازها
برای ساخت و پیشنمایش سایت مستندات به صورت محلی، به موارد زیر نیاز خواهید داشت:
- روبی نسخه 2.5.0 یا بالاتر
- RubyGems
- Bundler
راهاندازی
- مخزن را کلون کنید:
git clone https://github.com/universal-tool-calling-protocol/utcp-specification.git
cd utcp-specification
``
- وابستگیها را نصب کنید:
`bash
bundle install
`
اجرای سایت مستندسازی
برای ساخت و ارائه سایت به صورت محلی:
bash
bundle exec jekyll serve
`
این فرمان یک وبسرور محلی را در آدرس http://localhost:4000 راهاندازی میکند که میتوانید مستندات را در آن مشاهده کنید.ساختار مستندات
مستندات UTCP به صورت زیر سازماندهی شده است:
index.md: صفحه اصلی و مقدمهای بر UTCP
docs/
introduction.md: مقدمهای جامع و مفاهیم اصلی
for-tool-providers.md: راهنمای پیادهسازی فراهمکنندگان ابزار
for-tool-callers.md: راهنمای پیادهسازی فراخوانهای ابزار
providers/: مستندات مربوط به هر نوع فراهمکننده
http.md: فراهمکننده HTTP
websocket.md: فراهمکننده WebSocket
cli.md: فراهمکننده CLI
sse.md: فراهمکننده Server-Sent Events
و غیره
implementation.md: رهنمودها و بهترین شیوههای پیادهسازیکار با مشخصات
ویرایش مستندات
مستندات به فرمت Markdown با بخش ابتدایی Jekyll نوشته شده است. هنگام ایجاد تغییرات:
- اطمینان حاصل کنید که Markdown شما با سبک تعیینشده مطابقت دارد
- تغییرات را به صورت محلی پیشنمایش کنید قبل از ارسال Pull Request
- مثالها را مطابق با آخرین نسخه مشخصات بهروزرسانی کنید
- اگر صفحه جدیدی اضافه میکنید، آیتمهای ناوبری را در
_config.yml بهروزرسانی کنیدسازماندهی فایلها
هنگام افزودن مستندات جدید:
- مستندات مختص فراهمکننده را در
docs/providers/` قرار دهید
کنترل نسخه
مشخصات UTCP از نسخهبندی معنایی پیروی میکند:
- نسخههای اصلی (1.0، 2.0): تغییرات ناسازگار با نسخه قبلی در پروتکل
- نسخههای فرعی (1.1، 1.2): افزودن قابلیتهای جدید به صورت سازگار با نسخه قبلی
- نسخههای وصلهای (1.0.1، 1.0.2): رفع اشکال و شفافسازی به صورت سازگار با نسخه قبلی
مجوز
این مشخصات تحت مجوز عمومی موزیلا نسخه 2.0 (MPL-2.0) توزیع شده است.