PyPI - संस्करण

परिचय

पाइथन के लिए क्लाइंट लाइब्रेरी Sunra की सेवाओं के साथ बातचीत करने के लिए एक उपयोग में आसान इंटरफ़ेस प्रदान करती है।

स्थापना

क्लाइंट को अपने प्रोजेक्ट में एकीकृत करने के लिए, इसे pip का उपयोग करके स्थापित करें:
pip install sunra-client

सुविधाएँ

एंडपॉइंट्स को कॉल करना

Sunra एक कतार प्रणाली के माध्यम से एंडपॉइंट अनुरोधों का प्रबंधन करता है, जिससे विश्वसनीयता और मापनीयता सुनिश्चित होती है। अनुरोध सबमिट करने और परिणाम की प्रतीक्षा करने के लिए subscribe विधि का उपयोग करें। उदाहरण:
import sunra_client

result = sunra_client.subscribe(
    "black-forest-labs/flux-kontext-pro/text-to-image",
    arguments={
        "prompt": 'एक स्टूडियो घिबली-प्रेरित समुद्र तटीय शहर जिसमें रंगीन घर, फहराती हुई लॉन्ड्री, और खिड़कियों पर सो रही बिल्लियाँ हैं।',
        "width": 1024,
        "height": 768,
        "output_format": 'jpeg'
    },
    with_logs=True,
    on_enqueue=print,
    on_queue_update=print,
)
print(result)

कतार प्रबंधन

इन विधियों से अपने अनुरोधों का प्रबंधन करें:
अनुरोध सबमिट करना
एक अनुरोध सबमिट करें और बाद में उपयोग के लिए request_id प्राप्त करें। उदाहरण:
import sunra_client

handler = sunra_client.submit(
    "black-forest-labs/flux-kontext-pro/text-to-image",
    arguments={
      "prompt": 'एक स्टूडियो घिबली-प्रेरित समुद्र तटीय शहर जिसमें रंगीन घर, फहराती हुई लॉन्ड्री, और खिड़कियों पर सो रही बिल्लियाँ हैं।',
      "width": 1024,
      "height": 768,
      "output_format": 'jpeg'
    },
    webhook_url="https://optional.webhook.url/for/results",
)
request_id = handler.request_id
अनुरोध की स्थिति की जाँच करना
अनुरोध की स्थिति प्राप्त करें। उदाहरण:
import sunra_client
status = sunra_client.status(request_id, with_logs=True)
अनुरोध के परिणाम प्राप्त करना
एक पूर्ण अनुरोध का परिणाम प्राप्त करें। उदाहरण:
import sunra_client
result = sunra_client.result(request_id)

फ़ाइल अपलोड

अतुल्यकालिक अनुरोधों में उपयोग के लिए URL प्राप्त करने के लिए फ़ाइलें अपलोड करें। यह उन मॉडलों के लिए आवश्यक है जो फ़ाइलों को संसाधित करते हैं, जैसे कि इमेज-टू-वीडियो या स्पीच-टू-टेक्स्ट कन्वर्टर्स।
अधिकतम फ़ाइल आकार: 100MB
स्थानीय फ़ाइल अपलोड करना
आप अपने स्थानीय फाइल सिस्टम से आसानी से एक फ़ाइल अपलोड कर सकते हैं। यह उन लिपियों या अनुप्रयोगों के लिए उपयोगी है जो स्थानीय डेटा को संसाधित करते हैं।
import sunra_client

# तुल्यकालिक क्लाइंट प्रारंभ करें
client = sunra_client.SyncClient()

try:
  # किसी दिए गए पथ से एक फ़ाइल अपलोड करें
  file_url = client.upload_file(path="path/to/your/image.png")
  print(f"फ़ाइल सफलतापूर्वक अपलोड हो गई: {file_url}")
  # इस URL का उपयोग अब एक मॉडल एंडपॉइंट के साथ किया जा सकता है
except FileNotFoundError:
  print("त्रुटि: निर्दिष्ट पथ पर फ़ाइल नहीं मिली।")
except Exception as e:
  print(f"एक त्रुटि हुई: {e}")
इन-मेमोरी डेटा अपलोड करना
आप मेमोरी में रखे गए डेटा को भी अपलोड कर सकते हैं, जैसे कि PIL (पिलो) के साथ बनाई गई छवि की सामग्री या वेब अनुरोध में प्राप्त फ़ाइल।
import sunra_client
from PIL import Image
import io

# तुल्यकालिक क्लाइंट प्रारंभ करें
client = sunra_client.SyncClient()

# मेमोरी में एक छवि बनाएं, उदाहरण के लिए पिलो के साथ
image = Image.new("RGB", (600, 400), color = 'red')
byte_arr = io.BytesIO()
image.save(byte_arr, format='PNG')
image_bytes = byte_arr.getvalue()

# `upload` विधि का उपयोग करके इन-मेमोरी छवि डेटा अपलोड करें
image_url = client.upload(
    data=image_bytes,
    content_type="image/png"
)
print(f"छवि सफलतापूर्वक अपलोड हो गई: {image_url}")

सहायता

सहायता या चर्चा के लिए हमारे समुदाय में शामिल हों: हम आपकी सहायता के लिए यहां हैं!