सामग्री पर जाएँ
पेज

इंटीग्रेशन

API

HTTP API से प्रमाणीकरण करें, रन शुरू करें और परिणाम पढ़ें।

Skynet HTTP API की मदद से स्क्रिप्ट और टूल वह सब कर सकते हैं जो वेब ऐप करता है: रन शुरू करना, उन पर नज़र रखना, और परिणाम पढ़ना। यह पेज बताता है कि अनुरोधों पर हस्ताक्षर कैसे करें, पूरा संदर्भ कहाँ है, और एक पूरा उदाहरण देता है।

बेस URL

हर अनुरोध यहाँ भेजें:

https://api.skynetml.com

प्रमाणीकरण

API, API टोकन इस्तेमाल करता है।

  1. Skynet में सेटिंग्स खोलें, फिर API टैब खोलें।
  2. टोकन जनरेट करें पर क्लिक करें।
  3. टोकन को तुरंत कॉपी करें। Skynet पूरा टोकन सिर्फ़ एक बार दिखाता है।

हर अनुरोध के Authorization हेडर में टोकन भेजें:

Authorization: Bearer skyd_...
  • टोकन skyd_ से शुरू होते हैं।
  • हर उपयोगकर्ता के पास ज़्यादा से ज़्यादा एक मान्य टोकन होता है। नया टोकन पुराने टोकन को बंद कर देता है।
  • किसी टोकन को बंद करने के लिए टोकन निरस्त करें पर क्लिक करें।

इंटरैक्टिव संदर्भ

पूरा संदर्भ api.skynetml.com/scalar पर है। इसमें हर सार्वजनिक एंडपॉइंट, उसके फ़ील्ड और उसके रिस्पॉन्स की सूची है। आप उस पेज से टेस्ट अनुरोध भेज सकते हैं।

यह संदर्भ https://api.skynetml.com/openapi.public.json पर मौजूद OpenAPI दस्तावेज़ पढ़ता है। अपनी भाषा में क्लाइंट जनरेट करने के लिए उस फ़ाइल का इस्तेमाल करें।

मुख्य एंडपॉइंट

मेथड और पाथयह क्या करता है
GET /modelsउन मॉडलों की सूची देता है जिन्हें आप इस्तेमाल कर सकते हैं।
GET /optimizersकिसी सेटअप के लिए उपयुक्त ऑप्टिमाइज़रों की सूची देता है।
GET /blackbox/enginesनेटिव इंजनों की सूची देता है और बताता है कि हर इंजन उपलब्ध है या नहीं।
POST /optimizeप्रॉम्प्ट, कोड, टेक्स्ट या DSPy प्रोग्राम के लिए रन शुरू करता है।
POST /blackbox/runकिसी GitHub रिपॉज़िटरी पर रन शुरू करता है।
GET /optimizationsआपके रन की सूची देता है।
GET /optimizations/{optimization_id}एक रन लौटाता है: स्थिति, प्रगति, लॉग और परिणाम।
GET /optimizations/{optimization_id}/artifactरन को मिला सबसे अच्छा संस्करण लौटाता है।
POST /optimizations/{optimization_id}/cancelरन को रोकता है।
POST /serve/{optimization_id}सबसे अच्छे संस्करण को किसी नए इनपुट पर चलाता है।
GET /healthबताता है कि सेवा चालू है या नहीं।

रन शुरू करें

POST /optimize वही सेटअप लेता है जो सबमिट विज़ार्ड लेता है। यह उदाहरण एक ऐसे प्रॉम्प्ट को बेहतर बनाता है जो सपोर्ट संदेशों को लेबल में बाँटता है।

curl https://api.skynetml.com/optimize \
  -H "Authorization: Bearer $SKYNET_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: support-labels-001" \
  -d @run.json

महत्वपूर्ण फ़ील्ड:

  • task.artifact.kind का मान prompt, code, text या dspy_program होता है।
  • data.mode का मान pairs (अपेक्षित आउटपुट वाले इनपुट) या single (ठीक एक केस) होता है।
  • optimizer.choice का मान auto या GET /optimizers से मिला कोई एक ऑप्टिमाइज़र नाम होता है।
  • max_cost_cents इस रन की खर्च सीमा है, अमेरिकी सेंट में।
  • is_private डिफ़ॉल्ट रूप से false होता है। रन को निजी रखने के लिए इसे true पर सेट करें।

run_code और metric_code के नियमों के लिए मेट्रिक और स्कोरर पढ़ें।

रिस्पॉन्स

स्थितिअर्थ
201Skynet ने रन को कतार में डाल दिया। बॉडी में optimization_id और status होते हैं।
202सेटअप जाँच अभी चल रही है। Retry-After हेडर में दिए गए सेकंड तक इंतज़ार करें। फिर वही बॉडी उसी Idempotency-Key के साथ दोबारा भेजें।
402आपका बैलेंस बहुत कम है।
409आप किसी कोटा तक पहुँच गए हैं, या सेटअप जाँच पुरानी हो चुकी है।
422अनुरोध या वर्कस्पेस कोड ऑप्टिमाइज़र के अनुरूप नहीं है।

रन पर नज़र रखें

जब तक रन की स्थिति अंतिम न हो जाए, उसे पोल करते रहें:

curl https://api.skynetml.com/optimizations/$RUN_ID \
  -H "Authorization: Bearer $SKYNET_TOKEN"

status फ़ील्ड इनमें से एक होता है:

स्थितिअंतिम
pending, validating, runningनहीं
pausedनहीं
successहाँ
failed, cancelled, stoppedहाँ

हर 10 से 30 सेकंड में पोल करें। एक रन में कुछ मिनट से लेकर कई घंटे तक लग सकते हैं।

API संदर्भ में रन रिस्पॉन्स के हर फ़ील्ड की सूची है।

परिणाम का इस्तेमाल करें

जब स्थिति success हो, तो सबसे अच्छा संस्करण पाएँ:

curl https://api.skynetml.com/optimizations/$RUN_ID/artifact \
  -H "Authorization: Bearer $SKYNET_TOKEN"

सबसे अच्छे संस्करण को किसी नए इनपुट पर चलाने के लिए POST /serve/{optimization_id} भेजें। हर स्कोर का क्या मतलब है, यह जानने के लिए परिणाम पढ़ें।

सीमाएँ

API वही कोटा, रेट सीमाएँ और बिलिंग इस्तेमाल करता है जो वेब ऐप करता है। सीमाएँ और बिलिंग पढ़ें।