Class ObservationChatModelListener

java.lang.Object
dev.langchain4j.observation.listener.ObservationChatModelListener
All Implemented Interfaces:
dev.langchain4j.model.chat.listener.ChatModelListener

@Experimental public class ObservationChatModelListener extends Object implements dev.langchain4j.model.chat.listener.ChatModelListener
Will use observations and micrometer metrics to generate telemetry based on the ChatModelListener lifecycle.

Observations will handle request durations and tracing. Observation lifecycle and context management is handled here.

There is a Micrometer DistributionSummary responsible to record token usage.

  • Constructor Summary

    Constructors
    Constructor
    Description
    ObservationChatModelListener(io.micrometer.observation.ObservationRegistry observationRegistry, io.micrometer.core.instrument.MeterRegistry meterRegistry)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    onError(dev.langchain4j.model.chat.listener.ChatModelErrorContext errorContext)
     
    void
    onRequest(dev.langchain4j.model.chat.listener.ChatModelRequestContext requestContext)
     
    void
    onResponse(dev.langchain4j.model.chat.listener.ChatModelResponseContext responseContext)
     

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ObservationChatModelListener

      public ObservationChatModelListener(io.micrometer.observation.ObservationRegistry observationRegistry, io.micrometer.core.instrument.MeterRegistry meterRegistry)
  • Method Details

    • onRequest

      public void onRequest(dev.langchain4j.model.chat.listener.ChatModelRequestContext requestContext)
      Specified by:
      onRequest in interface dev.langchain4j.model.chat.listener.ChatModelListener
    • onResponse

      public void onResponse(dev.langchain4j.model.chat.listener.ChatModelResponseContext responseContext)
      Specified by:
      onResponse in interface dev.langchain4j.model.chat.listener.ChatModelListener
    • onError

      public void onError(dev.langchain4j.model.chat.listener.ChatModelErrorContext errorContext)
      Specified by:
      onError in interface dev.langchain4j.model.chat.listener.ChatModelListener