செயற்கை தரவுக்கான (Synthetic Data) ப்ராம்ப்ட் இன்ஜினியரிங்
தரமான தரவை (Synthetic Data) உருவாக்க LLM-களைப் பயன்படுத்துவது QA குழுக்களிடையே ஒரு பிரபலமான உத்தியாகும். நீங்கள் சில நொடிகளில் நூற்றுக்கணக்கான சிக்கலான பதிவுகளை உருவாக்க முடியும்.
ஆனால் பொதுவான ப்ராம்ப்ட்கள் (generic prompts) ஒரு சிக்கலுக்கு வழிவகுக்கும். "50 சோதனை பயனர்களை உருவாக்கவும்" என்று நீங்கள் ஒரு LLM-இடம் கேட்டால், அது கணிக்கக்கூடிய மற்றும் மீண்டும் மீண்டும் வரும் தரவையே வழங்கும். இது ஒரு தவறான புரிதலை உருவாக்கும். நீங்கள் "happy path" எனப்படும் சாதாரணச் சூழல்களை மட்டுமே சோதிக்கும் பல பதிவுகளைப் பெறுவீர்கள், ஆனால் முக்கியமான விளிம்பு நிலைச் சூழல்கள் (edge cases) மற்றும் வணிகத் தர்க்கங்களை (business logic) தவறவிடுவீர்கள்.
இதைச் சரிசெய்ய, நீங்கள் ஒரு கோரிக்கையாளர் நிலையில் இருந்து ஒரு ஒருங்கிணைப்பாளராக (orchestrator) மாற வேண்டும். உங்கள் ப்ராம்ப்ட் இன்ஜினியரிங்கில் நேரடியாகச் சோதனைத் தத்துவங்களைப் பயன்படுத்த வேண்டும்.
உங்கள் தரவின் தரத்தை மேம்படுத்த இந்த மூன்று முறைகளைப் பயன்படுத்தவும்:
- சமநிலைப்பிரிவினை (Equivalence Partitioning) மற்றும் எல்லை மதிப்பு பகுப்பாய்வு (Boundary Value Analysis) தரவைக் கேட்பதற்குப் பதிலாக, முதலில் சோதனை வகுப்புகளை (test classes) வரைபடமாக்க LLM-ஐத் தூண்ட வேண்டும். Chain-of-Thought prompting முறையைப் பயன்படுத்தவும்.
- உங்கள் பங்கினை ஒரு மூத்த QA பொறியாளராக (Senior QA Engineer) வரையறுக்கவும்.
- குறிப்பிட்ட வணிக விதிகளை வழங்கவும் (எ.கா., கூப்பன் வரம்புகள் அல்லது குறைந்தபட்ச செலவு).
- அனைத்து செல்லுபடியாகும் மற்றும் செல்லாத சமநிலை வகுப்புகளையும் (equivalence classes) ஒரு அட்டவணையில் பட்டியலிடுமாறு LLM-க்கு அறிவுறுத்தவும்.
- கண்டறியப்பட்ட ஒவ்வொரு சூழலுக்கும் சரியாக ஒரு JSON payload-ஐக் கோரவும்.
இது தேவையற்ற பதிவுகளைத் தவிர்த்து, $99.99 vs $100.00 போன்ற துல்லியமான மாற்றப் புள்ளிகளை (transition points) நீங்கள் சோதிப்பதை உறுதி செய்கிறது.
- நிலை மாற்றச் சோதனை (State Transition Testing) பணம் செலுத்தும் முறைகள் அல்லது ஆர்டர் மேலாண்மை போன்ற அமைப்புகளுக்கு, தரவு ஒரு வாழ்க்கைச் சுழற்சியின் (lifecycle) பல்வேறு நிலைகளைப் பிரதிபலிக்க வேண்டும்.
- சாத்தியமான அனைத்து நிலைகளின் பட்டியலையும் வழங்கவும் (எ.கா., Created, Paid, Shipped, Delivered).
- ஒரு State Transition Matrix-ஐ உள்ளடக்கிய CSV கோப்பை உருவாக்க LLM-இடம் கேட்கவும்.
- மூன்று வகையான ஓட்டங்களைக் கோரவும்: நேரியல் (Linear - செல்லுபடியாகும்), விதிவிலக்கு (Exception - விலகல்கள்), மற்றும் மீறல் (Violation - செல்லாத மாற்றங்கள்).
- ஒவ்வொரு தனித்துவமான நிலை இணைப்பிற்கும் (unique state combination) ஒரு வரிசையை மட்டுமே உருவாக்க ஒரு விதியை அமைக்கவும்.
இது நகல் பதிவுகளைத் தடுக்கிறது மற்றும் எதிர்மறை சோதனைச் சூழல்களை (negative test cases) உருவாக்கத் தூண்டுகிறது.
- மாறுபாட்டுக் கட்டுப்பாடு (Variance Control) மற்றும் எதிர்மறை ப்ராம்ப்டிங் (Negative Prompting) LLM-கள் பெரும்பாலும் ஒரே மாதிரியான தரவுகளை (homogeneous data) உருவாக்குகின்றன, உதாரணமாக ஒரே பிராந்தியங்கள் அல்லது வயதுக் குழுக்களைப் பயன்படுத்துவது போன்றது. இதைத் தடுக்க Negative Prompting முறையைப் பயன்படுத்தவும்.
- விநியோகத்திற்கான (distribution) தெளிவான தேவைகளை அமைக்கவும் (எ.கா., குறிப்பிட்ட வயது வரம்புகள் அல்லது புவியியல் பிராந்தியங்கள்).
- ஒரு "PROHIBITIONS" (தடைசெய்யப்பட்டவை) பகுதியைச் சேர்க்கவும்.
- "John Doe" போன்ற பொதுவான பெயர்களைத் தெளிவாகத் தடை செய்யவும்.
- மாறிகளின் (variables) ஒரே மாதிரியான சேர்க்கைகளைத் திரும்பத் திரும்பப் பயன்படுத்துவதைத் தவிர்க்கவும்.
- தொடர்ச்சியான அல்லது ஒரே மாதிரியான ID எண்களைத் தவிர்க்கவும்.
இது ஒருதலைப்பட்சமான தன்மையை (bias) நீக்கி, உங்கள் பேக்எண்ட் (backend) பல்வேறு மற்றும் யதார்த்தமான தரவுகளைக் கையாளுவதை உறுதி செய்கிறது.
உங்கள் தரவு திட்டமிட்டதாக இருந்தால் மட்டுமே AI வேகம் மதிப்பினை வழங்கும். இந்த generative models-களை நிர்வகிக்கும் கட்டுப்பாடுகளைக் குறியீடாக்குவதே ஒரு QA நிபுணராக உங்கள் பங்காகும்.
விருப்பமான கற்றல் சமூகம்: https://t.me/GyaanSetuAi