1 पॉइंट द्वारा GN⁺ 2 시간 전 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • underdrawing एक ऐसी विधि है जिसमें पहले एक deterministic टूल से संख्याओं और टेक्स्ट की स्थिति वाला आधार-स्केच इमेज बनाया जाता है, और फिर image generation model उसके ऊपर visual style चढ़ाता है ताकि सटीकता बढ़े
  • 50 stepping stones को spiral में सजाकर उन पर 1 से 50 तक नंबर लगाने के कार्य में Gemini 3 Pro और ChatGPT Images 2 underdrawing के बिना संख्याओं और क्रम को स्थिर रूप से सही नहीं रख पाए
  • उसी कार्य में underdrawing को साथ देने पर Gemini 3.0 Pro ने सही नंबरिंग, बटनों की संख्या और क्रम, तथा spiral आकार के साथ परिणाम बनाया
  • इसका implementation SVG/HTML जैसे टूल से संख्याओं और टेक्स्ट को इच्छित स्थान और दिशा में रखकर उसे इमेज के रूप में export करने, फिर multimodal image model में उस इमेज और text prompt को साथ देने से किया जा सकता है
  • यह तरीका हर बार पूरी तरह परफेक्ट नहीं होता, लेकिन टेक्स्ट और संख्याओं की प्लेसमेंट महत्वपूर्ण होने वाली image generation में deterministic placement और generative model की visual expression क्षमता को अलग-अलग इस्तेमाल करने देता है

मुख्य संदर्भ और implementation तरीका

  • यह पैटर्न 100-स्टेप adventure board इमेज बनाने की प्रक्रिया में सामने आया, और इसे “outline देकर उसके ऊपर रंग भरवाना” जैसी विधि के रूप में संक्षेपित किया गया
  • deterministic layer

    • SVG/HTML दृश्य रूप से भले सूखा लगे, लेकिन गणितीय प्लेसमेंट और precision में मजबूत है
    • संख्याओं और टेक्स्ट को इच्छित स्थान और दिशा में रखकर, उन pixels वाली इमेज के रूप में export करना होता है
    • फ़ॉर्मेट के लिए SVG, Python, Mermaid आदि कोई भी मनचाहा टूल इस्तेमाल किया जा सकता है
  • generative layer

    • image generation model दृश्य रूप से शानदार परिणाम बनाते हैं, लेकिन गणित और टेक्स्ट में उनकी विश्वसनीयता कम होती है
    • Gemini 3.0 Pro जैसे multimodal image model, जो इमेज और टेक्स्ट इनपुट लेकर इमेज आउटपुट दे सकते हैं, उनमें underdrawing इमेज और text prompt को साथ दिया जाता है
    • उदाहरण चरण 1 prompt में 50 stepping stones को घड़ी की उल्टी दिशा में अंदर की ओर घूमती spiral में रखने और हर पत्थर पर 1 से 50 तक लगातार नंबर वाले SVG को बनवाया जाता है
    • उदाहरण चरण 2 prompt में उसी इमेज को artisanal chocolate और candy से बनी spiral path वाले low-angle tilted photoreal claymation diorama में बदलने को कहा जाता है
  • automation और सीमाएँ

    • Claude Code या Codex से हर चरण को स्वचालित रूप से कराया जा सकता है
    • परिणाम अच्छे हैं, लेकिन हर बार पूरी तरह परफेक्ट नहीं होते; अंतिम आउटपुट में भी “71” दिखाई नहीं देता

