> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sunra.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# पाइथन

[![PyPI - संस्करण](https://img.shields.io/pypi/v/sunra_client)](https://pypi.org/project/sunra_client)

### परिचय

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

### स्थापना

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

```bash theme={null}
pip install sunra-client
```

### सुविधाएँ

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

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

**उदाहरण:**

```python theme={null}
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` प्राप्त करें।

**उदाहरण:**

```python theme={null}
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
```

##### अनुरोध की स्थिति की जाँच करना

अनुरोध की स्थिति प्राप्त करें।

**उदाहरण:**

```python theme={null}
import sunra_client
status = sunra_client.status(request_id, with_logs=True)
```

##### अनुरोध के परिणाम प्राप्त करना

एक पूर्ण अनुरोध का परिणाम प्राप्त करें।

**उदाहरण:**

```python theme={null}
import sunra_client
result = sunra_client.result(request_id)
```

#### फ़ाइल अपलोड

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

<Note>अधिकतम फ़ाइल आकार: 100MB</Note>

##### स्थानीय फ़ाइल अपलोड करना

आप अपने स्थानीय फाइल सिस्टम से आसानी से एक फ़ाइल अपलोड कर सकते हैं। यह उन लिपियों या अनुप्रयोगों के लिए उपयोगी है जो स्थानीय डेटा को संसाधित करते हैं।

```python theme={null}
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 (पिलो) के साथ बनाई गई छवि की सामग्री या वेब अनुरोध में प्राप्त फ़ाइल।

<CodeGroup>
  ```python PIL छवि theme={null}
  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}")
  ```

  ```python रॉ बाइट्स theme={null}
  import sunra_client

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

  # कुछ कच्चे बाइट्स जो आपको फ़ाइल पढ़ने या वेब अनुरोध से मिल सकते हैं
  raw_data = b"some file content here"

  # कच्चे बाइट्स अपलोड करें
  data_url = client.upload(
      data=raw_data,
      content_type="application/octet-stream"
  )
  print(f"डेटा सफलतापूर्वक अपलोड हो गया: {data_url}")
  ```
</CodeGroup>

### सहायता

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

* **डिस्कॉर्ड समुदाय**: [हमसे जुड़ें](https://discord.gg/897qCzvCcU)
* **गिटहब रिपोजिटरी**: [यहां जाएं](https://github.com/sunra-ai/sunra-clients)

हम आपकी सहायता के लिए यहां हैं!
