oxirs_embed/
enterprise_knowledge_engine.rs1use crate::enterprise_knowledge_product::CategoryPerformance;
4use chrono::{DateTime, Utc};
5use serde::{Deserialize, Serialize};
6use std::collections::HashMap;
7
8#[derive(Debug, Clone)]
10pub struct RecommendationEngine {
11 pub engine_type: RecommendationEngineType,
13 pub parameters: HashMap<String, f64>,
15 pub performance: RecommendationPerformance,
17 pub last_update: DateTime<Utc>,
19}
20
21#[derive(Debug, Clone)]
23pub enum RecommendationEngineType {
24 CollaborativeFiltering,
25 ContentBased,
26 MatrixFactorization,
27 DeepLearning,
28 Hybrid,
29}
30
31#[derive(Debug, Clone, Serialize, Deserialize)]
33pub struct RecommendationPerformance {
34 pub precision_at_k: HashMap<u32, f64>,
36 pub recall_at_k: HashMap<u32, f64>,
38 pub ndcg_scores: HashMap<u32, f64>,
40 pub click_through_rate: f64,
42 pub conversion_rate: f64,
44 pub revenue_impact: f64,
46}
47
48#[derive(Debug, Clone, Serialize, Deserialize)]
50pub struct MarketAnalysis {
51 pub category_performance: HashMap<String, CategoryPerformance>,
53 pub trending_products: Vec<String>,
55 pub segment_distribution: HashMap<String, u32>,
57 pub market_opportunities: Vec<String>,
59 pub competitive_landscape: HashMap<String, f64>,
61 pub forecast: HashMap<String, f64>,
63}
64
65#[derive(Debug, Clone, Serialize, Deserialize)]
67pub struct EnterpriseMetrics {
68 pub total_products: usize,
70 pub total_employees: usize,
72 pub total_customers: usize,
74 pub total_revenue: f64,
76 pub avg_customer_satisfaction: f64,
78 pub employee_engagement: f64,
80 pub organizational_efficiency: f64,
82 pub innovation_index: f64,
84 pub top_products: Vec<String>,
86 pub top_employees: Vec<String>,
88 pub high_value_customers: Vec<String>,
90}