𝗣𝗿𝗼𝗺𝗽𝘁 𝗘𝗻𝗴𝗶𝗻𝗲𝗲𝗿𝗶𝗻𝗴 𝗳𝗼𝗿 𝗦𝘆𝗻𝘁𝗵𝗲𝘁𝗶𝗰 𝗗𝗮𝘁𝗮
सिंथेटिक डेटा तयार करण्यासाठी LLMs चा वापर करणे ही QA टीम्ससाठी एक लोकप्रिय रणनीती आहे. तुम्ही काही सेकंदात शेकडो जटिल रेकॉर्ड्स तयार करू शकता.
परंतु, सामान्य (generic) प्रॉम्प्ट्स एका जाळ्यात अडकवू शकतात. जर तुम्ही LLM ला "५० टेस्ट युजर्स तयार करा" असे विचारले, तर ते तुम्हाला अंदाज लावण्यासारखा आणि पुनरावृत्ती होणारा डेटा देईल. यामुळे कव्हरेजचा एक खोटा आभास निर्माण होतो. तुम्हाला असे अनेक रेकॉर्ड्स मिळतात जे फक्त "हॅपी पाथ" (happy path) टेस्ट करतात, परंतु महत्त्वाचे एज केसेस (edge cases) आणि बिझनेस लॉजिक सुटून जाते.
हे सुधारण्यासाठी, तुम्हाला केवळ 'रिक्वेस्टर' (requester) न राहता 'ऑर्केस्ट्रेटर' (orchestrator) बनावे लागेल. तुम्हाला तुमच्या प्रॉम्प्ट इंजिनीअरिंगमध्ये थेट टेस्टिंग तत्त्वे लागू करावी लागतील.
तुमच्या डेटाची गुणवत्ता सुधारण्यासाठी या तीन पॅटर्नचा वापर करा:
१. इक्विव्हॅलन्स पार्टीशनिंग आणि बाउंड्री व्हॅल्यू अनालिसिस (Equivalence Partitioning and Boundary Value Analysis) डेटा मागण्याऐवजी, LLM ला प्रथम टेस्ट क्लासेस मॅप करण्यास भाग पाडा. 'चेन-ऑफ-थॉट' (Chain-of-Thought) प्रॉम्प्टिंगचा वापर करा.
- तुमची भूमिका 'Senior QA Engineer' म्हणून परिभाषित करा.
- विशिष्ट बिझनेस रूल्स द्या (उदा. कूपन मर्यादा किंवा किमान खर्च).
- सर्व वैध (valid) आणि अवैध (invalid) इक्विव्हॅलन्स क्लासेस एका टेबलमध्ये सूचीबद्ध करण्यास LLM ला सूचना द्या.
- प्रत्येक ओळखलेल्या सिनेरिओसाठी नेमका एक JSON पेलोड (payload) मागवा.
यामुळे तुम्ही अनावश्यक रेकॉर्ड्सवर जागा वाया न घालवता, $९९.९९ विरुद्ध $१००.०० सारखे नेमके ट्रान्झिशन पॉइंट्स टेस्ट करू शकता याची खात्री मिळते.
२. स्टेट ट्रान्झिशन टेस्टिंग (State Transition Testing) पेमेंट फ्लो किंवा ऑर्डर मॅनेजमेंट सारख्या सिस्टमसाठी, डेटाने लाइफसायकलच्या विविध टप्प्यांचे प्रतिबिंब उमटवणे आवश्यक आहे.
- सर्व संभाव्य स्टेट्सची यादी द्या (उदा. Created, Paid, Shipped, Delivered).
- 'स्टेट ट्रान्झिशन मॅट्रिक्स' कव्हर करणारा CSV तयार करण्यास LLM ला सांगा.
- तीन प्रकारचे फ्लो मागवा: लिनिअर (Linear - वैध), एक्सेप्शन (Exception - विचलन), आणि व्हायोलेशन (Violation - अवैध ट्रान्झिशन्स).
- प्रत्येक युनिक स्टेट कॉम्बिनेशनसाठी फक्त एकच रो (row) तयार करण्याचा नियम सेट करा.
यामुळे डुप्लिकेट रेकॉर्ड्स टाळले जातात आणि निगेटिव्ह टेस्ट केसेस तयार करण्यास मदत होते.
३. व्हेरिएन्स कंट्रोल आणि निगेटिव्ह प्रॉम्प्टिंग (Variance Control and Negative Prompting) LLMs अनेकदा एकसारखा (homogeneous) डेटा तयार करतात, जसे की तेच प्रदेश किंवा वयोगट वापरणे. हे थांबवण्यासाठी 'निगेटिव्ह प्रॉम्प्टिंग'चा वापर करा.
- वितरणासाठी स्पष्ट आवश्यकता सेट करा (उदा. विशिष्ट वयोगट किंवा भौगोलिक प्रदेश).
- एक "PROHIBITIONS" (प्रतिबंध) विभाग जोडा.
- "John Doe" सारखी सामान्य नावे स्पष्टपणे प्रतिबंधित करा.
- व्हेरिएबल्सचे तेच ते कॉम्बिनेशन पुन्हा वापरण्यास मनाई करा.
- क्रमिक (sequential) किंवा सारख्याच ID नंबर वापरण्यास मनाई करा.
यामुळे बायस (bias) दूर होतो आणि तुमचा बॅकएंड विविध आणि वास्तववादी डेटा हाताळेल याची खात्री मिळते.
AI चा वेग तेव्हाच उपयुक्त ठरतो जेव्हा तुमचा डेटा हेतुपुरस्सर (intentional) असतो. QA प्रोफेशनल म्हणून तुमची भूमिका या जनरेटिव्ह मॉडेल्सना नियंत्रित करणाऱ्या मर्यादांचे (constraints) कोडिंग करणे ही आहे.
ऐच्छिक लर्निंग कम्युनिटी: https://t.me/GyaanSetuAi