Automatic Prompt Engineer (APE) ભાષા મોડેલને આપેલ કાર્ય માટે શ્રેષ્ઠ પ્રોમ્પ્ટ લખવા, પરીક્ષણ કરવા અને પસંદ કરવા દે છે, જે અગાઉના 'ટ્રાયલ-એન્ડ-એરર' (પ્રયત્ન અને ભૂલ) કળાને પુનરાવર્તિત ડેટા-આધારિત શોધમાં ફેરવે છે.

પ્રોમ્પ્ટ લેખન શા માટે અવરોધ (bottleneck) બની ગયું છે

પ્રોમ્પ્ટ એન્જિનિયરિંગ—એક મોડેલને શું કરવું તે જણાવવા માટે ચોક્કસ શબ્દો ઘડવા—લાંબા સમયથી અંતર્જ્ઞાન અને નસીબનું મિશ્રણ રહ્યું છે. પ્રેક્ટિશનરો અહીં એક શબ્દ બદલે છે, ત્યાં એક શબ્દસમૂહ બદલે છે, મોડેલ ચલાવે છે, અને જ્યારે આઉટપુટ "સાચું લાગે" ત્યારે અટકી જાય છે. આ અભિગમ લાંબો સમય લે છે, એન્જિનિયરની કલ્પનાશક્તિ પર આધારિત છે, અને કામગીરીને મર્યાદિત કરે છે. પ્રોડક્શનમાં આનો અર્થ લાંબા ચક્રો, અસ્થિર પરિણામો અને છુપા ખર્ચ છે જે લોન્ચ થયા પછી જ સામે આવે છે.

APE ની ત્રણ-પગલાંની કાર્યપ્રણાલી (workflow)

APE પ્રોમ્પ્ટ નિર્માણને એક શોધ (search) સમસ્યા તરીકે જુએ છે. વપરાશકર્તા ઇનપુટ-આઉટપુટ ઉદાહરણોનો એક નાનો સેટ આપે છે. ત્યારબાદ સિસ્ટમ ત્રણ સ્વચાલિત તબક્કાઓ ચલાવે છે:

  1. Propose (પ્રસ્તાવિત કરવું) – મોડેલ ઉદાહરણોનું સ્કેન કરે છે અને ઉમેદવાર સૂચનાઓનો એક સમૂહ બહાર કાઢે છે, જેમ કે “વિરોધી શબ્દ આપો” અથવા “વિરોધાર્થી શબ્દ લખો.”
  2. Score (સ્કોર આપવો) – સિસ્ટમ દરેક ઉમેદવારને નવા (unseen) ઉદાહરણોના અલગ સેટ પર ચલાવે છે અને કેટલા જવાબો અપેક્ષિત આઉટપુટ સાથે મેળ ખાય છે તેની ગણતરી કરે છે, જેનાથી ચોકસાઈનો (accuracy) કાચો આંકડો મળે છે. આ તબક્કામાં માનવીય નિર્ણયનો કોઈ રોલ હોતો નથી.
  3. Select (પસંદ કરવું) – સૌથી વધુ ચોકસાઈ ધરાવતી સૂચના અંતિમ પ્રોમ્પ્ટ બને છે.

આ લૂપ પુનરાવર્તિત થઈ શકે છે. વિજેતા પ્રોમ્પ્ટ નવો 'સીડ' (seed) બને છે, અને મોડેલ તેના વિવિધ રૂપો સૂચવે છે. અહેવાલો મુજબ, 83% સ્કોર ધરાવતી એક સામાન્ય સૂચનાને રિફાઇન કરીને એવા વર્ઝનમાં ફેરવવામાં આવી જે ટેસ્ટ સેટ પર 100% સુધી પહોંચી ગઈ.

