AI अनुप्रयोगों में आम तौर पर कुछ सेकंड से अधिक समय लेने वाले अनुरोधों के लिए, हमने एक कतार प्रणाली विकसित की है। यह प्रणाली आपको ट्रैफिक उछाल को प्रबंधित करने, जरूरत पड़ने पर अनुरोध रद्द करने और कतार में अपने अनुरोध की स्थिति की निगरानी करने के लिए सूक्ष्म नियंत्रण प्रदान करती है। यह लंबे समय तक चलने वाले HTTP अनुरोधों को संभालने की आवश्यकता को भी समाप्त करता है।

कतार समापन बिंदु

आप निम्नलिखित समापन बिंदुओं के माध्यम से सभी कतार सुविधाओं तक पहुंच सकते हैं:
समापन बिंदुविधिविवरण
api.sunra.ai/v1/queue/{model-id}पोस्टकतार में एक अनुरोध जोड़ता है
api.sunra.ai/v1/queue/requests/{request_id}/statusपानाएक अनुरोध की स्थिति प्राप्त करता है
api.sunra.ai/v1/queue/requests/{request_id}/status/streamपानापूरा होने तक स्थिति को स्ट्रीम करता है
api.sunra.ai/v1/queue/requests/{request_id}पानाएक अनुरोध की प्रतिक्रिया प्राप्त करता है
api.sunra.ai/v1/queue/requests/{request_id}/cancelडालनाएक अनुरोध रद्द करता है
उदाहरण के लिए, कर्ल का उपयोग करके एक अनुरोध सबमिट करने और उसे कतार में जोड़ने के लिए:
curl -X POST \
  https://api.sunra.ai/v1/queue/black-forest-labs/flux-1.1-pro/text-to-image \
  -H "Authorization: Key $SUNRA_KEY" \
  -d '{"prompt": "रंगीन घरों, फहराती लॉन्ड्री और खिड़कियों पर सो रही बिल्लियों वाला एक स्टूडियो घिबली-प्रेरित समुद्र तटीय शहर।"}'
यहां request_id सहित एक नमूना प्रतिक्रिया है:
{
  "request_id": "pd_vXW7VwPN2MbTwT8bzpWrYU5Y",
  "response_url": "https://api.sunra.ai/v1/queue/requests/pd_vXW7VwPN2MbTwT8bzpWrYU5Y",
  "status_url": "https://api.sunra.ai/v1/queue/requests/pd_vXW7VwPN2MbTwT8bzpWrYU5Y/status",
  "cancel_url": "https://api.sunra.ai/v1/queue/requests/pd_vXW7VwPN2MbTwT8bzpWrYU5Y/cancel"
}
पेलोड में request_id शामिल है और स्थिति की जाँच, रद्द करने या प्रतिक्रिया प्राप्त करने के लिए URL प्रदान करता है, जिससे अतिरिक्त समापन बिंदु विकास के बिना आपके वर्कफ़्लो को सुव्यवस्थित किया जा सके।

अनुरोध की स्थिति

अपने अनुरोध की प्रगति की निगरानी के लिए, अपने अद्वितीय अनुरोध आईडी के साथ प्रदान किए गए समापन बिंदु का उपयोग करें। यह आपको स्थिति, कतार की स्थिति को ट्रैक करने या प्रतिक्रिया तैयार होने पर उसे प्राप्त करने की अनुमति देता है।

समापन बिंदु उपयोग

curl -X GET https://api.sunra.ai/v1/queue/requests/{request_id}/status

उदाहरण प्रतिक्रिया

जब आपका अनुरोध कतार में होता है, तो आपको इस तरह की प्रतिक्रिया मिलेगी:
{
  "status": "IN_QUEUE",
  "metrics": {},
  "queue_position": 0,
  "response_url": "https://api.sunra.ai/v1/queue/requests/pd_hvTNHJPSZj4KgtzytfTGsySf",
  "status_url": "https://api.sunra.ai/v1/queue/requests/pd_hvTNHJPSZj4KgtzytfTGsySf/status",
  "cancel_url": "https://api.sunra.ai/v1/queue/requests/pd_hvTNHJPSZj4KgtzytfTGsySf/cancel"
}

