Interface SpringAiChatEndpointBuilderFactory.AdvancedSpringAiChatEndpointBuilder

All Superinterfaces:
org.apache.camel.builder.EndpointProducerBuilder, org.apache.camel.EndpointProducerResolver
Enclosing interface:
SpringAiChatEndpointBuilderFactory

public static interface SpringAiChatEndpointBuilderFactory.AdvancedSpringAiChatEndpointBuilder extends org.apache.camel.builder.EndpointProducerBuilder
Advanced builder for endpoint for the Spring AI Chat component.
  • Method Details

    • basic

    • lazyStartProducer

      default SpringAiChatEndpointBuilderFactory.AdvancedSpringAiChatEndpointBuilder lazyStartProducer(boolean lazyStartProducer)
      Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing. The option is a: boolean type. Default: false Group: producer (advanced)
      Parameters:
      lazyStartProducer - the value to set
      Returns:
      the dsl builder
    • lazyStartProducer

      Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing. The option will be converted to a boolean type. Default: false Group: producer (advanced)
      Parameters:
      lazyStartProducer - the value to set
      Returns:
      the dsl builder
    • advisors

      default SpringAiChatEndpointBuilderFactory.AdvancedSpringAiChatEndpointBuilder advisors(List<org.springframework.ai.chat.client.advisor.api.Advisor> advisors)
      List of custom advisors to add to the ChatClient. These advisors will be added after the built-in advisors (SimpleLogger, SafeGuard, ChatMemory, QuestionAnswer) in the order they are provided in the list. The option is a: java.util.List<org.springframework.ai.chat.client.advisor.api.Advisor> type. Group: advanced
      Parameters:
      advisors - the value to set
      Returns:
      the dsl builder
    • advisors

      List of custom advisors to add to the ChatClient. These advisors will be added after the built-in advisors (SimpleLogger, SafeGuard, ChatMemory, QuestionAnswer) in the order they are provided in the list. The option will be converted to a java.util.List<org.springframework.ai.chat.client.advisor.api.Advisor> type. Group: advanced
      Parameters:
      advisors - the value to set
      Returns:
      the dsl builder
    • chatMemory

      default SpringAiChatEndpointBuilderFactory.AdvancedSpringAiChatEndpointBuilder chatMemory(org.springframework.ai.chat.memory.ChatMemory chatMemory)
      ChatMemory instance for maintaining conversation history across requests. When provided, conversation context will be automatically managed using MessageChatMemoryAdvisor. The option is a: org.springframework.ai.chat.memory.ChatMemory type. Group: advanced
      Parameters:
      chatMemory - the value to set
      Returns:
      the dsl builder
    • chatMemory

      ChatMemory instance for maintaining conversation history across requests. When provided, conversation context will be automatically managed using MessageChatMemoryAdvisor. The option will be converted to a org.springframework.ai.chat.memory.ChatMemory type. Group: advanced
      Parameters:
      chatMemory - the value to set
      Returns:
      the dsl builder
    • chatMemoryVectorStore

      default SpringAiChatEndpointBuilderFactory.AdvancedSpringAiChatEndpointBuilder chatMemoryVectorStore(org.springframework.ai.vectorstore.VectorStore chatMemoryVectorStore)
      VectorStore instance for maintaining conversation history using semantic search. When provided, conversation context will be automatically managed using VectorStoreChatMemoryAdvisor. This is an alternative to chatMemory that uses vector embeddings for long-term memory with semantic retrieval. The option is a: org.springframework.ai.vectorstore.VectorStore type. Group: advanced
      Parameters:
      chatMemoryVectorStore - the value to set
      Returns:
      the dsl builder
    • chatMemoryVectorStore

      default SpringAiChatEndpointBuilderFactory.AdvancedSpringAiChatEndpointBuilder chatMemoryVectorStore(String chatMemoryVectorStore)
      VectorStore instance for maintaining conversation history using semantic search. When provided, conversation context will be automatically managed using VectorStoreChatMemoryAdvisor. This is an alternative to chatMemory that uses vector embeddings for long-term memory with semantic retrieval. The option will be converted to a org.springframework.ai.vectorstore.VectorStore type. Group: advanced
      Parameters:
      chatMemoryVectorStore - the value to set
      Returns:
      the dsl builder
    • entityClass

      The Java class to use for entity response conversion using ChatClient.entity(Class). When specified, the response will be automatically converted to this type instead of returning a String. The option is a: java.lang.Class<java.lang.Object> type. Group: advanced
      Parameters:
      entityClass - the value to set
      Returns:
      the dsl builder
    • entityClass

      The Java class to use for entity response conversion using ChatClient.entity(Class). When specified, the response will be automatically converted to this type instead of returning a String. The option will be converted to a java.lang.Class<java.lang.Object> type. Group: advanced
      Parameters:
      entityClass - the value to set
      Returns:
      the dsl builder
    • maxFileSize

      Maximum file size in bytes for multimodal content (images, audio, PDFs, etc.). Files exceeding this size will be rejected with an exception. Default is 1048576 bytes (1MB). Set to 0 to disable size checking (not recommended). The option is a: long type. Default: 1048576 Group: advanced
      Parameters:
      maxFileSize - the value to set
      Returns:
      the dsl builder
    • maxFileSize

      Maximum file size in bytes for multimodal content (images, audio, PDFs, etc.). Files exceeding this size will be rejected with an exception. Default is 1048576 bytes (1MB). Set to 0 to disable size checking (not recommended). The option will be converted to a long type. Default: 1048576 Group: advanced
      Parameters:
      maxFileSize - the value to set
      Returns:
      the dsl builder
    • maxTokens

      Maximum tokens in the response. The option is a: java.lang.Integer type. Group: advanced
      Parameters:
      maxTokens - the value to set
      Returns:
      the dsl builder
    • maxTokens

      Maximum tokens in the response. The option will be converted to a java.lang.Integer type. Group: advanced
      Parameters:
      maxTokens - the value to set
      Returns:
      the dsl builder
    • outputClass

      The Java class to use for BEAN output format conversion. Required when outputFormat is BEAN. The option is a: java.lang.Class<java.lang.Object> type. Group: advanced
      Parameters:
      outputClass - the value to set
      Returns:
      the dsl builder
    • outputClass

      The Java class to use for BEAN output format conversion. Required when outputFormat is BEAN. The option will be converted to a java.lang.Class<java.lang.Object> type. Group: advanced
      Parameters:
      outputClass - the value to set
      Returns:
      the dsl builder
    • outputFormat

      The output format for structured output conversion (BEAN, MAP, LIST). Used in conjunction with outputClass for BEAN format. The option is a: java.lang.String type. Group: advanced
      Parameters:
      outputFormat - the value to set
      Returns:
      the dsl builder
    • structuredOutputConverter

      default SpringAiChatEndpointBuilderFactory.AdvancedSpringAiChatEndpointBuilder structuredOutputConverter(org.springframework.ai.converter.StructuredOutputConverter<Object> structuredOutputConverter)
      A StructuredOutputConverter for converting the chat response to structured output (e.g., BeanOutputConverter, MapOutputConverter, ListOutputConverter). When provided, the converter will be used to transform the response into the desired format. The option is a: org.springframework.ai.converter.StructuredOutputConverter<java.lang.Object> type. Group: advanced
      Parameters:
      structuredOutputConverter - the value to set
      Returns:
      the dsl builder
    • structuredOutputConverter

      default SpringAiChatEndpointBuilderFactory.AdvancedSpringAiChatEndpointBuilder structuredOutputConverter(String structuredOutputConverter)
      A StructuredOutputConverter for converting the chat response to structured output (e.g., BeanOutputConverter, MapOutputConverter, ListOutputConverter). When provided, the converter will be used to transform the response into the desired format. The option will be converted to a org.springframework.ai.converter.StructuredOutputConverter<java.lang.Object> type. Group: advanced
      Parameters:
      structuredOutputConverter - the value to set
      Returns:
      the dsl builder
    • systemMetadata

      Metadata to attach to system messages. This metadata can be used for tracking system prompt versions, model configurations, or other application-specific data. The option is a: java.util.Map<java.lang.String, java.lang.Object> type. Group: advanced
      Parameters:
      systemMetadata - the value to set
      Returns:
      the dsl builder
    • systemMetadata

      Metadata to attach to system messages. This metadata can be used for tracking system prompt versions, model configurations, or other application-specific data. The option will be converted to a java.util.Map<java.lang.String, java.lang.Object> type. Group: advanced
      Parameters:
      systemMetadata - the value to set
      Returns:
      the dsl builder
    • temperature

      Temperature parameter for response randomness (0.0-2.0). The option is a: java.lang.Double type. Group: advanced
      Parameters:
      temperature - the value to set
      Returns:
      the dsl builder
    • temperature

      Temperature parameter for response randomness (0.0-2.0). The option will be converted to a java.lang.Double type. Group: advanced
      Parameters:
      temperature - the value to set
      Returns:
      the dsl builder
    • topKSampling

      Top K parameter for sampling. The option is a: java.lang.Integer type. Group: advanced
      Parameters:
      topKSampling - the value to set
      Returns:
      the dsl builder
    • topKSampling

      Top K parameter for sampling. The option will be converted to a java.lang.Integer type. Group: advanced
      Parameters:
      topKSampling - the value to set
      Returns:
      the dsl builder
    • topP

      Top P parameter for nucleus sampling. The option is a: java.lang.Double type. Group: advanced
      Parameters:
      topP - the value to set
      Returns:
      the dsl builder
    • topP

      Top P parameter for nucleus sampling. The option will be converted to a java.lang.Double type. Group: advanced
      Parameters:
      topP - the value to set
      Returns:
      the dsl builder
    • userMetadata

      Metadata to attach to user messages. This metadata can be used for tracking conversation context, message identifiers, or other application-specific data. The option is a: java.util.Map<java.lang.String, java.lang.Object> type. Group: advanced
      Parameters:
      userMetadata - the value to set
      Returns:
      the dsl builder
    • userMetadata

      Metadata to attach to user messages. This metadata can be used for tracking conversation context, message identifiers, or other application-specific data. The option will be converted to a java.util.Map<java.lang.String, java.lang.Object> type. Group: advanced
      Parameters:
      userMetadata - the value to set
      Returns:
      the dsl builder
    • safeguardOrder

      Order of execution for SafeGuard advisor. Lower numbers execute first. Default is 0. The option is a: java.lang.Integer type. Group: security (advanced)
      Parameters:
      safeguardOrder - the value to set
      Returns:
      the dsl builder
    • safeguardOrder

      Order of execution for SafeGuard advisor. Lower numbers execute first. Default is 0. The option will be converted to a java.lang.Integer type. Group: security (advanced)
      Parameters:
      safeguardOrder - the value to set
      Returns:
      the dsl builder