આ અભિગમને માનવીય પ્રયાસ કરતા વધુ મજબૂત શું બનાવે છે

  • Coverage (વ્યાપ્તિ) – એક LLM સેકન્ડોમાં ડઝનબંધ શબ્દપ્રયોગના વિકલ્પો તૈયાર કરી શકે છે, જે વ્યક્તિ પરીક્ષણ કરી શકે તેના કરતા ઘણું વધારે છે.
  • Objectivity (નિષ્પક્ષતા) – પસંદગી માપી શકાય તેવી ચોકસાઈ પર આધારિત છે, નહીં કે શબ્દો કેટલા સુધારેલા લાગે છે તેના પર. પાઠ્યપુસ્તક શૈલીની સૂચના પણ કદાચ ટૂંકી અને વિચિત્ર લાગતી સૂચના સામે હારી શકે છે જેને મોડેલ વધુ સારી રીતે સમજી શકે છે.

સ્કોરિંગ મેટ્રિક વપરાશકર્તા દ્વારા આપવામાં આવતું હોવાથી—સામાન્ય રીતે એક્ઝેક્ટ-મેચ ચેક અથવા યુનિટ ટેસ્ટ—સિસ્ટમને કોડ જનરેશનથી લઈને સેન્ટિમેન્ટ એનાલિસિસ સુધીની કોઈપણ પછીની જરૂરિયાત મુજબ સેટ કરી શકાય છે.

ઓટોમેશનની કિંમત

તેમાં મુખ્ય બાંધછોડ કમ્પ્યુટિંગ (compute) ની છે. દરેક ઉમેદવારને સ્કોર કરવા માટે ઘણી બધી મોડેલ કોલ્સ કરવાની જરૂર પડે છે, તેથી ડેવલપમેન્ટ તબક્કામાં API નો નોંધપાત્ર ઉપયોગ થાય છે. APE આ ખર્ચને વન-ટાઇમ ઇન્વેસ્ટમેન્ટ તરીકે જુએ છે: એકવાર શ્રેષ્ઠ પ્રોમ્પ્ટ મળી જાય પછી, તમે વધારાના ખર્ચ વિના તેનો કાયમ માટે ફરીથી ઉપયોગ કરી શકો છો.

બે પૂર્વશરતો પણ તેના ઉપયોગને મર્યાદિત કરે છે:

  • Labeled examples (લેબલ કરેલા ઉદાહરણો) – સિસ્ટમને ઇનપુટ અને સાચા આઉટપુટના પ્રતિનિધિ સેટની જરૂર હોય છે.
  • Scoring function (સ્કોરિંગ ફંક્શન) – વપરાશકર્તાઓએ તેમના કાર્ય માટે "સાચું" એટલે શું તે વ્યાખ્યાયિત કરવું આવશ્યક છે, પછી તે એક્ઝેક્ટ સ્ટ્રિંગ મેચ હોય, ન્યુમેરિક ટોલરન્સ હોય અથવા કસ્ટમ વેલિડેટર હોય.

ક્યાં આ વિચાર નિષ્ફળ જઈ શકે છે

જો પ્રારંભિક ઉદાહરણોનો સેટ ખૂબ નાનો અથવા અપૂર્ણ હોય, તો પસંદ કરેલ પ્રોમ્પ્ટ 'ઓવરફિટ' થઈ શકે છે અને વાસ્તવિક ઉપયોગમાં નિષ્ફળ જઈ શકે છે.

આગળ શું જોવું

આ સાધન એક વિકલ્પ આપે છે: થોડા ઉદાહરણો આપો, મોડેલને ઇટરેટ કરવા દો, અને એવો પ્રોમ્પ્ટ મેળવો જેને સિસ્ટમ તેના પ્રયાસોમાં સૌથી ઊંચો રેન્ક આપે છે. ડેમો મૂળ જાહેરાતમાં આપેલી લિંક પર ઉપલબ્ધ છે, અને ટેલિગ્રામ પર એક લર્નિંગ કમ્યુનિટી કાર્યરત છે.

મુખ્ય વાત (Takeaway): પ્રોમ્પ્ટ એન્જિનિયરિંગનું ઓટોમેશન અંદાજ લગાવવાને બદલે માપી શકાય તેવી કામગીરી આપે છે, પરંતુ તે પૂર્વતૈયારી તરીકે ડેટા, કમ્પ્યુટ અને સફળતાની સ્પષ્ટ વ્યાખ્યાની માંગ કરે છે.