AI rule node: get rid of model type as record component
This commit is contained in:
parent
fd7faa5a9e
commit
82d2c1d93a
@ -15,7 +15,6 @@
|
|||||||
*/
|
*/
|
||||||
package org.thingsboard.server.common.data.ai.model;
|
package org.thingsboard.server.common.data.ai.model;
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
|
||||||
import com.fasterxml.jackson.annotation.JsonSubTypes;
|
import com.fasterxml.jackson.annotation.JsonSubTypes;
|
||||||
import com.fasterxml.jackson.annotation.JsonTypeInfo;
|
import com.fasterxml.jackson.annotation.JsonTypeInfo;
|
||||||
import org.thingsboard.server.common.data.ai.model.chat.AmazonBedrockChatModelConfig;
|
import org.thingsboard.server.common.data.ai.model.chat.AmazonBedrockChatModelConfig;
|
||||||
@ -74,7 +73,6 @@ public interface AiModelConfig {
|
|||||||
})
|
})
|
||||||
AiProviderConfig providerConfig();
|
AiProviderConfig providerConfig();
|
||||||
|
|
||||||
@JsonProperty("modelType")
|
|
||||||
AiModelType modelType();
|
AiModelType modelType();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -15,6 +15,7 @@
|
|||||||
*/
|
*/
|
||||||
package org.thingsboard.server.common.data.ai.model.chat;
|
package org.thingsboard.server.common.data.ai.model.chat;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
import dev.langchain4j.model.chat.ChatModel;
|
import dev.langchain4j.model.chat.ChatModel;
|
||||||
import org.thingsboard.server.common.data.ai.model.AiModelConfig;
|
import org.thingsboard.server.common.data.ai.model.AiModelConfig;
|
||||||
import org.thingsboard.server.common.data.ai.model.AiModelType;
|
import org.thingsboard.server.common.data.ai.model.AiModelType;
|
||||||
@ -28,6 +29,7 @@ public sealed interface AiChatModelConfig<C extends AiChatModelConfig<C>> extend
|
|||||||
ChatModel configure(Langchain4jChatModelConfigurer configurer);
|
ChatModel configure(Langchain4jChatModelConfigurer configurer);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@JsonProperty(value = "modelType", access = JsonProperty.Access.READ_ONLY)
|
||||||
default AiModelType modelType() {
|
default AiModelType modelType() {
|
||||||
return AiModelType.CHAT;
|
return AiModelType.CHAT;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -23,12 +23,10 @@ import jakarta.validation.constraints.NotNull;
|
|||||||
import jakarta.validation.constraints.Positive;
|
import jakarta.validation.constraints.Positive;
|
||||||
import jakarta.validation.constraints.PositiveOrZero;
|
import jakarta.validation.constraints.PositiveOrZero;
|
||||||
import lombok.With;
|
import lombok.With;
|
||||||
import org.thingsboard.server.common.data.ai.model.AiModelType;
|
|
||||||
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
||||||
import org.thingsboard.server.common.data.ai.provider.AmazonBedrockProviderConfig;
|
import org.thingsboard.server.common.data.ai.provider.AmazonBedrockProviderConfig;
|
||||||
|
|
||||||
public record AmazonBedrockChatModelConfig(
|
public record AmazonBedrockChatModelConfig(
|
||||||
AiModelType modelType,
|
|
||||||
@NotNull @Valid AmazonBedrockProviderConfig providerConfig,
|
@NotNull @Valid AmazonBedrockProviderConfig providerConfig,
|
||||||
@NotBlank String modelId,
|
@NotBlank String modelId,
|
||||||
@PositiveOrZero Double temperature,
|
@PositiveOrZero Double temperature,
|
||||||
|
|||||||
@ -23,12 +23,10 @@ import jakarta.validation.constraints.NotNull;
|
|||||||
import jakarta.validation.constraints.Positive;
|
import jakarta.validation.constraints.Positive;
|
||||||
import jakarta.validation.constraints.PositiveOrZero;
|
import jakarta.validation.constraints.PositiveOrZero;
|
||||||
import lombok.With;
|
import lombok.With;
|
||||||
import org.thingsboard.server.common.data.ai.model.AiModelType;
|
|
||||||
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
||||||
import org.thingsboard.server.common.data.ai.provider.AnthropicProviderConfig;
|
import org.thingsboard.server.common.data.ai.provider.AnthropicProviderConfig;
|
||||||
|
|
||||||
public record AnthropicChatModelConfig(
|
public record AnthropicChatModelConfig(
|
||||||
AiModelType modelType,
|
|
||||||
@NotNull @Valid AnthropicProviderConfig providerConfig,
|
@NotNull @Valid AnthropicProviderConfig providerConfig,
|
||||||
@NotBlank String modelId,
|
@NotBlank String modelId,
|
||||||
@PositiveOrZero Double temperature,
|
@PositiveOrZero Double temperature,
|
||||||
|
|||||||
@ -23,12 +23,10 @@ import jakarta.validation.constraints.NotNull;
|
|||||||
import jakarta.validation.constraints.Positive;
|
import jakarta.validation.constraints.Positive;
|
||||||
import jakarta.validation.constraints.PositiveOrZero;
|
import jakarta.validation.constraints.PositiveOrZero;
|
||||||
import lombok.With;
|
import lombok.With;
|
||||||
import org.thingsboard.server.common.data.ai.model.AiModelType;
|
|
||||||
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
||||||
import org.thingsboard.server.common.data.ai.provider.AzureOpenAiProviderConfig;
|
import org.thingsboard.server.common.data.ai.provider.AzureOpenAiProviderConfig;
|
||||||
|
|
||||||
public record AzureOpenAiChatModelConfig(
|
public record AzureOpenAiChatModelConfig(
|
||||||
AiModelType modelType,
|
|
||||||
@NotNull @Valid AzureOpenAiProviderConfig providerConfig,
|
@NotNull @Valid AzureOpenAiProviderConfig providerConfig,
|
||||||
@NotBlank String modelId,
|
@NotBlank String modelId,
|
||||||
@PositiveOrZero Double temperature,
|
@PositiveOrZero Double temperature,
|
||||||
|
|||||||
@ -23,12 +23,10 @@ import jakarta.validation.constraints.NotNull;
|
|||||||
import jakarta.validation.constraints.Positive;
|
import jakarta.validation.constraints.Positive;
|
||||||
import jakarta.validation.constraints.PositiveOrZero;
|
import jakarta.validation.constraints.PositiveOrZero;
|
||||||
import lombok.With;
|
import lombok.With;
|
||||||
import org.thingsboard.server.common.data.ai.model.AiModelType;
|
|
||||||
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
||||||
import org.thingsboard.server.common.data.ai.provider.GitHubModelsProviderConfig;
|
import org.thingsboard.server.common.data.ai.provider.GitHubModelsProviderConfig;
|
||||||
|
|
||||||
public record GitHubModelsChatModelConfig(
|
public record GitHubModelsChatModelConfig(
|
||||||
AiModelType modelType,
|
|
||||||
@NotNull @Valid GitHubModelsProviderConfig providerConfig,
|
@NotNull @Valid GitHubModelsProviderConfig providerConfig,
|
||||||
@NotBlank String modelId,
|
@NotBlank String modelId,
|
||||||
@PositiveOrZero Double temperature,
|
@PositiveOrZero Double temperature,
|
||||||
|
|||||||
@ -23,12 +23,10 @@ import jakarta.validation.constraints.NotNull;
|
|||||||
import jakarta.validation.constraints.Positive;
|
import jakarta.validation.constraints.Positive;
|
||||||
import jakarta.validation.constraints.PositiveOrZero;
|
import jakarta.validation.constraints.PositiveOrZero;
|
||||||
import lombok.With;
|
import lombok.With;
|
||||||
import org.thingsboard.server.common.data.ai.model.AiModelType;
|
|
||||||
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
||||||
import org.thingsboard.server.common.data.ai.provider.GoogleAiGeminiProviderConfig;
|
import org.thingsboard.server.common.data.ai.provider.GoogleAiGeminiProviderConfig;
|
||||||
|
|
||||||
public record GoogleAiGeminiChatModelConfig(
|
public record GoogleAiGeminiChatModelConfig(
|
||||||
AiModelType modelType,
|
|
||||||
@NotNull @Valid GoogleAiGeminiProviderConfig providerConfig,
|
@NotNull @Valid GoogleAiGeminiProviderConfig providerConfig,
|
||||||
@NotBlank String modelId,
|
@NotBlank String modelId,
|
||||||
@PositiveOrZero Double temperature,
|
@PositiveOrZero Double temperature,
|
||||||
|
|||||||
@ -23,12 +23,10 @@ import jakarta.validation.constraints.NotNull;
|
|||||||
import jakarta.validation.constraints.Positive;
|
import jakarta.validation.constraints.Positive;
|
||||||
import jakarta.validation.constraints.PositiveOrZero;
|
import jakarta.validation.constraints.PositiveOrZero;
|
||||||
import lombok.With;
|
import lombok.With;
|
||||||
import org.thingsboard.server.common.data.ai.model.AiModelType;
|
|
||||||
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
||||||
import org.thingsboard.server.common.data.ai.provider.GoogleVertexAiGeminiProviderConfig;
|
import org.thingsboard.server.common.data.ai.provider.GoogleVertexAiGeminiProviderConfig;
|
||||||
|
|
||||||
public record GoogleVertexAiGeminiChatModelConfig(
|
public record GoogleVertexAiGeminiChatModelConfig(
|
||||||
AiModelType modelType,
|
|
||||||
@NotNull @Valid GoogleVertexAiGeminiProviderConfig providerConfig,
|
@NotNull @Valid GoogleVertexAiGeminiProviderConfig providerConfig,
|
||||||
@NotBlank String modelId,
|
@NotBlank String modelId,
|
||||||
@PositiveOrZero Double temperature,
|
@PositiveOrZero Double temperature,
|
||||||
|
|||||||
@ -23,12 +23,10 @@ import jakarta.validation.constraints.NotNull;
|
|||||||
import jakarta.validation.constraints.Positive;
|
import jakarta.validation.constraints.Positive;
|
||||||
import jakarta.validation.constraints.PositiveOrZero;
|
import jakarta.validation.constraints.PositiveOrZero;
|
||||||
import lombok.With;
|
import lombok.With;
|
||||||
import org.thingsboard.server.common.data.ai.model.AiModelType;
|
|
||||||
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
||||||
import org.thingsboard.server.common.data.ai.provider.MistralAiProviderConfig;
|
import org.thingsboard.server.common.data.ai.provider.MistralAiProviderConfig;
|
||||||
|
|
||||||
public record MistralAiChatModelConfig(
|
public record MistralAiChatModelConfig(
|
||||||
AiModelType modelType,
|
|
||||||
@NotNull @Valid MistralAiProviderConfig providerConfig,
|
@NotNull @Valid MistralAiProviderConfig providerConfig,
|
||||||
@NotBlank String modelId,
|
@NotBlank String modelId,
|
||||||
@PositiveOrZero Double temperature,
|
@PositiveOrZero Double temperature,
|
||||||
|
|||||||
@ -23,12 +23,10 @@ import jakarta.validation.constraints.NotNull;
|
|||||||
import jakarta.validation.constraints.Positive;
|
import jakarta.validation.constraints.Positive;
|
||||||
import jakarta.validation.constraints.PositiveOrZero;
|
import jakarta.validation.constraints.PositiveOrZero;
|
||||||
import lombok.With;
|
import lombok.With;
|
||||||
import org.thingsboard.server.common.data.ai.model.AiModelType;
|
|
||||||
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
import org.thingsboard.server.common.data.ai.provider.AiProvider;
|
||||||
import org.thingsboard.server.common.data.ai.provider.OpenAiProviderConfig;
|
import org.thingsboard.server.common.data.ai.provider.OpenAiProviderConfig;
|
||||||
|
|
||||||
public record OpenAiChatModelConfig(
|
public record OpenAiChatModelConfig(
|
||||||
AiModelType modelType,
|
|
||||||
@NotNull @Valid OpenAiProviderConfig providerConfig,
|
@NotNull @Valid OpenAiProviderConfig providerConfig,
|
||||||
@NotBlank String modelId,
|
@NotBlank String modelId,
|
||||||
@PositiveOrZero Double temperature,
|
@PositiveOrZero Double temperature,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user