Picasso AI API: इमेज और वीडियो API की प्राइसिंग, की और डॉक्स
PicassoIA API का व्यावहारिक परिचय: बेस URL, इमेज और वीडियो के चार मॉडल, प्राइसिंग और प्लान की आवश्यकताएँ आज कैसे काम करती हैं, API टोकन कैसे बनाएँ और सुरक्षित रखें, काम करने वाले cURL, Python और Node अनुरोध, और वे सीमाएँ जो आपके डिज़ाइन को आकार देती हैं।
अगर आपने Picasso AI API खोजा है, तो कोड लिखने से पहले शायद आपको तीन जवाब चाहिए: इसकी लागत क्या है, आप प्रमाणीकरण कैसे करते हैं, और डॉक्स में आप क्या-क्या कॉल कर सकते हैं। छोटा जवाब यह है: PicassoIA https://api.picassoia.com/v1 पर Replicate-शैली का REST API चलाता है, यह pia_sk_ से शुरू होने वाले बेयरर टोकन से प्रमाणीकरण करता है, इमेज और वीडियो के लिए चार मॉडल उपलब्ध कराता है, और इसके डॉक्स बताते हैं कि API प्रेडिक्शन फ़िलहाल मुफ़्त हैं। पकड़ एक प्लान की आवश्यकता है, और कुछ भी बनाने से पहले इसे पढ़ना ज़रूरी है। यह लेख उसी क्रम में चलता है जिस क्रम में आप व्यवहार में चीज़ों से मिलेंगे: प्राइसिंग, क्रेडेंशियल सेटअप, आपका पहला अनुरोध, सीमाएँ, वीडियो, और वह MCP कनेक्टर जो उन्हीं चार मॉडल को साझा करता है।
PicassoIA API क्या देता है
PicassoIA API पेज एक छोटा, केंद्रित दायरा बताता है। आप प्रेडिक्शन बनाने के लिए अनुरोध भेजते हैं, जॉब PicassoIA के अपने GPU पर चलता है, और परिणाम तैयार होने तक आप पोल करते हैं। कोई SDK इंस्टॉल नहीं करना होता, और डॉक्स के कोड नमूने cURL, Python और Node में सादे HTTP का उपयोग करते हैं।
बेस URL और प्रमाणीकरण
हर कॉल एक ही बेस URL पर जाती है और एक ही हेडर लेकर जाती है:
Base URL: https://api.picassoia.com/v1
Header: Authorization: Bearer pia_sk_...
Content-Type: application/json
pia_sk_ प्रीफ़िक्स एक गुप्त टोकन को चिह्नित करता है। इसे पासवर्ड की तरह समझें, क्योंकि जिसके पास यह है, वह आपके प्लान की क्षमता खर्च कर सकता है।
चार मॉडल
वेब कैटलॉग में 250 से अधिक इमेज, वीडियो और चैट मॉडल सूचीबद्ध हैं। API इनमें से चार उपलब्ध कराता है:
सिंक्रोनाइज़्ड ऑडियो के साथ टेक्स्ट या इमेज से वीडियो
एक MP4 URL
💡 जानने लायक बात: API रेफ़रेंस GET /v1/models भी देता है, जो हर मॉडल को उसके इनपुट स्कीमा के साथ लौटाता है। उदाहरणों से पैरामीटर के नाम अंदाज़े से लेने के बजाय इसे एक बार पढ़ लें।
एंडपॉइंट एक नज़र में
मेथड और पाथ
उद्देश्य
POST /v1/models/{owner}/{name}/predictions
प्रेडिक्शन बनाएँ
GET /v1/predictions/{id}
स्टेटस देखें और परिणाम पढ़ें
POST /v1/predictions/{id}/cancel
चल रहा प्रेडिक्शन रद्द करें
GET /v1/predictions
प्रेडिक्शन की सूची, प्रति पेज 50, सबसे नया पहले
GET /v1/models
स्कीमा के साथ मॉडल की सूची
यह API किसके लिए उपयुक्त है
चार मॉडल और पाँच स्लॉट एक खास तरह के प्रोजेक्ट के लिए ठीक बैठते हैं। यह उन कंटेंट पाइपलाइन के लिए अच्छा काम करता है जो प्रोडक्ट नामों की स्प्रेडशीट को बैनर इमेज में बदलती हैं, छोटे ऐप्स के लिए जो "इमेज बनाएँ" बटन जोड़ते हैं, एडिटोरियल टीमों के लिए जिन्हें हेडर तस्वीरों और छोटे वीडियो लूप की लगातार ज़रूरत रहती है, और उन स्क्रिप्ट के लिए जो रात भर चलती हैं जब कोई इंतज़ार नहीं कर रहा होता। यह कम उपयुक्त है जब आपको कोई खास तीसरे पक्ष का मॉडल चाहिए, कोई चैट एंडपॉइंट चाहिए, या सैकड़ों एक साथ उपयोगकर्ता चाहिए, क्योंकि सीमा प्रति अकाउंट है और मॉडल की सूची तय है।
API प्राइसिंग और प्लान की आवश्यकताएँ
मुफ़्त प्रेडिक्शन, लेकिन एक पकड़ के साथ
डॉक्स इसे सीधे शब्दों में कहते हैं: "API प्रेडिक्शन फ़िलहाल मुफ़्त हैं। इनमें कोई क्रेडिट खर्च नहीं होता।" इससे प्रति कॉल होने वाला सामान्य हिसाब हट जाता है। ज़्यादातर होस्टेड इमेज और वीडियो API प्रति कॉल या आउटपुट के प्रति सेकंड के हिसाब से बिल करते हैं, इसलिए लूप में फँसा बग पैसे खर्च करवाता है। यहाँ वही बग आपकी थ्रूपुट की कीमत पर पड़ता है, क्योंकि नीचे बताई गई पाँच प्रेडिक्शन की सीमा लागू होती है।
पकड़ प्लान में है। API रेफ़रेंस के अनुसार प्रेडिक्शन बनाने के लिए Infinite प्लान आवश्यक है। पढ़ना, सूची देखना और रद्द करना इसके बिना काम करते हैं, इसलिए आप अपने टोकन और क्लाइंट कोड को निचले टियर पर परख सकते हैं, लेकिन जो पहली POST जॉब बनाती है, उसके लिए Infinite चाहिए।
प्राइसिंग पेज पढ़ना
प्राइसिंग पेज एक दूसरा संकेत देता है। यह API Access और MCP Connections को भुगतान वाले टियर (Pro+, Elite और Infinite) की सुविधाओं के रूप में सूचीबद्ध करता है, हर एक पर "New" बैज के साथ, लेकिन इस बारे में कुछ नहीं कहता कि API कॉल क्रेडिट इस्तेमाल करते हैं या नहीं। तो आपके पास दो बयान हैं जो पूरी तरह मेल नहीं खाते:
स्रोत
क्या कहता है
API पेज
प्रेडिक्शन मुफ़्त हैं और इनमें क्रेडिट नहीं लगते; इन्हें बनाने के लिए Infinite ज़रूरी है
प्राइसिंग पेज
API Access और MCP Connections तीनों भुगतान वाले टियर पर दिखते हैं; क्रेडिट का कोई विवरण नहीं
💡 व्यावहारिक नियम: प्रेडिक्शन बनाने के मामले में API पेज को अधिकारिक मानें, फिर किसी क्लाइंट से कुछ भी वादा करने से पहले अपने अकाउंट पर पुष्टि करें। प्लान की कीमतें बदलती हैं, इसलिए किसी लेख में लिखी संख्या पर भरोसा करने के बजाय प्राइसिंग पेज पर Infinite की मौजूदा कीमत पढ़ें।
चूँकि डॉक्स में "फ़िलहाल" शब्द है, अपना इंटीग्रेशन ऐसा बनाएँ कि बाद में लागत जोड़ी जा सके: पहले दिन से हर प्रेडिक्शन ID, मॉडल और आउटपुट का आकार लॉग करें। अगर कभी बिलिंग आती है, तो उपयोग का डेटा आपके पास पहले से होगा।
अपना क्रेडेंशियल बनाएँ और सुरक्षित रखें
अपने अकाउंट में टोकन बनाएँ
PicassoIA में साइन इन करें और अपने अकाउंट का API सेक्शन खोलें।
नया टोकन बनाएँ। यह pia_sk_ से शुरू होता है।
इसे तुरंत कॉपी करें। इसे बनाते समय एक बार ही दिखाया जाता है और बाद में वापस नहीं मिल सकता, इसलिए खोया हुआ टोकन होने का मतलब है नया टोकन बनाना।
डायलॉग बंद करने से पहले इसे पासवर्ड मैनेजर या सीक्रेट वॉल्ट में सहेज लें।
हर अकाउंट में अधिकतम 2 टोकन रह सकते हैं। यह सीमा कम लगती है, लेकिन यह एक साफ़ रोटेशन की आदत के अनुकूल है, जिसे आगे समझाया गया है।
इसे अपने कोड से बाहर रखें
टोकन को एनवायरनमेंट वेरिएबल में रखें और रनटाइम पर पढ़ें। नीचे के उदाहरणों में PICASSOIA_API_TOKEN का उपयोग होता है, जो इस लेख के लिए चुना गया नाम है, प्लेटफ़ॉर्म की ओर से आवश्यक नाम नहीं।
केवल सर्वर साइड पर। टोकन को कभी ब्राउज़र JavaScript या मोबाइल ऐप में न भेजें। कोई भी इसे नेटवर्क टैब से पढ़ सकता है।
दूसरे स्लॉट से रोटेट करें। टोकन दो बनाएँ, उसे डिप्लॉय करें, पुष्टि करें कि ट्रैफ़िक चल रहा है, फिर टोकन एक रद्द करें। बीच में कोई रुकावट नहीं आती।
इसे कभी कमिट न करें।.env को अपनी ignore फ़ाइल में जोड़ें, और अगर एक बार चूक हो गई हो तो पुराने कमिट स्कैन करें।
जहाँ संभव हो, हर एनवायरनमेंट के लिए अलग टोकन रखें: प्रोडक्शन एक स्लॉट पर, स्टेजिंग दूसरे पर।
आपका पहला अनुरोध, चरण दर चरण
💡 कुछ भी कॉपी करने से पहले: API Replicate पैटर्न का पालन करता है, इसलिए उदाहरण उन फ़ील्ड नामों का उपयोग करते हैं जो इस पैटर्न से निकलते हैं (id, status, output)। प्रोडक्शन में जोड़ने से पहले आपको मिला पहला रिस्पॉन्स एक बार प्रिंट करें और इन नामों की जाँच करें।
प्रेडिक्शन भेजें
export PICASSOIA_API_TOKEN="pia_sk_your_token_here"
curl -X POST https://api.picassoia.com/v1/models/picassoia/picassoia-image/predictions \
-H "Authorization: Bearer $PICASSOIA_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"input": {"prompt": "a lighthouse at sunset", "aspect_ratio": "16:9"}}'
कॉल तुरंत एक प्रेडिक्शन ऑब्जेक्ट लौटाती है। तस्वीर अभी मौजूद नहीं है: जॉब कतार में लगती है और असिंक्रोनस रूप से चलती है।
हर कुछ सेकंड में दोहराएँ, जब तक स्टेटस succeeded या failed न हो जाए। विफलता अंतिम होती है, इसलिए इंतज़ार करने के बजाय नए प्रेडिक्शन के साथ फिर से सबमिट करें। सफल होने पर आउटपुट में इमेज URL होते हैं। जिन फ़ाइलों की आपको परवाह है, उन्हें परिणाम URL को सीधे लिंक करने के बजाय अपने स्टोरेज में सेव करें।
जब भी प्रेडिक्शन विफल हो, पूरा रिस्पॉन्स बॉडी प्रॉम्प्ट और मॉडल ID के साथ लॉग करें। ज़्यादातर विफलताएँ बहुत लंबे प्रॉम्प्ट, बहुत बड़ी इमेज या गलत बने input ऑब्जेक्ट तक जाती हैं, और सेव किया गया रिस्पॉन्स सेकंडों में बता देता है कि कौन सी समस्या है। अपना खुद का हार्ड टाइमआउट जोड़ें, उदाहरण के लिए इमेज के लिए दो मिनट और वीडियो के लिए दस, फिर cancel एंडपॉइंट को कॉल करें ताकि कोई अटकी जॉब आपके पाँच में से कोई स्लॉट न रोके।
Python और Node संस्करण
import os, time, requests
BASE = "https://api.picassoia.com/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['PICASSOIA_API_TOKEN']}"}
def generate(prompt):
r = requests.post(
f"{BASE}/models/picassoia/picassoia-image/predictions",
json={"input": {"prompt": prompt, "aspect_ratio": "16:9"}},
headers=HEADERS,
timeout=30,
)
r.raise_for_status()
prediction = r.json()
while prediction["status"] not in ("succeeded", "failed", "canceled"):
time.sleep(3)
prediction = requests.get(
f"{BASE}/predictions/{prediction['id']}", headers=HEADERS, timeout=30
).json()
return prediction
यह सीमा प्रति अकाउंट है, प्रति टोकन नहीं। अगर कोई cron जॉब, एक वेब ऐप और एक MCP सेशन एक साथ चलते हैं, तो वे सब एक ही पाँच स्लॉट से लेते हैं। अपने क्लाइंट के सामने एक लिमिटर रखें, जैसे semaphore या पाँच वर्कर का पूल, और बाकी को खुद कतार में लगाएँ।
थ्रूपुट का अनुमान लगाना आसान है। अगर एक इमेज प्रेडिक्शन सबमिट से succeeded तक N सेकंड लेता है, तो पाँच स्लॉट आपको लगभग 5 / N इमेज प्रति सेकंड देते हैं, और 500 इमेज का बैच लगभग 500 × N / 5 सेकंड लेता है। अपनी पहली दस कॉल में N नापें, फिर अनुमान के बजाय उसी संख्या से रात के बैच का आकार तय करें। वीडियो जॉब ज़्यादा समय लेते हैं, इसलिए उन्हें अपनी अलग कतार में चलाएँ और इमेज के लिए एक या दो स्लॉट खाली रखें।
तीन गलतियाँ बार-बार दिखती हैं:
पूरा बैच एक साथ शुरू करना। पचास एक साथ POST कॉल का मतलब है पैंतालीस अस्वीकृत या अटकी हुई कॉल।
MCP सेशन भूल जाना। कनेक्टर के ज़रिए इमेज बनाने वाला कोई टीममेट आपके पाँच में से हिस्सा खा जाता है।
विफलता पर तुरंत दोबारा कोशिश करना। कुछ सेकंड रुकें, ताकि बेकार की दोबारा कोशिशें स्लॉट न भरें।
साइज़ और प्रॉम्प्ट की सीमाएँ
प्रॉम्प्ट 4,000 अक्षरों तक हो सकता है, जो फ़ोटोरियलिस्टिक काम के लिए ज़रूरी लंबे और विस्तृत प्रॉम्प्ट के लिए काफ़ी जगह है। ज़्यादा कसी हुई सीमा इमेज इनपुट की है। हर data URL इमेज 5 MB तक हो सकती है, फिर भी पूरी रिक्वेस्ट बॉडी 10 MB पर रुक जाती है, इसलिए एक एडिटिंग कॉल में सीमा के करीब की चार इमेज फ़िट नहीं होंगी। एन्कोड करने से पहले इमेज को उचित चौड़ाई पर लाएँ और JPEG में कंप्रेस करें।
API के ज़रिए वीडियो
PicassoIA Video की सेटिंग
PicassoIA Video टेक्स्ट या एक इमेज लेता है और एक MP4 लौटाता है। रेफ़रेंस अधिकतम अवधि को रिज़ॉल्यूशन से जोड़ता है:
Resolution
Maximum duration
480p
20 सेकंड
720p
10 सेकंड
1080p
5 सेकंड
जो सबसे कम रिज़ॉल्यूशन ब्रीफ़ को पूरा करे, वही चुनें। 480p ड्राफ़्ट आपको 1080p रेंडर की तुलना में चार गुना लंबाई देता है, जो सोशल लूप और स्टोरीबोर्ड के लिए ठीक है। वीडियो जॉब इमेज जॉब से ज़्यादा समय लेते हैं, इसलिए हर 3 सेकंड के बजाय हर 8 से 10 सेकंड पर पोल करें।
ऑडियो के साथ Seedance 2.5 Lite
Seedance 2.5 Lite क्लिप में सिंक्रोनाइज़्ड ऑडियो जोड़ता है, जिससे एक अलग साउंड स्टेप बच जाता है। API रेफ़रेंस 5, 10 और 15 सेकंड की अवधि सूचीबद्ध करता है, जबकि वेब कैटलॉग 10 सेकंड तक की क्लिप बताता है, इसलिए किसी अनुमत मान को हार्ड-कोड करने से पहले GET /v1/models से स्कीमा पढ़ें। बड़ा Seedance 2.5 ब्राउज़र कैटलॉग में ही रहता है और API का हिस्सा नहीं है।
MCP और चैट मॉडल API के साथ
MCP कनेक्टर AI असिस्टेंट को बिना किसी HTTP कोड के वही चार मॉडल देता है। claude.ai कनेक्टर इमेज जनरेट करने, इमेज संपादित करने, दोनों वीडियो मॉडल में से किसी एक से वीडियो बनाने और जॉब मैनेज करने के लिए टूल देता है: generate_image, edit_image, generate_video_picassoia, generate_video_seedance, get_generation, list_generations, list_models, get_account और cancel_generation।
इसका फ़्लो REST फ़्लो जैसा है। जनरेट टूल, जैसे ही कोई GPU जॉब स्वीकार करता है, एक प्रेडिक्शन ID और अनुमानित समय लौटाता है। फिर आप सुझाए गए अंतराल के बाद get_generation कॉल करते हैं, और हर बार लौटाए गए अंतराल के बाद फिर से, जब तक स्टेटस succeeded या failed न हो जाए। cancel_generation उस जॉब को रोकता है जो अभी रेंडर होना शुरू नहीं हुई है। समवर्तिता (concurrency) वही साझा पाँच की है।
चैट मॉडल अलग मामला है। चार API मॉडल में से कोई टेक्स्ट नहीं लिखता, इसलिए लार्ज लैंग्वेज मॉडल ब्राउज़र में रहते हैं: लंबे ड्राफ़्ट के लिए Claude Sonnet 5, कठिन कोडिंग समस्याओं के लिए GPT 5.6 Sol और जब गति मायने रखती है तब Gemini 3.5 Flash। एक अच्छा वर्कफ़्लो यह है कि इनमें से किसी एक के साथ प्रॉम्प्ट का ड्राफ़्ट बनाएँ और परिष्कृत करें, फिर नतीजा अपनी API कॉल में पेस्ट करें। GPT Image 2, Flux 2 Pro, Veo 3.1 और Kling v3 Video जैसे मॉडल भी केवल ब्राउज़र कैटलॉग में हैं।
PicassoIA पर PicassoIA Image कैसे उपयोग करें
स्क्रिप्ट लिखने से पहले हर प्रॉम्प्ट ब्राउज़र में परखें। वहाँ खराब प्रॉम्प्ट की कोई कीमत नहीं चुकानी पड़ती, और वही विचार सीधे API कॉल में चले जाते हैं।
प्रॉम्प्ट इस क्रम में लिखें: सब्जेक्ट और क्रिया, सेटिंग, लाइट, कैमरा और लेंस, टेक्सचर के विवरण।
आस्पेक्ट रेशियो चुनें। 16:9 बैनर और ब्लॉग हेडर के लिए ठीक है, 1:1 प्रोडक्ट टाइल के लिए। API वही aspect_ratio फ़ील्ड लेता है।
इमेज की संख्या 1 या 2 रखें, जो API की सीमा से मेल खाती है।
जनरेट करें, फिर परिणाम को पूरे आकार में देखें, हाथों, किनारों और किसी भटके हुए टेक्स्ट पर ध्यान दें।
किसी एक डिटेल को ठीक करने या उसे अधिकतम तीन और तस्वीरों के साथ मिलाने के लिए सबसे अच्छी इमेज PicassoIA Image Editor Pro को भेजें।
Prompt part
Example
सब्जेक्ट
पत्थर के ओवन से ब्रेड निकालता एक बेकर
Setting
भोर में एक संकरी गाँव की बेकरी
Light
बाईं ओर से आती गर्म खिड़की की रोशनी
Lens
50mm f/1.8, शैलो डेप्थ ऑफ़ फ़ील्ड
Texture
आटे की धूल, चटकी हुई पपड़ी, लिनन का एप्रन
खुद आज़माने के लिए तैयार हैं? PicassoIA Image खोलें, वह प्रॉम्प्ट लिखें जो आप अपनी पहली API कॉल में भेजते, और उसे रेंडर होते देखें। जब नतीजा सही लगे, तो वही प्रॉम्प्ट ऊपर के cURL उदाहरण में कॉपी करें और बाकी काम अपने कोड को करने दें। अगर प्लेटफ़ॉर्म जो कुछ और कर सकता है, वह सब देखना चाहते हैं, तो पूरा मॉडल कैटलॉग बस एक क्लिक दूर है।