AI headshot generator API पर एक काम करने वाला हेडशॉट ऐप बनाएँ। इस लेख में रिक्वेस्ट फ़्लो, काम के मॉडल, बैकग्राउंड के विकल्प, Python कोड, क्वालिटी चेक और वे कंसेंट नियम दिए गए हैं जो ग्राहकों की फ़ोटो सुरक्षित रखते हैं।
सेल्फ़ी अपलोड करें, और बोर्डरूम के लायक पोर्ट्रेट वापस पाएँ। हर AI headshot generator API इसी वादे पर टिका है, और इसे बनाना ज़्यादातर डेवलपर्स की उम्मीद से कहीं आसान है। आपको कोई फ़ेस मॉडल ट्रेन नहीं करना, GPU किराए पर नहीं लेना, और हर ग्राहक के लिए फ़ोटोग्राफ़र बुक नहीं करना। आपका ऐप एक HTTP endpoint को एक फ़ोटो और एक निर्देश भेजता है, कुछ सेकंड इंतज़ार करता है, और LinkedIn प्रोफ़ाइल, टीम पेज या प्रेस किट के लिए तैयार इमेज पा लेता है।
यह लेख पूरी बिल्ड प्रक्रिया को क्रम से समझाता है: रिक्वेस्ट फ़्लो, इस्तेमाल करने लायक मॉडल, काम करने वाला Python कोड, वे क्वालिटी चेक जो कमज़ोर पोर्ट्रेट को ग्राहकों तक पहुँचने से रोकते हैं, और सहमति के वे नियम जो प्रोडक्ट को सुरक्षित रखते हैं। नीचे दी गई हर बात PicassoIA developer API और प्लेटफ़ॉर्म पर सूचीबद्ध मॉडल पर आधारित है।
💡 छोटे में: सेल्फ़ी को अपने स्टोरेज पर होस्ट करें, उसी सेल्फ़ी को image 1 के रूप में देकर picassoia/picassoia-image-editor-pro को कॉल करें, प्रेडिक्शन के सफल होने तक पोल करें, एक तेज़ जाँच चलाएँ, और फिर नतीजा दिखाएँ।
API पर क्यों बनाएँ
स्टूडियो हेडशॉट में असली पैसा और असली समय लगता है। फ़ोटोग्राफ़र एक स्लॉट बुक करता है, रीटचर कई दिन काम करता है, और चालीस लोगों की रिमोट टीम को चालीस अपॉइंटमेंट चाहिए। हेडशॉट ऐप यह सब एक अपलोड फ़ॉर्म और एक बटन में बदल देता है। इसे डेमो से आगे बिज़नेस बनाने वाली चीज़ है कंट्रोल: आपका अपना इंटरफ़ेस, आपके अपने बैकग्राउंड, आपकी अपनी कीमत और आपके अपने डेटा नियम।
इसकी ज़रूरत किसे है
इसकी माँग लोगों के अनुमान से कहीं ज़्यादा है। ये वे प्रोडक्ट हैं जो लगातार हेडशॉट फ़ीचर माँगते रहते हैं:
HR और ऑनबोर्डिंग टूल जिन्हें हर नए कर्मचारी के लिए एक जैसी फ़ोटो स्टाइल चाहिए
रिज़्यूमे बिल्डर और जॉब बोर्ड जहाँ प्रोफ़ाइल फ़ोटो से पेज का लुक बदल जाता है
क्रिएटर और फ़्रीलांसर प्लेटफ़ॉर्म जो साइन अप पर एक साफ़-सुथरा अवतार चाहते हैं
एजेंसियाँ जो कॉर्पोरेट क्लाइंट्स को पोर्ट्रेट पैक देती हैं
इवेंट सॉफ़्टवेयर जो हर तरह की रोशनी में स्पीकर्स की फ़ोटो इकट्ठा करता है
बनाएँ या खरीदें
विकल्प
सेटअप का समय
कंट्रोल
सबसे अच्छा किसके लिए
तैयार हेडशॉट वेबसाइट
मिनट
कम
एक निजी फ़ोटो
फ़ॉर्म के ऊपर नो-कोड रैपर
घंटे
मध्यम
आंतरिक टूल और त्वरित टेस्ट
API पर अपना ऐप
कुछ दिन
डिज़ाइन, कीमत और डेटा पर पूरा कंट्रोल
प्रोडक्ट और प्लेटफ़ॉर्म
अगर आपको सिर्फ़ अपनी फ़ोटो चाहिए, तो वेबसाइट इस्तेमाल करें। अगर हेडशॉट आपके बेचे जाने वाले किसी प्रोडक्ट का फ़ीचर है, तो लॉन्च के बाद हर ज़रूरी पैमाने पर API आगे रहता है।
अर्थशास्त्र भी यही बताता है। फ़ोटोग्राफ़र हर व्यक्ति के हिसाब से शुल्क लेता है, इसलिए हर नए ग्राहक के साथ लागत बढ़ती है। API कॉल एक सॉफ़्टवेयर है: जो काम पहले हेडशॉट में लगता है, वही दसवें हज़ारवें में भी काम आता है, और इस्तेमाल बढ़ने के साथ आपका मार्जिन घटने की बजाय सुधरता है।
पाँच चरणों में रिक्वेस्ट फ़्लो
हर हेडशॉट ऐप, उसका इंटरफ़ेस चाहे जितना भी पॉलिश्ड हो, एक ही लूप पर चलता है। PicassoIA API असिंक्रोनस है और Replicate जैसी शैली में काम करता है: आप एक प्रेडिक्शन बनाते हैं, उसे पोल करते हैं, फिर नतीजा पढ़ते हैं।
आपके फ़्रंटएंड में सेल्फ़ी इकट्ठा करें।
उसे जाँचें और स्टोर करें ताकि आपके पास एक URL हो जिसे API फ़ेच कर सके।
मॉडल endpoint पर POST भेजकर प्रेडिक्शन बनाएँ।
स्टेटस अंतिम होने तक प्रेडिक्शन को पोल करें।
आउटपुट URL की जाँच करें और डिलीवर करें।
बेस URL https://api.picassoia.com/v1 है, और हर रिक्वेस्ट के साथ एक Authorization: Bearer pia_sk_... हेडर जाता है। ये सीक्रेट picassoia.com के API पेज से बनाएँ। एक अकाउंट के पास दो सीक्रेट हो सकते हैं, इसलिए एक प्रोडक्शन के लिए और दूसरा स्टेजिंग के लिए रखा जा सकता है।
अपलोड और सत्यापन
खराब इनपुट को शुरू में ही रोकें। JPEG, PNG और WebP स्वीकार करें, फ़ाइल को 10 MB के रिक्वेस्ट बॉडी लिमिट से काफ़ी नीचे रखें, और न्यूनतम रिज़ॉल्यूशन तय करें ताकि चेहरे डाक टिकट से भी छोटे न हों। फिर उसी स्क्रीन पर यूज़र को समझाएँ: खिड़की की तरफ़ मुँह करें, फ़ोन आँखों की ऊँचाई पर रखें, फ़्रेम में सिर्फ़ एक व्यक्ति हो, और धूप का चश्मा न पहनें।
अपलोड स्क्रीन पर दस सेकंड का संकेत किसी भी मॉडल सेटिंग से ज़्यादा सपोर्ट टिकट बचाता है। अँधेरे गलियारे में ली गई धुंधली सेल्फ़ी हर बार धुंधला हेडशॉट ही देती है।
प्रेडिक्शन बनाना
मॉडल endpoints एक ही पैटर्न पर चलते हैं: POST /v1/models/{owner}/{name}/predictions। बॉडी में हर पैरामीटर एक input ऑब्जेक्ट के अंदर लिपटा होता है। हेडशॉट के लिए इनपुट में सेल्फ़ी का URL और एक टेक्स्ट निर्देश होता है। आपको तुरंत एक प्रेडिक्शन ऑब्जेक्ट मिलता है जिसमें id और status होते हैं, जबकि इमेज बनने में अभी काफ़ी देर होती है।
पोल करें, फिर स्टोर करें
हर दो-तीन सेकंड में GET /v1/predictions/{id} कॉल करें, जब तक स्टेटस succeeded, failed या canceled न हो जाए। अगर ग्राहक टैब बंद कर दे, तो POST /v1/predictions/{id}/cancel जॉब रोक देता है। सफल होने पर आउटपुट डाउनलोड करें और अपने स्टोरेज में कॉपी करें, ताकि आपका प्रोडक्ट कभी किसी तीसरे पक्ष के URL पर निर्भर न रहे।
💡 सर्वर की तरफ़ से एक प्रेडिक्शन 3 घंटे तक चल सकता है। आपके इंटरफ़ेस को इससे बहुत पहले हार मान लेनी चाहिए। एडिट आमतौर पर सेकंडों में पूरे हो जाते हैं, इसलिए 90 सेकंड का क्लाइंट टाइमआउट और साफ़ दिखने वाला रिट्राई बटन काफ़ी है।
ऐसे मॉडल चुनें जो फ़िट बैठें
API और MCP कनेक्टर फ़िलहाल चार मॉडल उपलब्ध कराते हैं। हेडशॉट के लिए इनमें से दो ज़्यादा काम के हैं, और बाकी प्लेटफ़ॉर्म आपके ब्राउज़र में प्रोटोटाइप बनाते समय मदद करता है।
प्रिंट साइज़ के पोर्ट्रेट के लिए रिज़ॉल्यूशन बढ़ाता है
वेब
आखिरी तीन वेब ऐप में मौजूद हैं। कोड में जोड़ने से पहले API डॉक्यूमेंटेशन जाँच लें, क्योंकि सार्वजनिक API फ़िलहाल चार मॉडल ही सूचीबद्ध करता है।
बैकग्राउंड का फ़ैसला अलग से होना चाहिए, क्योंकि वह बदल देता है कि प्रोफ़ाइल सर्कल में पोर्ट्रेट कैसा दिखता है। एक सरल मैपिंग आपके यूज़र्स को समझदार डिफ़ॉल्ट देती है:
उपयोग
बैकड्रॉप
यह क्यों काम करता है
LinkedIn और नौकरी के आवेदन
न्यूट्रल ग्रे
शांत लगता है, थंबनेल साइज़ पर भी साफ़ दिखता है
कंपनी डायरेक्टरी
सफ़ेद
पूरी टीम में एक जैसा रहता है
पोर्टफ़ोलियो और क्रिएटिव काम
चारकोल
ध्यान भटकाए बिना गहराई जोड़ता है
सेल्स और रियल एस्टेट
धुंधला ऑफ़िस
अपनापन और स्थानीय एहसास देता है
एडिटर या टेक्स्ट-टू-इमेज
ग्राहक चाहता है कि वह खुद जैसा ही दिखे, बस बेहतर रोशनी और बेहतर कपड़ों में। टेक्स्ट-टू-इमेज एक नया इंसान गढ़ देता है, जो गलत प्रोडक्ट है। एडिटिंग मॉडल सेल्फ़ी का चेहरा रखता है और उसके आसपास सब कुछ बदलता है, इसलिए PicassoIA Image Editor Pro मुख्य काम करने वाला मॉडल है। अपनी मार्केटिंग की ज़रूरत की इमेज के लिए PicassoIA Image इस्तेमाल करें: लैंडिंग पेज के सैंपल, टेस्ट फ़िक्स्चर और खाली ऑफ़िस बैकग्राउंड।
एडिट के बाद की सफ़ाई
दो छोटे कदम नतीजे को और बेहतर बनाते हैं। Bria Remove Background ग्राहकों को एक पारदर्शी कटआउट देता है जिसे वे अपने कंपनी के रंग पर रख सकते हैं। Topaz Image Upscale वेब साइज़ के पोर्ट्रेट को प्रिंट रिज़ॉल्यूशन की ओर ले जाता है। इन्हें मुख्य नतीजा सही दिखने के बाद वैकल्पिक एक्स्ट्रा के रूप में दें।
सेल्फ़ी को पहले रेफ़रेंस इमेज के रूप में अपलोड करें। मॉडल तीन तक स्वीकार करता है, और पहली मुख्य होती है।
निर्देश लिखें और सेल्फ़ी का ज़िक्र image 1 के रूप में करें।
आस्पेक्ट रेशियो, आउटपुट फ़ॉर्मेट और क्वालिटी चुनें।
जेनरेट करें, अगर आपने दो वेरिएशन माँगे थे तो दोनों की तुलना करें, और सबसे अच्छा डाउनलोड करें।
बिना प्रॉम्प्ट लिखे काम चाहिए? Professional Headshot एक फ़ोटो और एक बैकग्राउंड विकल्प लेता है: सफ़ेद, काला, न्यूट्रल, ग्रे या ऑफ़िस। इसमें 14 आस्पेक्ट रेशियो प्रीसेट, बेहतर चेहरे की सटीकता के लिए जेंडर सेटिंग, दोहराए जा सकने वाले नतीजों के लिए सीड, और PNG या JPG आउटपुट भी है। अपना बैकग्राउंड सेलेक्टर बनाने से पहले हर बैकग्राउंड कैसा दिखता है, यह देखने का यह सबसे तेज़ तरीका है।
ज़रूरी सेटिंग्स
पैरामीटर
यह क्या करता है
समझदार डिफ़ॉल्ट
images
3 तक रेफ़रेंस, पहला मुख्य होता है
पहले सेल्फ़ी
prompt
एडिट, जो image 1, image 2 का ज़िक्र करता है
4,000 अक्षरों से कम
aspect_ratio
आउटपुट का आकार
match_input_image
output_format
WebP, JPG या PNG
डिलीवरी के लिए PNG
output_quality
0 से 100, सिर्फ़ JPG और WebP के लिए
95
num_outputs
हर कॉल में 1 या 2 वेरिएशन
रिट्राई बटन के लिए 2
seed
नतीजे को हू-ब-हू दोहराता है
जॉब के साथ स्टोर करें
एक काम करने वाला प्रॉम्प्ट
पहले पहचान रखें, फिर सीन। कपड़े, बैकग्राउंड और रोशनी का नाम लें, ताकि मॉडल के पास अंदाज़ा लगाने को कुछ न बचे:
Turn image 1 into a professional corporate headshot of the same person.
Keep the face, skin tone, hair and expression natural and unchanged.
Dark navy blazer over a white shirt, seamless soft grey studio backdrop,
soft main light from the left, gentle fill from the right, 85mm portrait
lens look, natural skin texture with visible pores, sharp eyes.
"मुझे बेहतरीन दिखाओ" जैसे अस्पष्ट अनुरोध छोड़ दें। ये स्किन को स्मूद करने को बढ़ावा देते हैं, और स्मूद की गई त्वचा सबसे तेज़ी से प्लास्टिक जैसा, साफ़ तौर पर नकली नतीजा बनाती है।
Python में काम करने वाला कोड
नीचे के स्निपेट ऊपर बताए गए Replicate जैसे ढाँचे पर चलते हैं। picassoia.com/en/api पर आधिकारिक डॉक्स में Python, Node और cURL के उदाहरण हैं, इसलिए शिप करने से पहले वहाँ फ़ील्ड नाम की पुष्टि कर लें।
मुख्य फ़ंक्शन
import os
import time
import requests
BASE = "https://api.picassoia.com/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['PICASSOIA_TOKEN']}"}
MODEL = "picassoia/picassoia-image-editor-pro"
def make_headshot(selfie_url: str, backdrop: str = "soft grey studio backdrop") -> str:
prompt = (
"Turn image 1 into a professional corporate headshot of the same person. "
"Keep the face, skin tone and hair natural and unchanged. "
f"Dark navy blazer, {backdrop}, soft main light from the left, "
"85mm portrait lens look, natural skin texture."
)
created = requests.post(
f"{BASE}/models/{MODEL}/predictions",
headers=HEADERS,
json={"input": {
"images": [selfie_url],
"prompt": prompt,
"output_format": "png",
}},
timeout=30,
)
created.raise_for_status()
prediction = created.json()
deadline = time.time() + 90
while prediction["status"] not in ("succeeded", "failed", "canceled"):
if time.time() > deadline:
requests.post(f"{BASE}/predictions/{prediction['id']}/cancel", headers=HEADERS, timeout=30)
raise TimeoutError("Headshot took too long")
time.sleep(3)
prediction = requests.get(
f"{BASE}/predictions/{prediction['id']}", headers=HEADERS, timeout=30
).json()
if prediction["status"] != "succeeded":
raise RuntimeError(prediction.get("error") or prediction["status"])
return prediction["output"][0]
टोकन एक एनवायरनमेंट वेरिएबल से आना चाहिए, फ़्रंटएंड से कभी नहीं। अगर यह किसी मोबाइल बंडल या ब्राउज़र स्क्रिप्ट में गया, तो कोई भी उसे पढ़ सकता है।
पाँच जॉब की सीमा का पालन करें
एक अकाउंट एक साथ 5 प्रेडिक्शन चलाता है, और यह हर क्रेडेंशियल और हर MCP कनेक्शन में साझा होता है। लॉन्च के दिन की भीड़ इस सीमा से टकराएगी, इसलिए जॉब अपनी तरफ़ से कतार में रखें:
import asyncio
slots = asyncio.Semaphore(4) # leave one slot for retries
async def run_job(selfie_url: str) -> str:
async with slots:
return await asyncio.to_thread(make_headshot, selfie_url)
हर जॉब को उसके स्टेटस के साथ एक टेबल में सेव करें, फिर ग्राहकों को उनकी लाइन में जगह दिखाएँ। दिखती हुई कतार तेज़ लगती है। जमा हुआ स्पिनर टूटा हुआ लगता है।
डिलीवरी से पहले क्वालिटी चेक
जो हेडशॉट 95 प्रतिशत सही दिखता है, वह भी रिफ़ंड की रिक्वेस्ट ही है। लोग चेहरों की गड़बड़ी लगभग अलौकिक संवेदनशीलता से पकड़ लेते हैं, इसलिए हर आउटपुट को ग्राहक तक पहुँचने से पहले जाँचें।
समानता और त्वचा
लॉन्च से पहले पचास सेल्फ़ी के टेस्ट सेट पर इस सूची से गुज़रें:
चेहरे का आकार और आँखों का रंग सेल्फ़ी से मेल खाते हैं
त्वचा के रोम-छिद्र, बारीक लकीरें और रंग बरकरार हैं, मोम जैसा धुंधलापन नहीं है
बालों के किनारे साफ़ हैं, बैकग्राउंड के सामने कोई हैलो नहीं है
दाँत, कान और चश्मे की संख्या और समरूपता सही है
गहने और कॉलर गर्दन में पिघले हुए नहीं दिखते
बैकग्राउंड प्रोफ़ाइल फ़ोटो के थंबनेल के लिए काफ़ी सादा है
नतीजे को थंबनेल साइज़ और पूरे साइज़ दोनों पर देखें। कई खामियाँ इन दोनों में से सिर्फ़ एक पर दिखती हैं।
टेस्ट सेट जान-बूझकर बनाएँ। इसमें कम रोशनी वाले कमरे, चश्मे, दाढ़ी, लंबे बाल, टोपी और थोड़ा नीचे से ली गई फ़ोटो शामिल करें। हर रन का सीड और प्रॉम्प्ट लॉग करें, ताकि जब कोई ग्राहक अजीब पोर्ट्रेट की शिकायत करे, तो आप एक मिनट में उसे दोहराकर अंदाज़े के बजाय निर्देश ठीक कर सकें।
स्वचालित जाँच
लार्ज लैंग्वेज मॉडल दो जगह मदद करते हैं। पहला, वे फ़ॉर्म के विकल्पों (बैकग्राउंड, पोशाक, मूड) को अंतिम निर्देश में बदल सकते हैं, ताकि प्रोडक्ट वाले लोग डिप्लॉय किए बिना वर्डिंग बदल सकें। Gemini 3.5 Flash इस काम के लिए एक तेज़ विकल्प है, और लंबे नियम-पुस्तिकाओं के लिए Claude Sonnet 5 ठीक है। दूसरा, Llama Guard 4 12B उन फ़्री टेक्स्ट को जाँच सकता है जो यूज़र कस्टम निर्देश फ़ील्ड में लिखते हैं।
सार्वजनिक API चार मॉडल सूचीबद्ध करता है, इसलिए इन चरणों के लिए अपने LLM प्रोवाइडर को कॉल करें, या पहले PicassoIA वेब ऐप में प्रॉम्प्ट टेस्ट करें।
इंसानी बैकअप भी रखें। हर नतीजे के साथ एक Try again बटन दें, जो उसी सेल्फ़ी को नए सीड के साथ चलाए, और एक Report लिंक दें, जिससे ग्राहक खराब पोर्ट्रेट को फ़्लैग कर सके।
सहमति और प्राइवेसी के नियम
चेहरा एक निजी डेटा है। पहले दिन से इसी तरह व्यवहार करें, क्योंकि जो हेडशॉट ऐप फ़ोटो को गलत तरीके से संभालता है, उसे दूसरा मौका नहीं मिलता।
सहमति और स्टोरेज
यूज़र्स से पुष्टि करवाएँ कि फ़ोटो में वे खुद हैं या कोई और जिसने सहमति दी है
अंतिम पोर्ट्रेट डिलीवर होते ही मूल सेल्फ़ी डिलीट कर दें
लिखित अनुमति के बिना ग्राहकों की फ़ोटो सैंपल या मार्केटिंग के लिए कभी दोबारा इस्तेमाल न करें
अपने ऐप के भीतर आउटपुट पर AI generated का लेबल लगाएँ, क्योंकि कुछ प्लेटफ़ॉर्म और नियोक्ता इसकी परवाह करते हैं
एक सरल भाषा का प्राइवेसी पेज प्रकाशित करें जिसमें लिखा हो कि फ़ाइलें कितने समय तक रखी जाती हैं
योजना बनाने के लिए सीमाएँ
सीमा
मान
क्या करें
एक साथ प्रेडिक्शन
प्रति अकाउंट 5
जॉब कतार में रखें और वर्कर्स 4 तक सीमित करें
रिक्वेस्ट बॉडी
10 MB
ब्राउज़र में बड़ी सेल्फ़ी का साइज़ घटाएँ
प्रॉम्प्ट की लंबाई
4,000 अक्षर
अपने निर्देश बिल्डर की सीमा तय करें
प्रेडिक्शन टाइमआउट
3 घंटे
पुरानी जॉब खुद रद्द करें
API क्रेडेंशियल
प्रति अकाउंट 2
एक प्रोडक्शन के लिए, एक स्टेजिंग के लिए
💡 कीमत का वादा करने से पहले प्राइसिंग जाँचें। API पेज predictions को फ़िलहाल मुफ़्त बताता है, जबकि प्राइसिंग पेज API Access को Pro+, Elite और Infinite प्लान पर सूचीबद्ध करता है। अपने ग्राहकों से लिए जाने वाले शुल्क तय करने से पहले दोनों पढ़ें।
आज ही अपना पहला हेडशॉट बनाएँ
योजना वाले दस्तावेज़ छोड़ें। PicassoIA Image Editor Pro खोलें, एक सेल्फ़ी अपलोड करें, और ऊपर दिए प्रॉम्प्ट के तीन वर्ज़न आज़माएँ: ग्रे बैकग्राउंड, सफ़ेद बैकग्राउंड और ऑफ़िस बैकग्राउंड। जीतने वाला चुनें, उसकी वर्डिंग Python फ़ंक्शन में कॉपी करें, और आपके पास एक काम करने वाले प्रोडक्ट की नींव तैयार है।
इसके बाद एक अपलोड स्क्रीन, एक क्यू, एक रीट्राई बटन और एक सहमति चेकबॉक्स जोड़ें। बस इतनी ही सूची है। Picasso IA से अपनी इमेज बनाएँ, प्रॉम्प्ट को तब तक सुधारते रहें जब तक पोर्ट्रेट असली फ़ोटो जैसे न दिखें, और पहला वर्ज़न इसी हफ़्ते लॉन्च कर दें। आपके ग्राहकों को बाद में जोड़े जा सकने वाले किसी भी फ़ीचर से कहीं ज़्यादा परवाह एक साफ़ और तेज़ नतीजे की होगी।