//go:build !ignore_autogenerated

/*
Copyright 2026 vLLM Semantic Router Contributors.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

// Code generated by controller-gen. DO NOT EDIT.

package v1alpha1

import (
	"k8s.io/api/core/v1"
	apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	"k8s.io/apimachinery/pkg/runtime"
)

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *APIConfig) DeepCopyInto(out *APIConfig) {
	*out = *in
	if in.BatchClassification != nil {
		in, out := &in.BatchClassification, &out.BatchClassification
		*out = new(BatchClassificationConfig)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIConfig.
func (in *APIConfig) DeepCopy() *APIConfig {
	if in == nil {
		return nil
	}
	out := new(APIConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *AutoscalingSpec) DeepCopyInto(out *AutoscalingSpec) {
	*out = *in
	if in.Enabled != nil {
		in, out := &in.Enabled, &out.Enabled
		*out = new(bool)
		**out = **in
	}
	if in.MinReplicas != nil {
		in, out := &in.MinReplicas, &out.MinReplicas
		*out = new(int32)
		**out = **in
	}
	if in.MaxReplicas != nil {
		in, out := &in.MaxReplicas, &out.MaxReplicas
		*out = new(int32)
		**out = **in
	}
	if in.TargetCPUUtilizationPercentage != nil {
		in, out := &in.TargetCPUUtilizationPercentage, &out.TargetCPUUtilizationPercentage
		*out = new(int32)
		**out = **in
	}
	if in.TargetMemoryUtilizationPercentage != nil {
		in, out := &in.TargetMemoryUtilizationPercentage, &out.TargetMemoryUtilizationPercentage
		*out = new(int32)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscalingSpec.
func (in *AutoscalingSpec) DeepCopy() *AutoscalingSpec {
	if in == nil {
		return nil
	}
	out := new(AutoscalingSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *BatchClassificationConfig) DeepCopyInto(out *BatchClassificationConfig) {
	*out = *in
	if in.Metrics != nil {
		in, out := &in.Metrics, &out.Metrics
		*out = new(BatchMetricsConfig)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BatchClassificationConfig.
func (in *BatchClassificationConfig) DeepCopy() *BatchClassificationConfig {
	if in == nil {
		return nil
	}
	out := new(BatchClassificationConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *BatchMetricsConfig) DeepCopyInto(out *BatchMetricsConfig) {
	*out = *in
	if in.DurationBuckets != nil {
		in, out := &in.DurationBuckets, &out.DurationBuckets
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.SizeBuckets != nil {
		in, out := &in.SizeBuckets, &out.SizeBuckets
		*out = make([]int, len(*in))
		copy(*out, *in)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BatchMetricsConfig.
func (in *BatchMetricsConfig) DeepCopy() *BatchMetricsConfig {
	if in == nil {
		return nil
	}
	out := new(BatchMetricsConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CategoryModelConfig) DeepCopyInto(out *CategoryModelConfig) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CategoryModelConfig.
func (in *CategoryModelConfig) DeepCopy() *CategoryModelConfig {
	if in == nil {
		return nil
	}
	out := new(CategoryModelConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ClassifierConfig) DeepCopyInto(out *ClassifierConfig) {
	*out = *in
	if in.CategoryModel != nil {
		in, out := &in.CategoryModel, &out.CategoryModel
		*out = new(CategoryModelConfig)
		**out = **in
	}
	if in.PIIModel != nil {
		in, out := &in.PIIModel, &out.PIIModel
		*out = new(PIIModelConfig)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClassifierConfig.
func (in *ClassifierConfig) DeepCopy() *ClassifierConfig {
	if in == nil {
		return nil
	}
	out := new(ClassifierConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ComplexityCandidates) DeepCopyInto(out *ComplexityCandidates) {
	*out = *in
	if in.Candidates != nil {
		in, out := &in.Candidates, &out.Candidates
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComplexityCandidates.
func (in *ComplexityCandidates) DeepCopy() *ComplexityCandidates {
	if in == nil {
		return nil
	}
	out := new(ComplexityCandidates)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ComplexityRulesConfig) DeepCopyInto(out *ComplexityRulesConfig) {
	*out = *in
	in.Hard.DeepCopyInto(&out.Hard)
	in.Easy.DeepCopyInto(&out.Easy)
	if in.Composer != nil {
		in, out := &in.Composer, &out.Composer
		*out = new(RuleComposition)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComplexityRulesConfig.
func (in *ComplexityRulesConfig) DeepCopy() *ComplexityRulesConfig {
	if in == nil {
		return nil
	}
	out := new(ComplexityRulesConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CompositionCondition) DeepCopyInto(out *CompositionCondition) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositionCondition.
func (in *CompositionCondition) DeepCopy() *CompositionCondition {
	if in == nil {
		return nil
	}
	out := new(CompositionCondition)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ConfigSpec) DeepCopyInto(out *ConfigSpec) {
	*out = *in
	if in.Routing != nil {
		in, out := &in.Routing, &out.Routing
		*out = new(apiextensionsv1.JSON)
		(*in).DeepCopyInto(*out)
	}
	if in.EmbeddingModels != nil {
		in, out := &in.EmbeddingModels, &out.EmbeddingModels
		*out = new(EmbeddingModelsConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.SemanticCache != nil {
		in, out := &in.SemanticCache, &out.SemanticCache
		*out = new(SemanticCacheConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Tools != nil {
		in, out := &in.Tools, &out.Tools
		*out = new(ToolsConfig)
		**out = **in
	}
	if in.PromptGuard != nil {
		in, out := &in.PromptGuard, &out.PromptGuard
		*out = new(PromptGuardConfig)
		**out = **in
	}
	if in.Classifier != nil {
		in, out := &in.Classifier, &out.Classifier
		*out = new(ClassifierConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.ComplexityRules != nil {
		in, out := &in.ComplexityRules, &out.ComplexityRules
		*out = make([]ComplexityRulesConfig, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Decisions != nil {
		in, out := &in.Decisions, &out.Decisions
		*out = make([]DecisionConfig, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.ReasoningFamilies != nil {
		in, out := &in.ReasoningFamilies, &out.ReasoningFamilies
		*out = make(map[string]ReasoningFamily, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.API != nil {
		in, out := &in.API, &out.API
		*out = new(APIConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Observability != nil {
		in, out := &in.Observability, &out.Observability
		*out = new(ObservabilityConfig)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigSpec.
func (in *ConfigSpec) DeepCopy() *ConfigSpec {
	if in == nil {
		return nil
	}
	out := new(ConfigSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DecisionConfig) DeepCopyInto(out *DecisionConfig) {
	*out = *in
	in.Rules.DeepCopyInto(&out.Rules)
	if in.ModelRefs != nil {
		in, out := &in.ModelRefs, &out.ModelRefs
		*out = make([]ModelRefConfig, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.PreferredEndpoints != nil {
		in, out := &in.PreferredEndpoints, &out.PreferredEndpoints
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Plugins != nil {
		in, out := &in.Plugins, &out.Plugins
		*out = make([]runtime.RawExtension, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Algorithm != nil {
		in, out := &in.Algorithm, &out.Algorithm
		*out = new(apiextensionsv1.JSON)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DecisionConfig.
func (in *DecisionConfig) DeepCopy() *DecisionConfig {
	if in == nil {
		return nil
	}
	out := new(DecisionConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *EmbeddingEndpointConfig) DeepCopyInto(out *EmbeddingEndpointConfig) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmbeddingEndpointConfig.
func (in *EmbeddingEndpointConfig) DeepCopy() *EmbeddingEndpointConfig {
	if in == nil {
		return nil
	}
	out := new(EmbeddingEndpointConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *EmbeddingModelsConfig) DeepCopyInto(out *EmbeddingModelsConfig) {
	*out = *in
	if in.EmbeddingConfig != nil {
		in, out := &in.EmbeddingConfig, &out.EmbeddingConfig
		*out = new(HNSWEmbeddingConfig)
		**out = **in
	}
	if in.Endpoint != nil {
		in, out := &in.Endpoint, &out.Endpoint
		*out = new(EmbeddingEndpointConfig)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmbeddingModelsConfig.
func (in *EmbeddingModelsConfig) DeepCopy() *EmbeddingModelsConfig {
	if in == nil {
		return nil
	}
	out := new(EmbeddingModelsConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ExporterConfig) DeepCopyInto(out *ExporterConfig) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExporterConfig.
func (in *ExporterConfig) DeepCopy() *ExporterConfig {
	if in == nil {
		return nil
	}
	out := new(ExporterConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewayReference) DeepCopyInto(out *GatewayReference) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayReference.
func (in *GatewayReference) DeepCopy() *GatewayReference {
	if in == nil {
		return nil
	}
	out := new(GatewayReference)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GatewaySpec) DeepCopyInto(out *GatewaySpec) {
	*out = *in
	if in.ExistingRef != nil {
		in, out := &in.ExistingRef, &out.ExistingRef
		*out = new(GatewayReference)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewaySpec.
func (in *GatewaySpec) DeepCopy() *GatewaySpec {
	if in == nil {
		return nil
	}
	out := new(GatewaySpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HNSWCacheConfig) DeepCopyInto(out *HNSWCacheConfig) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HNSWCacheConfig.
func (in *HNSWCacheConfig) DeepCopy() *HNSWCacheConfig {
	if in == nil {
		return nil
	}
	out := new(HNSWCacheConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *HNSWEmbeddingConfig) DeepCopyInto(out *HNSWEmbeddingConfig) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HNSWEmbeddingConfig.
func (in *HNSWEmbeddingConfig) DeepCopy() *HNSWEmbeddingConfig {
	if in == nil {
		return nil
	}
	out := new(HNSWEmbeddingConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ImageSpec) DeepCopyInto(out *ImageSpec) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageSpec.
func (in *ImageSpec) DeepCopy() *ImageSpec {
	if in == nil {
		return nil
	}
	out := new(ImageSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IngressHost) DeepCopyInto(out *IngressHost) {
	*out = *in
	if in.Paths != nil {
		in, out := &in.Paths, &out.Paths
		*out = make([]IngressPath, len(*in))
		copy(*out, *in)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressHost.
func (in *IngressHost) DeepCopy() *IngressHost {
	if in == nil {
		return nil
	}
	out := new(IngressHost)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IngressPath) DeepCopyInto(out *IngressPath) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressPath.
func (in *IngressPath) DeepCopy() *IngressPath {
	if in == nil {
		return nil
	}
	out := new(IngressPath)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IngressSpec) DeepCopyInto(out *IngressSpec) {
	*out = *in
	if in.Enabled != nil {
		in, out := &in.Enabled, &out.Enabled
		*out = new(bool)
		**out = **in
	}
	if in.Annotations != nil {
		in, out := &in.Annotations, &out.Annotations
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Hosts != nil {
		in, out := &in.Hosts, &out.Hosts
		*out = make([]IngressHost, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.TLS != nil {
		in, out := &in.TLS, &out.TLS
		*out = make([]IngressTLS, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressSpec.
func (in *IngressSpec) DeepCopy() *IngressSpec {
	if in == nil {
		return nil
	}
	out := new(IngressSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IngressTLS) DeepCopyInto(out *IngressTLS) {
	*out = *in
	if in.Hosts != nil {
		in, out := &in.Hosts, &out.Hosts
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressTLS.
func (in *IngressTLS) DeepCopy() *IngressTLS {
	if in == nil {
		return nil
	}
	out := new(IngressTLS)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoRAAdapterSpec) DeepCopyInto(out *LoRAAdapterSpec) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoRAAdapterSpec.
func (in *LoRAAdapterSpec) DeepCopy() *LoRAAdapterSpec {
	if in == nil {
		return nil
	}
	out := new(LoRAAdapterSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MetricsPortSpec) DeepCopyInto(out *MetricsPortSpec) {
	*out = *in
	out.PortSpec = in.PortSpec
	if in.Enabled != nil {
		in, out := &in.Enabled, &out.Enabled
		*out = new(bool)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsPortSpec.
func (in *MetricsPortSpec) DeepCopy() *MetricsPortSpec {
	if in == nil {
		return nil
	}
	out := new(MetricsPortSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheAuth) DeepCopyInto(out *MilvusCacheAuth) {
	*out = *in
	if in.PasswordSecretRef != nil {
		in, out := &in.PasswordSecretRef, &out.PasswordSecretRef
		*out = new(v1.SecretKeySelector)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheAuth.
func (in *MilvusCacheAuth) DeepCopy() *MilvusCacheAuth {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheAuth)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheBatch) DeepCopyInto(out *MilvusCacheBatch) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheBatch.
func (in *MilvusCacheBatch) DeepCopy() *MilvusCacheBatch {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheBatch)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheCollection) DeepCopyInto(out *MilvusCacheCollection) {
	*out = *in
	out.VectorField = in.VectorField
	out.Index = in.Index
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheCollection.
func (in *MilvusCacheCollection) DeepCopy() *MilvusCacheCollection {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheCollection)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheCollectionIndex) DeepCopyInto(out *MilvusCacheCollectionIndex) {
	*out = *in
	out.Params = in.Params
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheCollectionIndex.
func (in *MilvusCacheCollectionIndex) DeepCopy() *MilvusCacheCollectionIndex {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheCollectionIndex)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheCompaction) DeepCopyInto(out *MilvusCacheCompaction) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheCompaction.
func (in *MilvusCacheCompaction) DeepCopy() *MilvusCacheCompaction {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheCompaction)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheConfig) DeepCopyInto(out *MilvusCacheConfig) {
	*out = *in
	in.Connection.DeepCopyInto(&out.Connection)
	out.Collection = in.Collection
	out.Search = in.Search
	out.Performance = in.Performance
	out.DataManagement = in.DataManagement
	out.Development = in.Development
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheConfig.
func (in *MilvusCacheConfig) DeepCopy() *MilvusCacheConfig {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheConnection) DeepCopyInto(out *MilvusCacheConnection) {
	*out = *in
	in.Auth.DeepCopyInto(&out.Auth)
	out.TLS = in.TLS
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheConnection.
func (in *MilvusCacheConnection) DeepCopy() *MilvusCacheConnection {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheConnection)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheConnectionPool) DeepCopyInto(out *MilvusCacheConnectionPool) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheConnectionPool.
func (in *MilvusCacheConnectionPool) DeepCopy() *MilvusCacheConnectionPool {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheConnectionPool)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheDataManagement) DeepCopyInto(out *MilvusCacheDataManagement) {
	*out = *in
	out.TTL = in.TTL
	out.Compaction = in.Compaction
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheDataManagement.
func (in *MilvusCacheDataManagement) DeepCopy() *MilvusCacheDataManagement {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheDataManagement)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheDevelopment) DeepCopyInto(out *MilvusCacheDevelopment) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheDevelopment.
func (in *MilvusCacheDevelopment) DeepCopy() *MilvusCacheDevelopment {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheDevelopment)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheIndexParams) DeepCopyInto(out *MilvusCacheIndexParams) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheIndexParams.
func (in *MilvusCacheIndexParams) DeepCopy() *MilvusCacheIndexParams {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheIndexParams)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCachePerformance) DeepCopyInto(out *MilvusCachePerformance) {
	*out = *in
	out.ConnectionPool = in.ConnectionPool
	out.Batch = in.Batch
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCachePerformance.
func (in *MilvusCachePerformance) DeepCopy() *MilvusCachePerformance {
	if in == nil {
		return nil
	}
	out := new(MilvusCachePerformance)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheSearch) DeepCopyInto(out *MilvusCacheSearch) {
	*out = *in
	out.Params = in.Params
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheSearch.
func (in *MilvusCacheSearch) DeepCopy() *MilvusCacheSearch {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheSearch)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheSearchParams) DeepCopyInto(out *MilvusCacheSearchParams) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheSearchParams.
func (in *MilvusCacheSearchParams) DeepCopy() *MilvusCacheSearchParams {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheSearchParams)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheTLS) DeepCopyInto(out *MilvusCacheTLS) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheTLS.
func (in *MilvusCacheTLS) DeepCopy() *MilvusCacheTLS {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheTLS)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheTTL) DeepCopyInto(out *MilvusCacheTTL) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheTTL.
func (in *MilvusCacheTTL) DeepCopy() *MilvusCacheTTL {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheTTL)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MilvusCacheVectorField) DeepCopyInto(out *MilvusCacheVectorField) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MilvusCacheVectorField.
func (in *MilvusCacheVectorField) DeepCopy() *MilvusCacheVectorField {
	if in == nil {
		return nil
	}
	out := new(MilvusCacheVectorField)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ModelRefConfig) DeepCopyInto(out *ModelRefConfig) {
	*out = *in
	if in.UseReasoning != nil {
		in, out := &in.UseReasoning, &out.UseReasoning
		*out = new(bool)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModelRefConfig.
func (in *ModelRefConfig) DeepCopy() *ModelRefConfig {
	if in == nil {
		return nil
	}
	out := new(ModelRefConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ObservabilityConfig) DeepCopyInto(out *ObservabilityConfig) {
	*out = *in
	if in.Tracing != nil {
		in, out := &in.Tracing, &out.Tracing
		*out = new(TracingConfig)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObservabilityConfig.
func (in *ObservabilityConfig) DeepCopy() *ObservabilityConfig {
	if in == nil {
		return nil
	}
	out := new(ObservabilityConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *OpenShiftFeaturesStatus) DeepCopyInto(out *OpenShiftFeaturesStatus) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenShiftFeaturesStatus.
func (in *OpenShiftFeaturesStatus) DeepCopy() *OpenShiftFeaturesStatus {
	if in == nil {
		return nil
	}
	out := new(OpenShiftFeaturesStatus)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *OpenShiftSpec) DeepCopyInto(out *OpenShiftSpec) {
	*out = *in
	if in.Routes != nil {
		in, out := &in.Routes, &out.Routes
		*out = new(RouteConfig)
		(*in).DeepCopyInto(*out)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenShiftSpec.
func (in *OpenShiftSpec) DeepCopy() *OpenShiftSpec {
	if in == nil {
		return nil
	}
	out := new(OpenShiftSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PIIModelConfig) DeepCopyInto(out *PIIModelConfig) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PIIModelConfig.
func (in *PIIModelConfig) DeepCopy() *PIIModelConfig {
	if in == nil {
		return nil
	}
	out := new(PIIModelConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PersistenceSpec) DeepCopyInto(out *PersistenceSpec) {
	*out = *in
	if in.Enabled != nil {
		in, out := &in.Enabled, &out.Enabled
		*out = new(bool)
		**out = **in
	}
	if in.Annotations != nil {
		in, out := &in.Annotations, &out.Annotations
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistenceSpec.
func (in *PersistenceSpec) DeepCopy() *PersistenceSpec {
	if in == nil {
		return nil
	}
	out := new(PersistenceSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PortSpec) DeepCopyInto(out *PortSpec) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PortSpec.
func (in *PortSpec) DeepCopy() *PortSpec {
	if in == nil {
		return nil
	}
	out := new(PortSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ProbeSpec) DeepCopyInto(out *ProbeSpec) {
	*out = *in
	if in.Enabled != nil {
		in, out := &in.Enabled, &out.Enabled
		*out = new(bool)
		**out = **in
	}
	if in.InitialDelaySeconds != nil {
		in, out := &in.InitialDelaySeconds, &out.InitialDelaySeconds
		*out = new(int32)
		**out = **in
	}
	if in.PeriodSeconds != nil {
		in, out := &in.PeriodSeconds, &out.PeriodSeconds
		*out = new(int32)
		**out = **in
	}
	if in.TimeoutSeconds != nil {
		in, out := &in.TimeoutSeconds, &out.TimeoutSeconds
		*out = new(int32)
		**out = **in
	}
	if in.FailureThreshold != nil {
		in, out := &in.FailureThreshold, &out.FailureThreshold
		*out = new(int32)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProbeSpec.
func (in *ProbeSpec) DeepCopy() *ProbeSpec {
	if in == nil {
		return nil
	}
	out := new(ProbeSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PromptGuardConfig) DeepCopyInto(out *PromptGuardConfig) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PromptGuardConfig.
func (in *PromptGuardConfig) DeepCopy() *PromptGuardConfig {
	if in == nil {
		return nil
	}
	out := new(PromptGuardConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *QdrantCacheConfig) DeepCopyInto(out *QdrantCacheConfig) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QdrantCacheConfig.
func (in *QdrantCacheConfig) DeepCopy() *QdrantCacheConfig {
	if in == nil {
		return nil
	}
	out := new(QdrantCacheConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ReasoningFamily) DeepCopyInto(out *ReasoningFamily) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReasoningFamily.
func (in *ReasoningFamily) DeepCopy() *ReasoningFamily {
	if in == nil {
		return nil
	}
	out := new(ReasoningFamily)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RedisCacheConfig) DeepCopyInto(out *RedisCacheConfig) {
	*out = *in
	in.Connection.DeepCopyInto(&out.Connection)
	out.Index = in.Index
	out.Search = in.Search
	out.Development = in.Development
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisCacheConfig.
func (in *RedisCacheConfig) DeepCopy() *RedisCacheConfig {
	if in == nil {
		return nil
	}
	out := new(RedisCacheConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RedisCacheConnection) DeepCopyInto(out *RedisCacheConnection) {
	*out = *in
	if in.PasswordSecretRef != nil {
		in, out := &in.PasswordSecretRef, &out.PasswordSecretRef
		*out = new(v1.SecretKeySelector)
		(*in).DeepCopyInto(*out)
	}
	out.TLS = in.TLS
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisCacheConnection.
func (in *RedisCacheConnection) DeepCopy() *RedisCacheConnection {
	if in == nil {
		return nil
	}
	out := new(RedisCacheConnection)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RedisCacheDevelopment) DeepCopyInto(out *RedisCacheDevelopment) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisCacheDevelopment.
func (in *RedisCacheDevelopment) DeepCopy() *RedisCacheDevelopment {
	if in == nil {
		return nil
	}
	out := new(RedisCacheDevelopment)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RedisCacheIndex) DeepCopyInto(out *RedisCacheIndex) {
	*out = *in
	out.VectorField = in.VectorField
	out.Params = in.Params
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisCacheIndex.
func (in *RedisCacheIndex) DeepCopy() *RedisCacheIndex {
	if in == nil {
		return nil
	}
	out := new(RedisCacheIndex)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RedisCacheIndexParams) DeepCopyInto(out *RedisCacheIndexParams) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisCacheIndexParams.
func (in *RedisCacheIndexParams) DeepCopy() *RedisCacheIndexParams {
	if in == nil {
		return nil
	}
	out := new(RedisCacheIndexParams)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RedisCacheSearch) DeepCopyInto(out *RedisCacheSearch) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisCacheSearch.
func (in *RedisCacheSearch) DeepCopy() *RedisCacheSearch {
	if in == nil {
		return nil
	}
	out := new(RedisCacheSearch)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RedisCacheTLS) DeepCopyInto(out *RedisCacheTLS) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisCacheTLS.
func (in *RedisCacheTLS) DeepCopy() *RedisCacheTLS {
	if in == nil {
		return nil
	}
	out := new(RedisCacheTLS)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RedisCacheVectorField) DeepCopyInto(out *RedisCacheVectorField) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisCacheVectorField.
func (in *RedisCacheVectorField) DeepCopy() *RedisCacheVectorField {
	if in == nil {
		return nil
	}
	out := new(RedisCacheVectorField)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ResourceConfig) DeepCopyInto(out *ResourceConfig) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceConfig.
func (in *ResourceConfig) DeepCopy() *ResourceConfig {
	if in == nil {
		return nil
	}
	out := new(ResourceConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RouteConfig) DeepCopyInto(out *RouteConfig) {
	*out = *in
	if in.TLS != nil {
		in, out := &in.TLS, &out.TLS
		*out = new(RouteTLSConfig)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteConfig.
func (in *RouteConfig) DeepCopy() *RouteConfig {
	if in == nil {
		return nil
	}
	out := new(RouteConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RouteTLSConfig) DeepCopyInto(out *RouteTLSConfig) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteTLSConfig.
func (in *RouteTLSConfig) DeepCopy() *RouteTLSConfig {
	if in == nil {
		return nil
	}
	out := new(RouteTLSConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RuleCombinationConfig) DeepCopyInto(out *RuleCombinationConfig) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]RuleConditionConfig, len(*in))
		copy(*out, *in)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleCombinationConfig.
func (in *RuleCombinationConfig) DeepCopy() *RuleCombinationConfig {
	if in == nil {
		return nil
	}
	out := new(RuleCombinationConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RuleComposition) DeepCopyInto(out *RuleComposition) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]CompositionCondition, len(*in))
		copy(*out, *in)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleComposition.
func (in *RuleComposition) DeepCopy() *RuleComposition {
	if in == nil {
		return nil
	}
	out := new(RuleComposition)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RuleConditionConfig) DeepCopyInto(out *RuleConditionConfig) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleConditionConfig.
func (in *RuleConditionConfig) DeepCopy() *RuleConditionConfig {
	if in == nil {
		return nil
	}
	out := new(RuleConditionConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SamplingConfig) DeepCopyInto(out *SamplingConfig) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SamplingConfig.
func (in *SamplingConfig) DeepCopy() *SamplingConfig {
	if in == nil {
		return nil
	}
	out := new(SamplingConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SemanticCacheConfig) DeepCopyInto(out *SemanticCacheConfig) {
	*out = *in
	if in.Redis != nil {
		in, out := &in.Redis, &out.Redis
		*out = new(RedisCacheConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Valkey != nil {
		in, out := &in.Valkey, &out.Valkey
		*out = new(ValkeyCacheConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Milvus != nil {
		in, out := &in.Milvus, &out.Milvus
		*out = new(MilvusCacheConfig)
		(*in).DeepCopyInto(*out)
	}
	if in.Qdrant != nil {
		in, out := &in.Qdrant, &out.Qdrant
		*out = new(QdrantCacheConfig)
		**out = **in
	}
	if in.HNSW != nil {
		in, out := &in.HNSW, &out.HNSW
		*out = new(HNSWCacheConfig)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SemanticCacheConfig.
func (in *SemanticCacheConfig) DeepCopy() *SemanticCacheConfig {
	if in == nil {
		return nil
	}
	out := new(SemanticCacheConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SemanticRouter) DeepCopyInto(out *SemanticRouter) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
	in.Spec.DeepCopyInto(&out.Spec)
	in.Status.DeepCopyInto(&out.Status)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SemanticRouter.
func (in *SemanticRouter) DeepCopy() *SemanticRouter {
	if in == nil {
		return nil
	}
	out := new(SemanticRouter)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *SemanticRouter) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SemanticRouterList) DeepCopyInto(out *SemanticRouterList) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	in.ListMeta.DeepCopyInto(&out.ListMeta)
	if in.Items != nil {
		in, out := &in.Items, &out.Items
		*out = make([]SemanticRouter, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SemanticRouterList.
func (in *SemanticRouterList) DeepCopy() *SemanticRouterList {
	if in == nil {
		return nil
	}
	out := new(SemanticRouterList)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *SemanticRouterList) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SemanticRouterSpec) DeepCopyInto(out *SemanticRouterSpec) {
	*out = *in
	out.Image = in.Image
	if in.Replicas != nil {
		in, out := &in.Replicas, &out.Replicas
		*out = new(int32)
		**out = **in
	}
	if in.ImagePullSecrets != nil {
		in, out := &in.ImagePullSecrets, &out.ImagePullSecrets
		*out = make([]v1.LocalObjectReference, len(*in))
		copy(*out, *in)
	}
	in.ServiceAccount.DeepCopyInto(&out.ServiceAccount)
	in.Service.DeepCopyInto(&out.Service)
	in.Resources.DeepCopyInto(&out.Resources)
	in.Persistence.DeepCopyInto(&out.Persistence)
	in.Config.DeepCopyInto(&out.Config)
	if in.ToolsDb != nil {
		in, out := &in.ToolsDb, &out.ToolsDb
		*out = make([]ToolEntry, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.VLLMEndpoints != nil {
		in, out := &in.VLLMEndpoints, &out.VLLMEndpoints
		*out = make([]VLLMEndpointSpec, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	in.Autoscaling.DeepCopyInto(&out.Autoscaling)
	if in.StartupProbe != nil {
		in, out := &in.StartupProbe, &out.StartupProbe
		*out = new(ProbeSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.LivenessProbe != nil {
		in, out := &in.LivenessProbe, &out.LivenessProbe
		*out = new(ProbeSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.ReadinessProbe != nil {
		in, out := &in.ReadinessProbe, &out.ReadinessProbe
		*out = new(ProbeSpec)
		(*in).DeepCopyInto(*out)
	}
	if in.SecurityContext != nil {
		in, out := &in.SecurityContext, &out.SecurityContext
		*out = new(v1.SecurityContext)
		(*in).DeepCopyInto(*out)
	}
	if in.PodSecurityContext != nil {
		in, out := &in.PodSecurityContext, &out.PodSecurityContext
		*out = new(v1.PodSecurityContext)
		(*in).DeepCopyInto(*out)
	}
	if in.PodAnnotations != nil {
		in, out := &in.PodAnnotations, &out.PodAnnotations
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.NodeSelector != nil {
		in, out := &in.NodeSelector, &out.NodeSelector
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Tolerations != nil {
		in, out := &in.Tolerations, &out.Tolerations
		*out = make([]v1.Toleration, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Affinity != nil {
		in, out := &in.Affinity, &out.Affinity
		*out = new(v1.Affinity)
		(*in).DeepCopyInto(*out)
	}
	if in.Env != nil {
		in, out := &in.Env, &out.Env
		*out = make([]v1.EnvVar, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.Args != nil {
		in, out := &in.Args, &out.Args
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
	if in.Gateway != nil {
		in, out := &in.Gateway, &out.Gateway
		*out = new(GatewaySpec)
		(*in).DeepCopyInto(*out)
	}
	if in.OpenShift != nil {
		in, out := &in.OpenShift, &out.OpenShift
		*out = new(OpenShiftSpec)
		(*in).DeepCopyInto(*out)
	}
	in.Ingress.DeepCopyInto(&out.Ingress)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SemanticRouterSpec.
func (in *SemanticRouterSpec) DeepCopy() *SemanticRouterSpec {
	if in == nil {
		return nil
	}
	out := new(SemanticRouterSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SemanticRouterStatus) DeepCopyInto(out *SemanticRouterStatus) {
	*out = *in
	if in.Conditions != nil {
		in, out := &in.Conditions, &out.Conditions
		*out = make([]metav1.Condition, len(*in))
		for i := range *in {
			(*in)[i].DeepCopyInto(&(*out)[i])
		}
	}
	if in.OpenShiftFeatures != nil {
		in, out := &in.OpenShiftFeatures, &out.OpenShiftFeatures
		*out = new(OpenShiftFeaturesStatus)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SemanticRouterStatus.
func (in *SemanticRouterStatus) DeepCopy() *SemanticRouterStatus {
	if in == nil {
		return nil
	}
	out := new(SemanticRouterStatus)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ServiceAccountSpec) DeepCopyInto(out *ServiceAccountSpec) {
	*out = *in
	if in.Create != nil {
		in, out := &in.Create, &out.Create
		*out = new(bool)
		**out = **in
	}
	if in.Annotations != nil {
		in, out := &in.Annotations, &out.Annotations
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAccountSpec.
func (in *ServiceAccountSpec) DeepCopy() *ServiceAccountSpec {
	if in == nil {
		return nil
	}
	out := new(ServiceAccountSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ServiceBackend) DeepCopyInto(out *ServiceBackend) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBackend.
func (in *ServiceBackend) DeepCopy() *ServiceBackend {
	if in == nil {
		return nil
	}
	out := new(ServiceBackend)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ServiceSpec) DeepCopyInto(out *ServiceSpec) {
	*out = *in
	out.GRPC = in.GRPC
	out.API = in.API
	in.Metrics.DeepCopyInto(&out.Metrics)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceSpec.
func (in *ServiceSpec) DeepCopy() *ServiceSpec {
	if in == nil {
		return nil
	}
	out := new(ServiceSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Tool) DeepCopyInto(out *Tool) {
	*out = *in
	in.Function.DeepCopyInto(&out.Function)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tool.
func (in *Tool) DeepCopy() *Tool {
	if in == nil {
		return nil
	}
	out := new(Tool)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ToolEntry) DeepCopyInto(out *ToolEntry) {
	*out = *in
	in.Tool.DeepCopyInto(&out.Tool)
	if in.Tags != nil {
		in, out := &in.Tags, &out.Tags
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ToolEntry.
func (in *ToolEntry) DeepCopy() *ToolEntry {
	if in == nil {
		return nil
	}
	out := new(ToolEntry)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ToolFunction) DeepCopyInto(out *ToolFunction) {
	*out = *in
	in.Parameters.DeepCopyInto(&out.Parameters)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ToolFunction.
func (in *ToolFunction) DeepCopy() *ToolFunction {
	if in == nil {
		return nil
	}
	out := new(ToolFunction)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ToolParameters) DeepCopyInto(out *ToolParameters) {
	*out = *in
	if in.Properties != nil {
		in, out := &in.Properties, &out.Properties
		*out = new(apiextensionsv1.JSON)
		(*in).DeepCopyInto(*out)
	}
	if in.Required != nil {
		in, out := &in.Required, &out.Required
		*out = make([]string, len(*in))
		copy(*out, *in)
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ToolParameters.
func (in *ToolParameters) DeepCopy() *ToolParameters {
	if in == nil {
		return nil
	}
	out := new(ToolParameters)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ToolsConfig) DeepCopyInto(out *ToolsConfig) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ToolsConfig.
func (in *ToolsConfig) DeepCopy() *ToolsConfig {
	if in == nil {
		return nil
	}
	out := new(ToolsConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *TracingConfig) DeepCopyInto(out *TracingConfig) {
	*out = *in
	if in.Exporter != nil {
		in, out := &in.Exporter, &out.Exporter
		*out = new(ExporterConfig)
		**out = **in
	}
	if in.Sampling != nil {
		in, out := &in.Sampling, &out.Sampling
		*out = new(SamplingConfig)
		**out = **in
	}
	if in.Resource != nil {
		in, out := &in.Resource, &out.Resource
		*out = new(ResourceConfig)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TracingConfig.
func (in *TracingConfig) DeepCopy() *TracingConfig {
	if in == nil {
		return nil
	}
	out := new(TracingConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *VLLMBackend) DeepCopyInto(out *VLLMBackend) {
	*out = *in
	if in.DiscoveryLabels != nil {
		in, out := &in.DiscoveryLabels, &out.DiscoveryLabels
		*out = make(map[string]string, len(*in))
		for key, val := range *in {
			(*out)[key] = val
		}
	}
	if in.Service != nil {
		in, out := &in.Service, &out.Service
		*out = new(ServiceBackend)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VLLMBackend.
func (in *VLLMBackend) DeepCopy() *VLLMBackend {
	if in == nil {
		return nil
	}
	out := new(VLLMBackend)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *VLLMEndpointSpec) DeepCopyInto(out *VLLMEndpointSpec) {
	*out = *in
	if in.LoRAs != nil {
		in, out := &in.LoRAs, &out.LoRAs
		*out = make([]LoRAAdapterSpec, len(*in))
		copy(*out, *in)
	}
	in.Backend.DeepCopyInto(&out.Backend)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VLLMEndpointSpec.
func (in *VLLMEndpointSpec) DeepCopy() *VLLMEndpointSpec {
	if in == nil {
		return nil
	}
	out := new(VLLMEndpointSpec)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ValkeyCacheConfig) DeepCopyInto(out *ValkeyCacheConfig) {
	*out = *in
	in.Connection.DeepCopyInto(&out.Connection)
	out.Index = in.Index
	out.Search = in.Search
	out.Development = in.Development
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValkeyCacheConfig.
func (in *ValkeyCacheConfig) DeepCopy() *ValkeyCacheConfig {
	if in == nil {
		return nil
	}
	out := new(ValkeyCacheConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ValkeyCacheConnection) DeepCopyInto(out *ValkeyCacheConnection) {
	*out = *in
	if in.PasswordSecretRef != nil {
		in, out := &in.PasswordSecretRef, &out.PasswordSecretRef
		*out = new(v1.SecretKeySelector)
		(*in).DeepCopyInto(*out)
	}
	out.TLS = in.TLS
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValkeyCacheConnection.
func (in *ValkeyCacheConnection) DeepCopy() *ValkeyCacheConnection {
	if in == nil {
		return nil
	}
	out := new(ValkeyCacheConnection)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ValkeyCacheDevelopment) DeepCopyInto(out *ValkeyCacheDevelopment) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValkeyCacheDevelopment.
func (in *ValkeyCacheDevelopment) DeepCopy() *ValkeyCacheDevelopment {
	if in == nil {
		return nil
	}
	out := new(ValkeyCacheDevelopment)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ValkeyCacheIndex) DeepCopyInto(out *ValkeyCacheIndex) {
	*out = *in
	out.VectorField = in.VectorField
	out.Params = in.Params
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValkeyCacheIndex.
func (in *ValkeyCacheIndex) DeepCopy() *ValkeyCacheIndex {
	if in == nil {
		return nil
	}
	out := new(ValkeyCacheIndex)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ValkeyCacheIndexParams) DeepCopyInto(out *ValkeyCacheIndexParams) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValkeyCacheIndexParams.
func (in *ValkeyCacheIndexParams) DeepCopy() *ValkeyCacheIndexParams {
	if in == nil {
		return nil
	}
	out := new(ValkeyCacheIndexParams)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ValkeyCacheSearch) DeepCopyInto(out *ValkeyCacheSearch) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValkeyCacheSearch.
func (in *ValkeyCacheSearch) DeepCopy() *ValkeyCacheSearch {
	if in == nil {
		return nil
	}
	out := new(ValkeyCacheSearch)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ValkeyCacheTLS) DeepCopyInto(out *ValkeyCacheTLS) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValkeyCacheTLS.
func (in *ValkeyCacheTLS) DeepCopy() *ValkeyCacheTLS {
	if in == nil {
		return nil
	}
	out := new(ValkeyCacheTLS)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ValkeyCacheVectorField) DeepCopyInto(out *ValkeyCacheVectorField) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValkeyCacheVectorField.
func (in *ValkeyCacheVectorField) DeepCopy() *ValkeyCacheVectorField {
	if in == nil {
		return nil
	}
	out := new(ValkeyCacheVectorField)
	in.DeepCopyInto(out)
	return out
}
