Class LiveServerContent

  • All Implemented Interfaces:

    
    public abstract class LiveServerContent
    extends JsonSerializable
                        

    Incremental server update generated by the model in response to client messages.

    Content is generated as quickly as possible, and not in real time. Clients may choose to buffer and play it out in real time.

    • Constructor Detail

      • LiveServerContent

        LiveServerContent()
    • Method Detail

      • modelTurn

         abstract Optional<Content> modelTurn()

        The content that the model has generated as part of the current conversation with the user.

      • turnComplete

         abstract Optional<Boolean> turnComplete()

        If true, indicates that the model is done generating. Generation will only start in response to additional client messages. Can be set alongside `content`, indicating that the `content` is the last in the turn.

      • interrupted

         abstract Optional<Boolean> interrupted()

        If true, indicates that a client message has interrupted current model generation. If the client is playing out the content in realtime, this is a good signal to stop and empty the current queue.

      • generationComplete

         abstract Optional<Boolean> generationComplete()

        If true, indicates that the model is done generating. When model is interrupted while generating there will be no generation_complete message in interrupted turn, it will go through interrupted >turn_complete. When model assumes realtime playback there will be delay between generation_complete and turn_complete that is caused by model waiting for playback to finish. If true, indicates that the model has finished generating all content. This is a signal to the client that it can stop sending messages.

      • inputTranscription

         abstract Optional<Transcription> inputTranscription()

        Input transcription. The transcription is independent to the model turn which means it doesn’t imply any ordering between transcription and model turn.

      • outputTranscription

         abstract Optional<Transcription> outputTranscription()

        Output transcription. The transcription is independent to the model turn which means it doesn’t imply any ordering between transcription and model turn.

      • waitingForInput

         abstract Optional<Boolean> waitingForInput()

        If true, indicates that the model is not generating content because it is waiting for more input from the user, e.g. because it expects the user to continue talking.