Hi Franz,
Evals are super important in agentic AI, and quite often, more of an afterthought. So it is good to see it seems you are thinking about this proactively.
Indeed, if you only have some ad hoc tests it will be quite hard to make decisions when designing the agent, and it will be hard to monitor quality during live usage.
The obvious issue that people think of is a lack of accuracy, but frankly another consideration could be cost: using very expensive models where simple models would have done the trick, as different use cases require models of different strength.
Also, lacking proper evals could negatively impact time-to-market. Without formal evaluation, you will see that PoCs will have a hard time to go live, and pilots will have hard time to scale, as users or stakeholders will get very nervous about very specific corner cases where performance is sub-optimal. Whereas we all know AI is a numbers game, you need to look across hundreds of cases or more, or worse, solving a corner case may negatively affect other cases.
Ok I realize I might be preaching to the choir here ;). In terms of patterns I wouldnt fixate on the availability of specific Pega versions (with the exception to making use of what is there OOTB) as there are plenty of open-source frameworks out there that could be combined with Pega agents, and the concepts and principles are more important. Here are two of them, looking for the community to chime in with further suggestions:
- Only manual tests is no test. As mentioned, there is little value to single case / manual testing only, you really need automated testing at scale. Assuming your use cases start with some key inputs and ends in an email single shot, you could start with reference-based testing. Based on suite of test cases consisting of reference inputs and ‘good’ answers, generate new outputs based on the inputs and compare. This could be simple keyword/edit distance based (using metrics like ROUGE, METEOR etc) or a semantic check allowing for different ways to say the same (BERTscore, or a LLM as a judge to compare against the reference).
- Only manual reference data will provide poor coverage. Once you get started with 1) you will soon find out that your test set of manual reference (inputs, emails) will be too small to provide good coverage. A common approach then is to move towards using synthetic data to expand the reference set. At first it is advisable to do this at design-time: with a very strong model generating reference pairs and double check them (or based on your use case, you may have a large sample of real input), and keep the good ones. Always make sure to store the lineage as well (that it was synthetically generated and with what config). If the process is reliable enough you may even generate reference data at run time during testing (as frameworks like RAGAS do in certain cases for RAGs).
An example framework could be DeepEval, I havent played with this repo but have a look: infinity-ai-agent-demonstrations/apps/deepeval-pega/README.md at master · pegasystems/infinity-ai-agent-demonstrations · GitHub
Another example a bit outside of your scope is what we have used in the AI Lab for evaluating various Knowledge Buddies/Agents using RAGAS plus synthetic data, see [2508.11758] Can we Evaluate RAGs with Synthetic Data?
Looking forward to more ideas from the community!