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