Compare better prompts without one fake winner You let GEPA reflect on failures and change optimizable components. A Pareto frontier keeps honest tradeoffs between quality, cost, latency, and brevity visible. java academy academy/topics/gepa-pareto-artifacts website/content-src/academy/course.mjs academy Compare better prompts without one fake winner
Unit 8 · Measure and improve AI quality

Compare better prompts without one fake winner

You let GEPA reflect on failures and change optimizable components. A Pareto frontier keeps honest tradeoffs between quality, cost, latency, and brevity visible.

AxGEPA12 focused minutesNot started
Unit example (nearest native match)

See the idea in context

var engine = new AxGEPA(reflectionClient, Map.of());
var result = engine.optimize(request, evaluator);
Run itIn your own project
// Gradle (build.gradle):
implementation 'dev.axllm:ax:24.0.15'
// Maven (pom.xml):
<dependency>
  <groupId>dev.axllm</groupId>
  <artifactId>ax</artifactId>
  <version>24.0.15</version>
</dependency>

import dev.axllm.ax.Ax;
import java.util.Map;

public class QuickStart {
  public static void main(String[] args) throws Exception {
    var llm = Ax.ai("openai", Map.of("apiKey", System.getenv("OPENAI_API_KEY")));
    var classify = Ax.ax("review:string -> sentiment:class \"positive, negative, neutral\"");
    var result = classify.forward(llm, Map.of(
      "review", "Useful and boring in the best way."
    ));

    System.out.println("sentiment: " + result.get("sentiment"));
  }
}

Set OPENAI_APIKEY in your environment before running provider-backed code.

In the ax repo

From a clone of the ax repo:

npm run example -- java src/examples/java/optimization/AxgenOptimizationExample.java
Active practice

Show that you can use it

Answer 2 in a row to learn this · attempt 1
Keep exploring

Source-backed follow-up