Skip to content

Testcontainers for testing GenAI apps :: Distributed Job Scheduling with JobRunr

Photo of Martin Ahrer
Hosted By
Martin A.

Details

We are excited to announce our next meetup on 10.02.2025. We will have Manuel de la Peña present "Testcontainers for testing GenAI apps" and Ronald Dehuysser present "A Java 8 lambda and JobRunr is all you need for distributed (batch) processing!".

We would like to thank Cloudflight Austria GmbH for supporting and hosting this event.

Also, this time we have another JetBrains product license to give away during our event. Thanks to JetBrains for being a long-time supporter.

::Testcontainers for testing GenAI apps::

Manuel de la Peña

Answers provided by LLMs are in natural language and non-deterministic. So using the current testing methods to verify them is difficult, as they are better suited to testing predictable values. However, we already have a tools for understanding non-deterministic answers in natural language: LLMs

The evolution of GenAI applications brings with it the challenge of developing testing methods that can effectively evaluate the complexity and subtlety of responses generated by advanced artificial intelligences.
The proposal to use an LLM as a Validator Agent represents a promising approach, paving the way towards a new era of software development and evaluation in the field of artificial intelligence. Over time, we hope to see more innovations that allow us to overcome the current challenges and maximize the potential of these transformative technologies.
This proposal involves defining detailed validation criteria and using an LLM as an “Evaluator” to determine if the responses meet the specified requirements. This approach can be applied to validate answers to specific questions, drawing on both general knowledge and especialised information. By incorporating detailed instructions and examples, an Evaluator can provide accurate and justified evaluations, offering clarity on why a response is considered correct or incorrect.
In this session we’ll leverage langchain4j to interact with LLMs, and Testcontainers Java to provision the runtime dependencies to use RAG.

::A Java 8 lambda and JobRunr is all you need for distributed (batch) processing!::

Ronald Dehuysser

Are you struggling with CPU-intensive tasks, high I/O work, or do you need to schedule background jobs without blocking the rest of your system? I often see teams building a scheduling solution themselves, severely underestimating the complexity of running jobs asynchronously. A costly endeavour, especially with a simple, free and open-source solution readily available.

During this fun session, I will introduce you to JobRunr: the ultimate open-source library for background processing in Java, recommended by ThoughtWorks. By transforming Java lambdas into distributed background tasks, JobRunr allows you to run any job at any time and on any JVM. We'll delve into its diverse features such as job persistence, automatic retries, scalability (hello k8s), and the integrated dashboard to provide you with a good grasp of the possibilities. Oh, and did you know it also works on GraalVM?

After this session, you’ll have a good idea of what JobRunr is, how it does its magic and how it will allow you to focus on delivering value to your end users instead of implementing scheduling over and over again.

The Speakers

::Manuel de la Peña::

Manuel is an OSS Software Engineer at Docker where he maintains "Testcontainers for Go". Since 2003, he has held various roles in different parts of the development process, starting in 2003 working for the regional public administration in Castilla-La Mancha (Spain) until 2007, then worked at more traditional consulting firms. In 2011, he transitioned to product-oriented and Open Source companies, where he has served as a support engineer, trainer, and Core Engineer at Liferay, as QA Tech lead at Liferay Cloud. From 2019 to 2022 he was involved in Engineering Productivity at Elastic as part of the Observability product, and since 2022 doing pure OSS at AtomicJar, which was acquired by Docker in Dec' 23. In every job he tries to improve the quality of the software products and processes from the automation and testing point of view.

::Ronald Dehuysser::

Meet Ronald Dehuysser, a software architect from Belgium and creator of JobRunr. Seamlessly integrating with Spring Boot, Micronaut, and Quarkus, JobRunr is Ronald's solution for efficient distributed background job processing.

When he's not working on open-source software, he is probably either rock climbing or sipping a fine Belgian Duvel beer.

Photo of Enterprise Java User Group Austria group
Enterprise Java User Group Austria
See more events
FREE