This study explores the potential of generative AI, specifically Large Language Models (LLMs), in automating unit test generation in Python 3.13. We analyze tests, both those created by programmers and those generated by LLM models, for fifty source code cases. Our main focus is on how the choice of model, the difficulty of the source code, and the prompting strategy influence the quality of the generated tests. The results show that AI models can help automate test creation for simple code, but their effectiveness decreases for more complex tasks. We introduce an embedding-based similarity analysis to assess how closely AI-generated tests resemble human-written ones, revealing that AI outputs often lack semantic diversity. The study also highlights the potential of AI models for rapid test prototyping, which can significantly speed up the software development cycle. However, further customization and training of the models on specific use cases is needed to achieve greater precision. Our findings provide practical insights into integrating LLMs into software testing workflows and emphasize the importance of prompt design and model selection.
LLMs (Large Language Models) have become increasingly important, with chatbots being widely used in commercial settings to assist employees and answer customer questions. To protect a company’s reputation and ensure compliance, it’s crucial that chatbots do not generate harmful content, even in the face of deliberate jailbreak attacks. Researchers propose various methods to secure LLMs, known as guardrails, to prevent harmful content generation and jailbreak attacks. This article aims to comprehensively analyze existing guardrail solutions and provide guidelines for selecting the optimal solution for specific scenarios. The study compared six different guardrail methods across three versions of LLMs (Mistral Large 24.02, Meta Llama 3-8B Instruct, Anthropic Claude 3.5 Sonnet), including two baseline approaches, two cloud-based solutions (AWS Guardrails, Azure AI Content Safety), and two other popular non-cloud solutions (NeMo by Nvidia and Llama Guard by Meta). Thirteen datasets were used for evaluation: ten representing harmful questions in jailbreak attacks and three with neutral prompts similar to harmful questions to check for excessive blocking. The best results were achieved by AWS Guardrails (averaged accuracy across models 96.8%) and NeMo (93.9%) The results clearly showed that using guardrails is essential when building commercial applications based on LLMs due to advancements in effective jailbreak attacks.