Anthropic Claude 3.5 से इमेज से iCalendar फ़ाइल बनाना
(gregsramblings.com)- ऐसी स्थिति में जहां jazz piano lesson का schedule केवल JPG image के रूप में मिला था, Claude 3.5 Sonnet ने दिखी हुई dates पढ़कर उन्हें calendar में डालने का दोहराव वाला काम कम कर दिया
- हरे रंग से मार्क की गई 13 dates को 13 सितंबर 2024 से 23 मई 2025 तक की हर दो हफ्ते में शुक्रवार वाली lessons के रूप में निकाला गया
- फिर उसी conversation में, हर date पर दोपहर 2 बजे Pacific Time में
Jazz Piano Lessonschedule वाली ICS file का text भी generate किया गया - generate की गई
.icsfile को text के रूप में save करने के बाद Google Calendar के Import/export से import करके ठीक से add किया जा सका - ChatGPT ने भी dates पहचान लीं, लेकिन शुरुआत में
.icsके बजाय Python code दिया, और file contents सीधे मांगने के बाद ही iCalendar text generate किया
Image schedule से calendar file तक
- jazz piano teacher ने fall/winter private lesson schedule को JPG image के रूप में भेजा था, और 13 lesson dates हरे marker से चिह्नित थीं
- Google Calendar में 13 appointments manually बनाने के बजाय image को Claude 3.5 Sonnet पर upload किया गया
- पहला request यह था
List the dates that are outlined in green
- Claude ने ये 13 dates extract कीं
- Friday, 13-Sep-24
- Friday, 27-Sep-24
- Friday, 11-Oct-24
- Friday, 8-Nov-24
- Friday, 6-Dec-24
- Friday, 20-Dec-24
- Friday, 17-Jan-25
- Friday, 31-Jan-25
- Friday, 28-Feb-25
- Friday, 14-Mar-25
- Friday, 11-Apr-25
- Friday, 25-Apr-25
- Friday, 23-May-25
- ये dates 10 सितंबर 2024, मंगलवार वाले week से शुरू होने वाले हर दो हफ्ते में शुक्रवार के lesson schedule से मेल खाती हैं
Claude द्वारा बनाई गई iCalendar file
- अगले request में, हर date पर दोपहर 2 बजे Pacific Time में
Jazz Piano Lessonschedule बनाने वाली ICS file generate करने को कहा गया - generate किए गए iCalendar text में
BEGIN:VCALENDAR,VERSION:2.0,PRODID,CALSCALE:GREGORIANऔर 13VEVENTblocks शामिल थे - हर event में ये fields थीं
SUMMARY:Jazz Piano LessonDTSTART,DTEND: 1-hour scheduleDTSTAMP:20240824T000000Z- हर date के लिए unique
UID
- time को UTC के Z notation में convert किया गया, और Pacific Time के time change को file में reflect किया गया
- इस्तेमाल का तरीका यह था कि generate किए गए content को copy करके एक नई text file में paste करें,
.icsextension से save करें, और फिर अपनी पसंद के calendar app में import करें - Google Calendar में settings के Import/export menu के जरिए
.icsfile import की गई, और appointments ठीक से add हो गईं - वही input ChatGPT में आज़माने पर dates की पहचान तो हो गई, लेकिन शुरुआत में उसने जवाब दिया कि
.icsfile बनाना संभव नहीं है और Python code दिया; बाद में “सिर्फ.icsfile contents दिखाएं” कहने पर उसने वह content generate किया
1 टिप्पणियां
Hacker News की राय
Claude से सूची या डेटा extraction करवाते समय नतीजे ज़रूर दोबारा जांचने चाहिए
99.9% सही होता है, लेकिन कभी-कभी 1–2 records गलत होते हैं, और नतीजा भरोसेमंद दिखता है इसलिए चूकना और आसान हो जाता है। लंबी सूचियों या tables में large language models बहुत मामूली गलती कर सकते हैं, और मैंने खुद ऐसा झेला है। भरोसा करें, लेकिन verify भी करें
अगर जवाब को मशीन से verify किया जा सकता है, तो large language model से अंदर चलाया जा सकने वाला Python validator लिखवाने का तरीका भी है। ChatGPT code execution कर सकता है, और मेरी जानकारी में Sonnet 3.5 भी कर सकता है, हालांकि मैंने खुद आज़माया नहीं है
George Washington का जन्मदिन पूछने पर “May 20, 2020” कहना और “February 20, 1733” को पूरे confidence के साथ hallucinate करना अलग बात है। ऊपर-ऊपर से यह plausible लगता है। Presidents' Day फरवरी में है, जन्मदिन से संबंधित लगता है, और साल भी सही-सा दिखता है, इसलिए आसानी से लग सकता है कि यह काफी है
लेकिन यह गलत है, और डरावनी बात यह है कि large language models ऐसे “facts” को पूरे आत्मविश्वास वाले अंदाज़ में बोलते हैं। ऐसा इसलिए है क्योंकि probabilistic model को ऐसा बोलने के लिए बनाया गया, और जानकारी check या verify करने के लिए पर्याप्त व्यवस्था नहीं थी
“भरोसा करें, लेकिन verify करें” paradoxical और circular है। अगर ChatGPT से मिले हर fact को Wikipedia से check करना है, जिसे हम truth का higher source मानते हैं, तो शुरुआत वहीं से क्यों न करें? अगर output verify करने के लिए Python validator बनाना है, तो शुरुआत में वही क्यों न करें?
ऐसी चालाक गलतियों से बड़ा नुकसान होगा। off-by-one errors पकड़ना बहुत कठिन होता है, data धीरे-धीरे दूषित होता जाता है और और भी गलत दिशा में बढ़ता जाता है, और जब तक पता चलता है तब तक बहुत देर हो चुकी होती है। अगर large language model का खराब output हमेशा pizza पर glue लगाने जैसी recommendation की तरह साफ दिखे तो उल्टा अच्छा है, लेकिन असलियत शायद कुएं में धीरे-धीरे ज़हर घुलने जैसी होगी, और अगर inaccurate output जिंदगी के अहम हिस्सों में आने लगे, तो सचमुच बड़ी दिक्कत हो सकती है
खुद करूं तो शायद 99% accuracy भी न ला पाऊं। ऐसे काम में अगर सचमुच 99.9% accuracy है, तो मैं खुशी से स्वीकार करूंगा
उदाहरण के लिए, मैं दो podcast apps टेस्ट कर रहा था और subscribed feeds में फर्क देखना चाहता था। शुरुआत में मैंने उससे दो OPML files compare करने को कहा, लेकिन नतीजा गलत था। 30 मिनट prompt सुधारने और manual verification करने के बजाय मैंने उससे दोनों files compare करने वाली script लिखने को कहा, और वह ठीक चली। जटिल output को एक-एक करके जांचने की उबाऊ प्रक्रिया की तुलना में, script को review करके यह विश्वास करना अपेक्षाकृत आसान है कि वह शायद सही है
मूल लेख जैसे काम को non-English data पर किया था, लेकिन Claude को data के कुछ हिस्से “मददगार” बनकर English में translate करने से रोक नहीं पाया। “image का description शामिल करो” कहने पर वह translate कर देता था, और “image का description शामिल करो लेकिन translate या summarize मत करो” कहने पर वह उसे छोड़ ही देता था
2 हफ्ते पहले ठीक यही use case था: स्कूल से PDF file मिली थी और cafe में मेरे पास सिर्फ फोन था
मैंने ChatGPT इस्तेमाल किया, और लेख में यह दावा कि code interpreter सीधे .ics file generate नहीं कर सकता, सही है; लेकिन यह specific problem पूरी तरह solve हो गई। Android phone पर मैंने ऐसे किया: PDF से सभी useful dates, times और notes extract करवाए, .ics file format का content code output के रूप में बनवाया, फिर code interpreter का इस्तेमाल करके उस content को file में डालकर .ics extension से save करवाया
उसने सब कुछ अंत तक ठीक किया, और मैं phone के gcal app से file download करके खोल पाया और सभी events import कर सका
code interpreter ICS file “generate” नहीं कर सकता, यह दावा इसलिए है क्योंकि चल रहे Python environment में उस काम के लिए specific library नहीं है। ICS file बस एक specific format की text file होती है, इसलिए इसे बनाया जा सकता है
ChatGPT-4o को movie titles की list वाली txt file देकर मैंने मिलता-जुलता काम किया। उससे हर movie की release date return करवाई, फिर एक iCal file ली जिसमें सभी movie release dates को हर साल repeat होने वाले anniversary events के रूप में रखा गया, ताकि मैं अपनी पसंदीदा movies उनकी anniversaries पर देख सकूं
मैंने कुछ दोस्तों के लिए भी ऐसा किया, और अब तक कुल 100 से ज्यादा movie titles पर success rate 100% रहा है
इसलिए मुझे याद है कि 11 सितंबर 2001 मंगलवार था। वह album release day था, और उस दिन एक अच्छा album भी था
स्कूल या employers जैसी जगहें अभी भी PDF फ़ॉर्मेट वाले calendar बहुत ज़्यादा distribute करती हैं
असल में calendar app में import करके practical रूप से इस्तेमाल हो सके ऐसा format बनाने की बजाय, वे branding और visual formatting पर ज़्यादा समय लगाते हैं
मुझे लगता है कि एक 2-step process संभव हो सकता है जिसे ज़्यादा मज़बूती से generalize किया जा सके। पहला, किसी भी document को पढ़कर तारीख, समय और time zone, स्थान, URL, notes, और repeat होता है या नहीं—इन सबको table में बदलना; दूसरा, लगभग उसी structure वाली table पढ़कर Google Calendar, iCal, ICS file या link generate करना
हर step को बहुत अच्छी तरह करने के लिए model या agent को अलग से fine-tune भी किया जा सकता है
यहाँ मुझे लगता है Siri fail रही। “सोमवार से शुरू होकर 90 दिनों तक चलने वाला event बना दो” जैसी चीज़ भी हमेशा जुए जैसी ही रही
जो काम मैं खुद manually नहीं करना चाहता था, Siri भी नहीं कर पाई। फिर उसे assistant कहना मुश्किल है
मैंने GPT4-o में internet banking transactions list का screenshot डालकर company tax filing के लिए transactions list हासिल की। मैंने आंखों से verify किया और result सही था
उससे पहले product manager ने feature flag enable करने के लिए company IDs की list screenshot में भेजी थी। सब कुछ manually enter करने की बजाय, मैंने GPT4-o से screenshot से comma-separated list बनवाई, और वह भी perfectly काम कर गया
यह शानदार है। साथ ही यह एक design pattern भी अच्छी तरह दिखाता है जो मैं चाहता हूँ कि AI की वजह से और फैल जाए: interoperable, human-readable file formats। .ICS files जैसी चीज़ें
अच्छा होगा अगर और websites और apps ऐसे formats के support को priority दें। इससे AI को बीच में लगाकर इस्तेमाल करना ही आसान नहीं होता, बल्कि ज़्यादा लोग creative extensions बना सकते हैं
पिछले करीब 10 सालों में “simplicity” के नाम पर data और ज़्यादा siloed होता गया और files की अपनी अहमियत घटती गई; उम्मीद है यह trend कुछ हद तक वापस लौटे
मैं ChatGPT से अक्सर calendar items बनाता हूँ। Google Calendar links, ICS files, QR codes—सब संभव रहे हैं
मूल लेख में क्या गलत हुआ, मुझे नहीं पता
आजकल आप purpose के लिए “Python use करो” भी request कर सकते हैं। तब वह file बना तो देता है, लेकिन result को Python string या array में encode करना पड़ता है, जिससे mistakes बढ़ने की संभावना हो सकती है
Calendar invite के लिए AI का इस्तेमाल वाकई अच्छा fit है। मैंने इसी तरह का काम यहाँ किया था, और ical और भी simple है
https://hareeshganesan.com/2024/07/14/baby-calendar
gpt 4o से मैं इसी तरह data entry को simplify कर रहा हूँ। अभी भी यह काफी useful है, लेकिन लोग अभी बड़े language models से structured tasks बड़े पैमाने पर नहीं कर रहे हैं
लेकिन यह इतना साफ़ तौर पर useful है कि मुझे लगता है यह बदलेगा। किसी भी form में data enter करने का काम अब automate हो सकता है, और सच में automate होगा। खासकर अगर information printed या printable form में हो, तो बस camera दिखाकर जल्दी review करना होगा
signs, posters जैसी जगहों की information खींच लेना आश्चर्यजनक रूप से useful हो सकता है। लोग ऐसी बहुत-सी information को visually communicate करने में काफी मेहनत और पैसा लगाते हैं, जो आसानी से accessible digital format में मौजूद नहीं होती