1#![recursion_limit = "8192"]
2#![allow(warnings)]
3
4use fastrand;
31use std::error::Error;
32use thiserror::Error;
33
34pub mod barren_plateau;
35pub mod blockchain;
36pub mod classification;
37pub mod crypto;
38pub mod enhanced_gan;
39pub mod gan;
40pub mod hep;
41pub mod kernels;
42pub mod nlp;
43pub mod optimization;
44pub mod qcnn;
45pub mod qnn;
46pub mod qsvm;
47pub mod reinforcement;
48pub mod vae;
49pub mod variational;
50
51pub mod adversarial;
52pub mod anneal_integration;
53pub mod anomaly_detection;
54pub mod attention;
55pub mod autodiff;
56pub mod automl;
57pub mod benchmarking;
58pub mod boltzmann;
59pub mod circuit_integration;
60pub mod classical_ml_integration;
61pub mod clustering;
62pub mod computer_vision;
63pub mod continual_learning;
64pub mod continuous_rl;
65pub mod device_compilation;
66pub mod diffusion;
67pub mod dimensionality_reduction;
68pub mod domain_templates;
69pub mod error;
70pub mod error_mitigation;
71pub mod explainable_ai;
72pub mod federated;
73pub mod few_shot;
74pub mod gnn;
75#[cfg(feature = "gpu")]
76pub mod gpu_backend_impl;
77pub mod industry_examples;
78pub mod keras_api;
79pub mod lstm;
80pub mod meta_learning;
81pub mod model_zoo;
82pub mod onnx_export;
83pub mod pytorch_api;
84pub mod quantum_advanced_diffusion;
85pub mod quantum_continuous_flows;
86pub mod quantum_graph_attention;
87pub mod quantum_implicit_neural_representations;
88pub mod quantum_in_context_learning;
89pub mod quantum_llm;
90pub mod quantum_memory_networks;
91pub mod quantum_mixture_of_experts;
92pub mod quantum_nas;
93pub mod quantum_neural_odes;
94pub mod quantum_neural_radiance_fields;
95pub mod quantum_pinns;
96pub mod quantum_reservoir_computing;
97pub mod quantum_self_supervised_learning;
98pub mod quantum_transformer;
99pub mod recommender;
100pub mod scirs2_integration;
101pub mod simulator_backends;
102pub mod sklearn_compatibility;
103pub mod tensorflow_compatibility;
104pub mod time_series;
105pub mod transfer;
106pub mod tutorials;
107
108mod utils;
110
111pub use error::MLError;
113pub use error::Result;
114
115pub mod prelude {
117 pub use crate::adversarial::{
118 create_comprehensive_defense, create_default_adversarial_config, AdversarialTrainingConfig,
119 QuantumAdversarialExample, QuantumAdversarialTrainer, QuantumAttackType,
120 QuantumDefenseStrategy, RobustnessMetrics,
121 };
122 pub use crate::anneal_integration::{
123 AnnealingClient, AnnealingParams, AnnealingResult,
124 AnnealingSchedule as MLAnnealingSchedule, CircuitOptimizationProblem,
125 FeatureSelectionProblem, HyperparameterProblem, IsingProblem, OptimizationResult,
126 PortfolioOptimizationProblem, QuantumMLAnnealer, QuantumMLOptimizationProblem,
127 QuantumMLQUBO,
128 };
129 pub use crate::anomaly_detection::{
130 AnomalyDetectionMethod, AnomalyMetrics, AnomalyResult, PerformanceConfig,
131 PreprocessingConfig as AnomalyPreprocessingConfig, QuantumAnomalyConfig,
132 QuantumAnomalyDetector, QuantumAnomalyMetrics, QuantumAutoencoder,
133 QuantumEnhancementConfig, QuantumIsolationForest, QuantumLOF, QuantumOneClassSVM,
134 RealtimeConfig, SpecializedDetectorConfig,
135 };
136 pub use crate::automl::{
137 create_comprehensive_automl_config, create_default_automl_config, AdvancedAutoMLFeatures,
138 AlgorithmSearchSpace, EnsembleSearchSpace, EvaluationConfig, HyperparameterSearchSpace,
139 MLTaskType, OptimizationObjective, QuantumAutoML, QuantumAutoMLConfig, QuantumConstraints,
140 QuantumEncodingMethod, SearchBudgetConfig, SearchSpaceConfig,
141 };
142 pub use crate::benchmarking::{
143 Benchmark, BenchmarkCategory, BenchmarkConfig, BenchmarkFramework, BenchmarkReport,
144 BenchmarkResults, BenchmarkRunResult, BenchmarkSummary, ScalingType,
145 };
146 pub use crate::blockchain::{ConsensusType, QuantumBlockchain, QuantumToken, SmartContract};
147 pub use crate::boltzmann::{
148 AnnealingSchedule, DeepBoltzmannMachine, QuantumBoltzmannMachine, QuantumRBM,
149 };
150 pub use crate::circuit_integration::{
151 BackendManager, DeviceTopology, ExpressionvityMetrics, HardwareAwareCompiler,
152 MLCircuitAnalyzer, MLCircuitOptimizer, OptimizationPass, ParameterizedLayer, QuantumLayer,
153 QuantumMLExecutor, QubitProperties, RotationAxis, TrainabilityMetrics,
154 };
155 pub use crate::classical_ml_integration::{
156 utils as pipeline_utils, AutoOptimizationConfig, ClassicalModel, DataPreprocessor,
157 DatasetInfo, EnsembleStrategy, HybridModel, HybridPipeline, HybridPipelineManager,
158 MinMaxScaler, ModelRegistry, ModelType, OptimizedPipeline, PerformanceProfile,
159 PipelineConfig, PipelineRecommendation, PipelineStage, PipelineTemplate,
160 ResourceConstraints, StandardScaler, ValidationStrategy, WeightedVotingEnsemble,
161 };
162 pub use crate::classification::{ClassificationMetrics, Classifier};
163 pub use crate::clustering::{
164 ClusteringAlgorithm, CoreClusteringMetrics as QuantumClusteringMetrics, QuantumClusterer,
165 QuantumClusteringConfig,
166 };
167 pub use crate::computer_vision::{
168 AugmentationConfig, ColorSpace, ComputationalMetrics, ConvolutionalConfig,
169 ImageEncodingMethod, ImagePreprocessor, PreprocessingConfig, QuantumConvolutionalNN,
170 QuantumEnhancement, QuantumFeatureExtractor, QuantumImageEncoder, QuantumMetrics,
171 QuantumSpatialAttention, QuantumVisionConfig, QuantumVisionPipeline, ResidualBlock,
172 TaskOutput, TaskTarget, TrainingHistory, VisionBackbone, VisionMetrics, VisionTaskConfig,
173 };
174 pub use crate::continual_learning::{
175 create_continual_task, generate_task_sequence, ContinualLearningStrategy, ContinualTask,
176 Experience, ForgettingMetrics, MemoryBuffer, MemorySelectionStrategy,
177 ParameterAllocationStrategy, QuantumContinualLearner, TaskMetrics, TaskType,
178 };
179 pub use crate::continuous_rl::{
180 ContinuousEnvironment, Experience as RLExperience, PendulumEnvironment, QuantumActor,
181 QuantumCritic, QuantumDDPG, QuantumSAC, ReplayBuffer,
182 };
183 pub use crate::crypto::{
184 ProtocolType, QuantumAuthentication, QuantumKeyDistribution, QuantumSignature,
185 };
186 pub use crate::device_compilation::{
187 CompilationMetrics, CompilationOptions, CompiledModel, DeviceCharacterization,
188 DeviceCompiler, QuantumMLModel, QubitMapping, RoutingAlgorithm, SynthesisMethod,
189 };
190 pub use crate::diffusion::{
191 NoiseSchedule, QuantumDiffusionModel, QuantumScoreDiffusion, QuantumVariationalDiffusion,
192 };
193 pub use crate::dimensionality_reduction::{
194 AutoencoderArchitecture, DRTrainedState, DimensionalityReductionAlgorithm,
195 DimensionalityReductionMetrics, ManifoldMetrics, QAutoencoderConfig, QCCAConfig,
196 QFactorAnalysisConfig, QFeatureSelectionConfig, QICAConfig, QKernelPCAConfig, QLDAConfig,
197 QManifoldConfig, QNMFConfig, QPCAConfig, QSpecializedConfig, QUMAPConfig, QtSNEConfig,
198 QuantumDimensionalityReducer, QuantumDistanceMetric as DRQuantumDistanceMetric,
199 QuantumEigensolver, QuantumEnhancementLevel as DRQuantumEnhancementLevel,
200 QuantumFeatureMap, ReconstructionMetrics,
201 };
202 pub use crate::domain_templates::{
203 utils as domain_utils, CreditRiskModel, Domain, DomainModel, DomainTemplateManager,
204 DrugDiscoveryModel, FraudDetectionModel, MaterialPropertyModel, MedicalImageModel,
205 ModelComplexity, MolecularPropertyModel, PortfolioOptimizationModel, ProblemType,
206 SmartGridModel, TemplateConfig, TemplateMetadata, VehicleRoutingModel,
207 };
208 pub use crate::error::{MLError, Result};
209 pub use crate::error_mitigation::{
210 AdaptiveConfig, CalibrationData, CircuitFoldingMethod, CoherenceTimeModel, ErrorType,
211 ExtrapolationMethod, GateErrorModel, MeasurementErrorModel, MitigatedInferenceData,
212 MitigatedTrainingData, MitigationStrategy, NoiseModel, QuantumMLErrorMitigator,
213 ReadoutCorrectionMethod,
214 };
215 pub use crate::explainable_ai::{
216 create_default_xai_config, AggregationMethod, AttributionMethod, CircuitExplanation,
217 ExplanationMethod, ExplanationResult, LRPRule, LocalModelType, PerturbationMethod,
218 QuantumExplainableAI, QuantumStateProperties,
219 };
220 pub use crate::few_shot::{
221 DistanceMetric, Episode, FewShotLearner, FewShotMethod, QuantumMAML,
222 QuantumPrototypicalNetwork,
223 };
224 pub use crate::gan::{Discriminator, GANEvaluationMetrics, Generator, QuantumGAN};
225 pub use crate::hep::{
226 AnomalyDetector, EventReconstructor, HEPQuantumClassifier, ParticleCollisionClassifier,
227 };
228 pub use crate::industry_examples::{
229 utils as industry_utils, BenchmarkResult, BusinessImpact, DataRequirements, ExampleResult,
230 ImplementationComplexity, Industry, IndustryExampleManager, PerformanceMetrics,
231 QuantumAdvantageMetrics, ROIEstimate, ROISummary, ResourceRequirements, UseCase,
232 };
233 pub use crate::keras_api::{
234 utils as keras_utils, Activation, ActivationFunction, Callback, DataType, Dense,
235 EarlyStopping, InitializerType, Input, KerasLayer, LayerInfo, LossFunction, MetricType,
236 ModelSummary, OptimizerType, QuantumAnsatzType, QuantumDense, Sequential,
237 TrainingHistory as KerasTrainingHistory,
238 };
239 pub use crate::kernels::{KernelMethod, QuantumKernel};
240 pub use crate::meta_learning::{
241 ContinualMetaLearner, MetaLearningAlgorithm, MetaLearningHistory, MetaTask,
242 QuantumMetaLearner, TaskGenerator,
243 };
244 pub use crate::model_zoo::{
245 utils as model_zoo_utils, IrisQuantumSVM, MNISTQuantumNN, ModelCategory, ModelMetadata,
246 ModelRequirements, ModelZoo, PortfolioQAOA, QuantumModel, TrainingConfig, H2VQE,
247 };
248 pub use crate::nlp::{NLPTaskType, QuantumLanguageModel, SentimentAnalyzer, TextSummarizer};
249 pub use crate::onnx_export::{
250 utils as onnx_utils, ExportOptions, ImportOptions, ModelInfo, ONNXAttribute, ONNXDataType,
251 ONNXExporter, ONNXGraph, ONNXImporter, ONNXNode, ONNXTensor, ONNXValueInfo,
252 QuantumBackendTarget, TargetFramework, UnsupportedOpHandling, ValidationReport,
253 };
254 pub use crate::optimization::{ObjectiveFunction, OptimizationMethod, Optimizer};
255 pub use crate::pytorch_api::{
256 ActivationType as PyTorchActivationType, DataLoader, InitType, MemoryDataLoader, Parameter,
257 QuantumActivation, QuantumConv2d, QuantumCrossEntropyLoss, QuantumLinear, QuantumLoss,
258 QuantumMSELoss, QuantumModule, QuantumSequential, QuantumTrainer,
259 TrainingHistory as PyTorchTrainingHistory,
260 };
261 pub use crate::qnn::{QNNBuilder, QNNLayer, QuantumNeuralNetwork};
262 pub use crate::qsvm::{
263 FeatureMapType, QSVMParams, QuantumKernel as QSVMKernel, QuantumKernelRidge, QSVM,
264 };
265 pub use crate::quantum_llm::{
266 GenerationConfig, GenerationStatistics, MemoryRetrievalType, ModelScale,
267 QLLMTrainingConfig, QualityMetrics, QuantumAnalogyEngine, QuantumAssociativeMemory,
268 QuantumLLM, QuantumLLMConfig, QuantumMemoryConfig, QuantumMemorySystem,
269 QuantumParameterUpdate, QuantumReasoningConfig, QuantumReasoningModule, Vocabulary,
270 };
271 pub use crate::quantum_nas::{
272 create_default_search_space, AcquisitionFunction, ArchitectureCandidate,
273 ArchitectureMetrics, ArchitectureProperties, QuantumNAS, QuantumTopology, QubitConstraints,
274 RLAgentType, SearchSpace, SearchStrategy,
275 };
276 pub use crate::quantum_transformer::{
277 create_causal_mask, create_padding_mask, ActivationType, AttentionOutput,
278 PositionEncodingType, QuantumAttentionInfo, QuantumAttentionType, QuantumFeedForward,
279 QuantumMultiHeadAttention, QuantumPositionEncoding, QuantumTransformer,
280 QuantumTransformerConfig, QuantumTransformerLayer,
281 };
282 pub use crate::recommender::{
283 BusinessRules, FeatureExtractionMethod, ItemFeatures, ProfileLearningMethod,
284 QuantumEnhancementLevel, QuantumRecommender, QuantumRecommenderConfig, Recommendation,
285 RecommendationAlgorithm, RecommendationExplanation, RecommendationOptions,
286 SimilarityMeasure, UserProfile,
287 };
288 pub use crate::reinforcement::{Environment, QuantumAgent, ReinforcementLearning};
289 pub use crate::scirs2_integration::{
290 SciRS2Array, SciRS2DistributedTrainer, SciRS2Optimizer, SciRS2Serializer, SciRS2Tensor,
291 };
292 pub use crate::simulator_backends::{
293 BackendCapabilities, BackendSelectionStrategy, GradientMethod, MPSBackend, Observable,
294 SimulationResult, SimulatorBackend, StatevectorBackend,
295 };
296 pub use crate::sklearn_compatibility::{
297 model_selection, pipeline, QuantumKMeans, QuantumMLPClassifier, QuantumMLPRegressor,
298 QuantumSVC, SklearnClassifier, SklearnClusterer, SklearnEstimator, SklearnRegressor,
299 };
300 pub use crate::tensorflow_compatibility::{
301 tfq_utils, DataEncodingType, PQCLayer, PaddingType, ParameterInitStrategy,
302 QuantumCircuitLayer, QuantumConvolutionalLayer, QuantumDataset, QuantumDatasetIterator,
303 RegularizationType, TFQCircuitFormat, TFQGate, TFQLayer, TFQLossFunction, TFQModel,
304 TFQOptimizer,
305 };
306 pub use crate::time_series::{
307 generate_synthetic_time_series, AnomalyPoint, AnomalyType, DiversityStrategy,
308 EnsembleConfig, EnsembleMethod, FeatureEngineeringConfig, ForecastMetrics, ForecastResult,
309 QuantumEnhancementLevel as TSQuantumEnhancementLevel, QuantumTimeSeriesConfig,
310 QuantumTimeSeriesForecaster, SeasonalityConfig, TimeSeriesModel,
311 };
312 pub use crate::transfer::{
313 LayerConfig, PretrainedModel, QuantumModelZoo, QuantumTransferLearning, TransferStrategy,
314 };
315 pub use crate::tutorials::{
316 utils as tutorial_utils, CodeExample, DifficultyLevel, Exercise, ExerciseResult,
317 ExerciseType, ExperienceLevel, InteractiveElement, InteractiveType, TestCase, Tutorial,
318 TutorialCategory, TutorialManager, TutorialProgress, TutorialSection, TutorialSession,
319 UserBackground,
320 };
321 pub use crate::variational::{VariationalAlgorithm, VariationalCircuit};
322
323 pub use crate::quantum_graph_attention::{
325 AttentionAnalysis, AttentionConfig as QGATAttentionConfig,
326 BenchmarkResults as QGATBenchmarkResults, Graph, PoolingConfig, QGATConfig,
327 QuantumAttentionType as QGATQuantumAttentionType, QuantumGraphAttentionNetwork,
328 TrainingMetrics as QGATTrainingMetrics,
329 };
330 pub use crate::quantum_in_context_learning::{
331 AdaptationResult, AdaptationStrategy, AdaptationTarget, ContextExample, ContextMetadata,
332 ContextModality, ContextRetrievalMethod, EntanglementPattern, InContextLearningMetrics,
333 InContextLearningOutput, InContextLearningStatistics, InterpolationMethod,
334 MetaUpdateStrategy, QuantumAttentionMechanism, QuantumContextAttention,
335 QuantumContextEncoder, QuantumContextEncoding, QuantumContextState, QuantumDistanceMetric,
336 QuantumEpisodicMemory, QuantumInContextLearner, QuantumInContextLearningConfig,
337 QuantumTaskAdapter, TransferLearningResults,
338 };
339 pub use crate::quantum_memory_networks::{
340 AddressingConfig, AddressingType, BenchmarkResults as QMANBenchmarkResults,
341 ControllerArchitecture, ControllerConfig as QMANControllerConfig, EpisodicMemory,
342 HeadConfig, HeadType as QMANHeadType, MemoryInitialization, QMANConfig, QMANTrainingConfig,
343 QuantumMemoryAugmentedNetwork, ReadParams, TrainingMetrics as QMANTrainingMetrics,
344 WriteParams,
345 };
346 pub use crate::quantum_neural_odes::{
347 AnsatzType as QNODEAnsatzType, BenchmarkResults as QNODEBenchmarkResults,
348 IntegrationMethod, OptimizationStrategy as QNODEOptimizationStrategy, QNODEConfig,
349 QuantumNeuralODE, TrainingMetrics as QNODETrainingMetrics,
350 };
351 pub use crate::quantum_pinns::{
352 BoundaryCondition, DerivativeResults, InitialCondition, LossWeights, PhysicsEquationType,
353 QPINNConfig, QuantumPINN, TrainingMetrics as QPINNTrainingMetrics,
354 };
355 pub use crate::quantum_reservoir_computing::{
356 BenchmarkResults as QRCBenchmarkResults, DynamicsAnalysis, InputEncoding, QRCConfig,
357 QuantumReservoirComputer, ReadoutConfig, ReservoirDynamics,
358 TrainingMetrics as QRCTrainingMetrics,
359 };
360
361 pub use crate::quantum_advanced_diffusion::{
362 DenoisingArchitecture, ErrorMitigationStrategy, GenerationMetrics,
363 QuantumAdvancedDiffusionConfig, QuantumAdvancedDiffusionModel, QuantumGenerationOutput,
364 QuantumNoiseSchedule, QuantumTrainingConfig,
365 };
366
367 pub use crate::quantum_continuous_flows::{
368 FlowArchitecture, FlowSamplingOutput, FlowTrainingConfig, QuantumContinuousFlow,
369 QuantumContinuousFlowConfig, QuantumODEFunction,
370 };
371
372 pub use crate::quantum_neural_radiance_fields::{
373 QuantumNeRF, QuantumNeRFConfig, QuantumRenderOutput, QuantumRenderingMetrics,
374 };
375
376 pub use crate::quantum_mixture_of_experts::{
377 InterferencePattern, MoEOutput, MoEStatistics, MoETrainingConfig,
378 QuantumCombinationMetrics, QuantumGatingMechanism, QuantumMixtureOfExperts,
379 QuantumMixtureOfExpertsConfig, QuantumRoutingStrategy,
380 };
381
382 pub use crate::quantum_self_supervised_learning::{
383 ContrastiveLossFunction, QuantumAugmentationStrategy, QuantumAugmenter, QuantumDecoder,
384 QuantumEncoder, QuantumMaskingStrategy, QuantumProjector, QuantumSSLMethod,
385 QuantumSSLMetrics, QuantumSelfSupervisedConfig, QuantumSelfSupervisedLearner,
386 QuantumSimilarityMetric, RepresentationEvaluationResults, SSLLearningOutput,
387 SSLTrainingConfig,
388 };
389
390 pub use crate::quantum_implicit_neural_representations::{
391 AdaptationOutput, CompressedRepresentation, CompressionConfig, CompressionManager,
392 EntanglementManager, INRQueryOutput, INRTrainingConfig, INRTrainingOutput,
393 MetaLearningConfig, OptimizationConfig, QuantumActivationConfig, QuantumGradientEstimator,
394 QuantumINRConfig, QuantumINRMetrics, QuantumImplicitNeuralRepresentation,
395 QuantumLayerConfig, QuantumOptimizer, QuantumPositionalEncoding, QuantumStateManager,
396 RepresentationMethod, SignalType,
397 };
398}