The interface

public interface BaseLLM {
  ModelResponse generate(GenerateRequest req);
  Stream generateStream(GenerateRequest req);
  int countTokens(String text);
  ModelInfo info();
  void close();
}
Advertisement

generate — the primary call

Blocking call. Returns a complete response. The runtime uses this for non-streaming turns and when it wants a full response before processing.

Advertisement

generateStream — incremental

Returns a Java Stream of deltas. Each delta may contain text fragments, tool-call fragments, or usage metrics. The runtime consumes lazily.