संभावित स्थितियाँ

आपका अनुरोध तीन में से एक स्थिति में हो सकता है:
  • IN_QUEUE: इंगित करता है कि अनुरोध संसाधित होने की प्रतीक्षा कर रहा है।
    • queue_position: कतार में आपका स्थान दिखाता है।
    • response_url: प्रसंस्करण पूरा होने पर प्रतिक्रिया प्राप्त करने के लिए URL।
  • IN_PROGRESS: अनुरोध वर्तमान में संसाधित किया जा रहा है।
    • logs: प्रसंस्करण चरणों को दर्शाने वाले विस्तृत लॉग (यदि सक्षम हो)।
    • response_url: जहां अंतिम प्रतिक्रिया उपलब्ध होगी।
  • COMPLETED: प्रसंस्करण समाप्त हो गया है।
    • logs: पूरी प्रक्रिया का विवरण देने वाले लॉग।
    • response_url: आपकी पूरी की गई प्रतिक्रिया का सीधा लिंक।

लॉग सक्षम करना

लॉग अनुरोध प्रसंस्करण में अंतर्दृष्टि प्रदान करते हैं। वे डिफ़ॉल्ट रूप से अक्षम होते हैं लेकिन एक क्वेरी पैरामीटर के साथ सक्षम किए जा सकते हैं:
curl -X GET https://api.sunra.ai/v1/queue/requests/{request_id}/status?logs=1
प्रत्येक लॉग प्रविष्टि में शामिल हैं:
  • message: घटना का विवरण।
  • level: गंभीरता (जैसे, INFO, ERROR)।
  • source: लॉग की उत्पत्ति।
  • timestamp: लॉग उत्पन्न होने का समय।

रीयल-टाइम निगरानी

निरंतर अपडेट के लिए, स्ट्रीमिंग एंडपॉइंट का उपयोग करें:
curl -X GET https://api.sunra.ai/v1/queue/requests/{request_id}/status/stream
यह अनुरोध पूरा होने तक text/event-stream प्रारूप में रीयल-टाइम स्थिति अपडेट प्रदान करता है।

अनुरोध रद्द करना

यदि आपका अनुरोध अभी भी कतार में है, तो आप इसे रद्द कर सकते हैं:
curl -X PUT https://api.sunra.ai/v1/queue/requests/{request_id}/cancel

प्रतिक्रियाएं प्राप्त करना

एक बार जब आपका अनुरोध COMPLETED हो जाए, तो प्रतिक्रिया प्राप्त करें:
curl -X GET https://api.sunra.ai/v1/queue/requests/{request_id}
यह समापन बिंदु समीक्षा के लिए लॉग भी प्रदान करता है।

Sunra क्लाइंट के साथ सरलीकृत एकीकरण

Sunra क्लाइंट स्थिति ट्रैकिंग को स्वचालित करता है, जिससे Sunra कार्यों के साथ ऐप विकास सरल हो जाता है।

दर सीमाएं

उचित उपयोग और सिस्टम स्थिरता सुनिश्चित करने के लिए, हमारे API समापन बिंदु निम्नलिखित दर सीमाओं के अधीन हैं:
समापन बिंदु प्रकारदर सीमाबर्स्ट सीमा
कतार में सबमिट करें10 अनुरोध/सेकंड100 अनुरोध/मिनट
अन्य सभी समापन बिंदु100 अनुरोध/सेकंड1,800 अनुरोध/मिनट
यदि आप इन सीमाओं को पार करते हैं, तो आपको 403 निषिद्ध प्रतिक्रिया प्राप्त होगी। हम इन मामलों को संभालने के लिए घातीय बैकऑफ़ के साथ एक पुनर्प्रयास तंत्र को लागू करने की सलाह देते हैं।