મેં 1,000 લાઇનના Python કોડને 500 શબ્દોના Prompt થી બદલી નાખ્યો

મારી ડોક્યુમેન્ટેશન વિકી (documentation wiki) એક અવ્યવસ્થા હતી. પેજ પર કોઈ ટેગ નહોતા. પુસ્તકો ખોટી શેલ્ફ પર હતા. મેટાડેટા (Metadata) જૂનો હતો. મેં નિયમો લખવાનો પ્રયાસ કર્યો, પરંતુ તેને લાગુ કરવાનો મારી પાસે સમય નહોતો.

તેને સુધારવા માટે મેં એક AI એજન્ટ બનાવવાનો પ્રયાસ કર્યો.

Version 1 એક Python સર્વિસ હતી. મેં 1,000 લાઇનનો કોડ લખ્યો. મેં એક rule engine, એક API wrapper અને retry logic બનાવ્યું. તે નિષ્ફળ ગયું. તે જ્યારે પણ ચાલતું ત્યારે પૈસા ખર્ચતું હતું. તેણે મારા પોતાના કોડમાં પણ બગ્સ (bugs) છુપાવી દીધા હતા.

મને સમજાયું કે હું એવા સાધનો ફરીથી બનાવી રહ્યો હતો જેના માટે મેં પહેલેથી જ ચૂકવણી કરી હતી.

Version 2 અલગ છે. હું એક સાધારણ Kubernetes CronJob નો ઉપયોગ કરું છું. કન્ટેનર (container) એક command-line AI ટૂલ ચલાવે છે. તેની લોજિક (logic) 500 શબ્દોના prompt માં રહેલી છે.

આ સેટઅપ વધુ સારી રીતે કામ કરે છે કારણ કે:

• તે દરેક રન દીઠ શૂન્ય ડોલર ખર્ચાળ છે. તે મોંઘી API keys ને બદલે મારા હાલના સબ્સ્ક્રિપ્શનનો ઉપયોગ કરે છે. • તે વધુ સારું નિર્ણય લે છે. તે અસ્તવ્યસ્ત ફેરફારો કરવાને બદલે સંભવિત સમસ્યાઓ માટે મને સૂચના (flag) આપે છે. • તેને મેનેજ કરવું સરળ છે. મારો કોડ 1,000 લાઇનથી ઘટીને 50 લાઇનના shell script માં આવી ગયો.

AI ને સુરક્ષિત રીતે write access કેવી રીતે આપવું:

  • બે પ્રકારની કામગીરી (lanes of action) નો ઉપયોગ કરો. Tier 1 સ્પેલિંગની ભૂલો સુધારવા જેવા સ્પષ્ટ ફેરફારો માટે છે. Tier 2 નિર્ણય લેવા માટે છે. Tier 2 માટે, એજન્ટ માત્ર ફેરફાર સૂચવે છે. તે ડેટાને ક્યારેય અડતો નથી.
  • સેલ્ફ-રિવ્યુ (self-review) માટે મજબૂર કરો. Prompt એજન્ટને પૂછવા માટે કહે છે: "શું કોઈ માણસ આ ફેરફારનો વિરોધ કરશે?" જો જવાબ 'હા' હોય, તો એજન્ટ અટકી જાય છે.
  • Undo બટનો પર આધાર રાખો. આ પદ્ધતિનો ઉપયોગ ફક્ત એવા સિસ્ટમ્સ પર જ કરો જેમાં version history હોય. જો એજન્ટ ભૂલ કરે, તો એક ક્લિકથી તે સુધરી જાય છે. કડક પરવાનગીઓ (permissions) કરતા ફેરફાર પાછો ખેંચવાની ક્ષમતા (reversibility) વધુ મહત્વની છે.

શીખેલા પાઠ:

  1. Prompts એ કોડ છે. તમારા prompt ને સોફ્ટવેર મોડ્યુલની જેમ ગણો. તેને Git માં રાખો અને નિયમિતપણે તેની સમીક્ષા કરો.
  2. જટિલ orchestration ને ભૂલી જાઓ. જો તમારો કોડ ફક્ત retries અને routing હેન્ડલ કરે છે, તો તમે માત્ર એક માળખું (harness) બનાવી રહ્યા છો. તેના બદલે prompt અને એક શેડ્યૂલ મોકલો.
  3. અર્થશાસ્ત્ર (Economics) તમારા ડિઝાઇનને બદલી નાખે છે. જ્યારે રન ફ્રી હોય, ત્યારે નાના ફેરફારોને ટ્રેક કરવા માટે તમારે જટિલ કોડની જરૂર નથી. તમે બધું ફરીથી સ્કેન કરી શકો છો.

હવે વિકી સાફ છે. લાઇબ્રેરિયન ક્યારેય ઊંઘતો નથી અને મને ક્યારેય બિલ મોકલતો નથી.

Source: https://dev.to/saltxd/i-replaced-1000-lines-of-python-with-a-500-word-prompt-29ao

Optional learning community: https://t.me/GyaanSetuAi