-
Notifications
You must be signed in to change notification settings - Fork 7
Description
Description
Instead of generating more of the same, the goal is to generate different but plausible data. Given a set of "good" examples, use an LLM to generate "bad" examples, edge cases, or adversarial inputs.
This is extremely valuable for testing, validation, and making systems more robust.
Example:
Testing: Given 100 examples of valid API requests, generate 1,000 invalid but plausible requests that should fail (e.g., malformed JSON, SQL injection attempts, inputs with incorrect data types, out-of-range values).
Model Validation: Given 100 polite user queries for a chatbot, generate 1,000 impolite, adversarial, or nonsensical queries to test the chatbot's safety and fallback mechanisms.
Code: Given a function and 10 "happy path" unit tests, generate 50 "edge case" tests (e.g., testing with empty lists, null values, very large numbers) that a human developer might forget.
Suggestions
This task requires a form of "creative negativity." The LLM can't just generate random garbage; it must generate inputs that are almost right but subtly wrong, or that target a specific, known vulnerability.
It requires the LLM to "think like an attacker" or "think like a QA tester," which involves understanding the rules of the system and then identifying plausible ways to break them.
Before start this issue suggest a solution and wait for the approval.