1 टिप्पणियां

 
GN⁺ 2 시간 전
Hacker News की राय
  • यह देखना अच्छा लग रहा है कि लोग इस बात को और गहराई से समझ रहे हैं कि LLM मूल रूप से किन कामों में अच्छे हैं और किनमें नहीं — इसका मतलब यह नहीं कि वे असंभव हैं, लेकिन मौलिक सीमाओं की वजह से उनके सफल होने की संभावना कम रहती है
    यह कुछ वैसा ही है जैसे software architecture इंसान तय करे और function implementation LLM को सौंप दे, या data analysis खुद करने देने के बजाय उससे SQL query लिखवाई जाए
    अच्छा होगा अगर इस बात पर और स्पष्ट task classification framework और research हो कि किस तरह के task LLM के लिए उपयुक्त हैं और कौन से नहीं; थोड़ी intuition बन रही है, लेकिन अभी भी बहुत से लोगों को यहीं बार-बार ठोकर खाते देखता हूँ

    • “architecture इंसान तय करे और function LLM लिखे” वाला तरीका कुछ समय पहले तक LLM coding assistant के शुरुआती users की आम सिफारिश हुआ करता था
      पहले उससे outline बनवाई जाती थी, फिर हर function अलग से implement करवाया जाता था, और animation work से लिया गया शब्द इस्तेमाल करके इस approach को दिखाने वाले blog post भी HN पर कई बार आए थे
    • LLM के संदर्भ में मौलिक सीमाएँ जैसी बात अक्सर कही जाती है, लेकिन ऐसी सीमाएँ वास्तव में मौजूद हैं, इसका अभी तक एक भी कठोर प्रमाण नहीं है
      दो साल पहले तक character counting या phoneme processing जैसे कामों को “मौलिक सीमाओं” के कारण असंभव बताया जाता था, लेकिन अब वे अक्सर बिना tools के भी कोई बड़ी समस्या नहीं रह गए हैं
  • जब भी image generation prompt पढ़ता हूँ, उसमें बहुत ही specific details दिखती हैं जिन्हें model ने साफ़ तौर पर नज़रअंदाज़ कर दिया
    यहाँ भी आख़िरी दो images में chocolate/candy में artisanal handmade वाली feel बिल्कुल नहीं है; वे बहुत स्टेराइल mass-produced product जैसे लगते हैं, और perspective भी सही नहीं है
    अगर model ज़्यादातर चीज़ें अनदेखी ही कर देता है, तो इतने लंबे-चौड़े prompt लिखने का क्या मतलब है, यह सवाल उठता है

    • “studio lighting” माँगने पर photo के अंदर ही ढेर सारा studio lighting equipment डाल देने वाला उदाहरण मुझे पसंद आया
    • candies वास्तव में artisanal handmade जैसी दिखने की कोशिश नहीं कर रहीं, बल्कि training data में कंपनियों द्वारा artisanal कहकर promote और label की गई images से match करने की कोशिश कर रही हैं
      rustic, homemade, amateur जैसे शब्द tagging के लिहाज़ से शायद बेहतर match करें
    • जब मैंने भी image generation कुछ बार इस्तेमाल किया, तो ठीक इसी तरह की बातों पर यह बार-बार fail हुआ
      शुरू में मैंने इसे अपनी prompt writing skill की कमी समझा, लेकिन एक बार इन mismatches पर ध्यान देना शुरू करें तो ये काफ़ी आम दिखते हैं
    • ज़्यादातर detailed prompt मुझे AI द्वारा generated लगते हैं
    • यह सब सोचने में कितना समय लगा होगा, यह जानने की जिज्ञासा है
      अगर मकसद आख़िरी example जैसा spiral में सजे छोटे “buttons” वाली image बनाना था, तो भले वह candy जैसी नहीं दिखती, लेकिन Blender में बहुत अच्छा न होने पर भी शायद एक दोपहर में बनाई जा सकती थी
  • मुझे AI-generated images में text और numbers भरोसेमंद ढंग से पाने की एक सरल technique मिली
    हैरानी इस बात की है कि image models पहले से यह नहीं कर रहे, इसलिए यह काफ़ी उपयोगी लगी और साझा करना चाहा

    • कुछ मायनों में यह ControlNet इस्तेमाल करने जैसा है
      मैं कुछ समय से इसी technique का उपयोग कर रहा हूँ, जहाँ सिर्फ़ SVG को base image की तरह इस्तेमाल किया जाता है, और यह अच्छा काम करती है
    • यह बहुत प्रभावशाली, सरल और स्थिर है
      लगता है image generation labs इसे जल्द अपना लेंगी
    • मुझे लगता है यह एक तरह की chain of thought जैसी चीज़ है, यानी https://arxiv.org/abs/2201.11903 जैसी
      इसमें user model को 0-shot में solve करने देने के बजाय 1-shot या k-shot तरीके से समाधान की दिशा देता है
      मैंने मिलती-जुलती techniques बहुत प्रभावी ढंग से इस्तेमाल की हैं, और यह क्षेत्र इतना नया और तेज़ी से बदल रहा है कि साझा terminology अभी भी कम लगती है, इसलिए blog और examples बहुत उपयोगी हैं
      हालाँकि यह भी संभव है कि इस phenomenon को पहले से छोटे communities में या किसी दूसरे नाम से देखा और समझा जा चुका हो
    • सार यह है कि पहले SVG में सही outline बनाई जाती है, फिर उस image को text prompt के साथ Gemini 3.0 Pro में भेजा जाता है ताकि वह सही numbers और text के साथ render करे
  • यह बस code से बनाई गई सही structure वाली पहली image पर आधारित img2img ही है

    • हाँ, बिल्कुल यही तरीका है
      अगर आप Stable Diffusion के शुरुआती दिनों से generative models का उपयोग कर रहे हैं, तो यह काफ़ी आम और उपयोगी technique है: sketch (SVG, hand drawing आदि) को अस्थायी ControlNet की तरह इस्तेमाल करके model output को guide करना
      पहले architecture visualization set करते समय हम ऐसा ही approach इस्तेमाल करते थे
      अगर sofa, chair या दूसरे furniture को किसी खास जगह रखना हो, तो Poser जैसे tool में simple scene बनाकर मुख्य “set pieces” की rough placement तय की जाती थी, फिर उससे depth map बनाकर उस समय के SDXL जैसे generative model में डालते थे ताकि object placement guide हो सके
    • मोटे तौर पर बात वही है जो लेखक ने कही है; बस beginners के लिए थोड़ा context जोड़ दिया गया है
    • सही है, लेकिन वह code बनाने के लिए आप किसी दूसरे code generation model का उपयोग कर सकते हैं
  • यह hack सचमुच “अरे, यह मेरे दिमाग़ में पहले क्यों नहीं आया” वाली category की तरकीब है
    अगली बार जब image generation उम्मीद से कम निकले, तब इस्तेमाल करने के लिए यह जानना अच्छा लगा

    • मूल Stable Diffusion apps में पहले से image-to-image मौजूद था
      बस उस समय performance आज जितनी अच्छी नहीं थी, इसलिए यह क्यों नया माना जा रहा है, यह पूरी तरह समझ नहीं आता
  • मानक counterargument यह है: अगर LLM सच में बुद्धिमान है, तो वह खुद क्यों नहीं समझ पाता कि यह 2-step process बेहतर नतीजे देगा?

    • बुनियादी स्तर पर image model बस text tokens को input लेकर image tokens output करने वाली संरचना है
      strategy बनाना, result की समीक्षा करना और फिर दोबारा कोशिश करना — इसके लिए ऊपर से एक agentic process चाहिए
      लगता है Nano Banana और gpt-image-2 में इसका थोड़ा अंश है, लेकिन यह वैसा ही अंतर है जैसा model से एक ही बार में code लिखवा लेने और tools से लैस किसी agent harness द्वारा उसे handle करवाने में होता है
      बहुत साधारण agent भी अकेले ChatGPT से बेहतर code बना सकता है
    • क्योंकि LLM को आम तौर पर “image बनाओ” जैसे prompt को थोड़ा polish करके अलग model को भेजने के लिए hardcoded किया गया होता है
    • जो नहीं पता, वह नहीं पता
    • क्योंकि असल में वह बुद्धिमान नहीं है
    • किसी ने उससे ऐसा करने को कहा ही नहीं
  • यह तरीका बहुत पहले से इस्तेमाल होता आ रहा है, और depth map या line art से silhouette control करने जैसा ही है

  • निष्कर्ष वाले हिस्से की “काम तो करता है, लेकिन असल में उतना भी नहीं” वाली भावना मुझे अच्छी लगी
    LLM/generative AI के इस उत्साह के अनुरूप, पूरा लेख दिखाता है कि एक बहुत ही संकीर्ण example को सही करने के लिए जटिल मेहनत की गई, जो लगभग काम करती हुई लगती है, लेकिन आख़िरकार पूरी तरह सही नहीं बैठती

    • अगर आंशिक रूप से भी काम करे, तो भी उपयोगी है
      इंसान के लिए numbers सही हैं या नहीं, यह जाँचना आसान है, और अगर ग़लत हों तो image फिर से generate की जा सकती है
      बिना model के शुरुआत से image बनाने की तुलना में यह कई गुना आसान है
  • आम problem “साइकिल चलाते pelican का SVG” के लिए उल्टा approach आज़माया जा सकता है, ऐसा लगा
    अगर model से सीधे SVG उगलवाएँ, तो स्वाभाविक है कि quality खराब हो सकती है
    लेकिन image generation शानदार photorealistic image आसानी से बना सकता है, इसलिए पहले image generate करके फिर model से उसे trace करवाकर SVG बनवाना, एक अच्छा bicycle-pelican SVG पाने का अच्छा तरीका हो सकता है
    आखिर इंसान भी शायद ही सिर्फ़ नोटपैड में numbers डालकर SVG art बनाते हैं; मूल बात अब भी उसे image की तरह देखना और उसके आधार पर सोचना ही है

  • यह कुछ-कुछ वैसा ही लगता है जैसा इंसान खुद सटीकता से काम करते समय करता है
    अगर किसी artist से कहा जाए कि बिना revision या sketch के एक ही बार में बड़े circular arrangement में पत्थरों को क्रमवार numbering सहित बना दे, तो placement errors होना कोई हैरानी की बात नहीं होगी