Add AI insights feature
This commit is contained in:
@@ -62,6 +62,9 @@ class OrchestratorClient:
|
||||
params={
|
||||
"tenant_id": tenant_id,
|
||||
**query_params
|
||||
},
|
||||
headers={
|
||||
"x-internal-service": "alert-intelligence"
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@@ -450,5 +450,107 @@ RECOMMENDATION_TEMPLATES = {
|
||||
"potential_time_saved_minutes": "time_saved",
|
||||
"suggestion": "suggestion"
|
||||
}
|
||||
},
|
||||
|
||||
# ==================== AI INSIGHTS RECOMMENDATIONS ====================
|
||||
|
||||
"ai_yield_prediction": {
|
||||
"title_key": "recommendations.ai_yield_prediction.title",
|
||||
"title_params": {
|
||||
"recipe_name": "recipe_name"
|
||||
},
|
||||
"message_variants": {
|
||||
"generic": "recommendations.ai_yield_prediction.message"
|
||||
},
|
||||
"message_params": {
|
||||
"recipe_name": "recipe_name",
|
||||
"predicted_yield_percent": "predicted_yield",
|
||||
"confidence_percent": "confidence",
|
||||
"recommendation": "recommendation"
|
||||
}
|
||||
},
|
||||
|
||||
"ai_safety_stock_optimization": {
|
||||
"title_key": "recommendations.ai_safety_stock_optimization.title",
|
||||
"title_params": {
|
||||
"ingredient_name": "ingredient_name"
|
||||
},
|
||||
"message_variants": {
|
||||
"generic": "recommendations.ai_safety_stock_optimization.message"
|
||||
},
|
||||
"message_params": {
|
||||
"ingredient_name": "ingredient_name",
|
||||
"suggested_safety_stock_kg": "suggested_safety_stock",
|
||||
"current_safety_stock_kg": "current_safety_stock",
|
||||
"estimated_savings_eur": "estimated_savings",
|
||||
"confidence_percent": "confidence"
|
||||
}
|
||||
},
|
||||
|
||||
"ai_supplier_recommendation": {
|
||||
"title_key": "recommendations.ai_supplier_recommendation.title",
|
||||
"title_params": {
|
||||
"supplier_name": "supplier_name"
|
||||
},
|
||||
"message_variants": {
|
||||
"generic": "recommendations.ai_supplier_recommendation.message"
|
||||
},
|
||||
"message_params": {
|
||||
"supplier_name": "supplier_name",
|
||||
"reliability_score": "reliability_score",
|
||||
"recommendation": "recommendation",
|
||||
"confidence_percent": "confidence"
|
||||
}
|
||||
},
|
||||
|
||||
"ai_price_forecast": {
|
||||
"title_key": "recommendations.ai_price_forecast.title",
|
||||
"title_params": {
|
||||
"ingredient_name": "ingredient_name"
|
||||
},
|
||||
"message_variants": {
|
||||
"generic": "recommendations.ai_price_forecast.message"
|
||||
},
|
||||
"message_params": {
|
||||
"ingredient_name": "ingredient_name",
|
||||
"predicted_price_eur": "predicted_price",
|
||||
"current_price_eur": "current_price",
|
||||
"price_trend": "price_trend",
|
||||
"recommendation": "recommendation",
|
||||
"confidence_percent": "confidence"
|
||||
}
|
||||
},
|
||||
|
||||
"ai_demand_forecast": {
|
||||
"title_key": "recommendations.ai_demand_forecast.title",
|
||||
"title_params": {
|
||||
"product_name": "product_name"
|
||||
},
|
||||
"message_variants": {
|
||||
"generic": "recommendations.ai_demand_forecast.message"
|
||||
},
|
||||
"message_params": {
|
||||
"product_name": "product_name",
|
||||
"predicted_demand": "predicted_demand",
|
||||
"forecast_period": "forecast_period",
|
||||
"confidence_percent": "confidence",
|
||||
"recommendation": "recommendation"
|
||||
}
|
||||
},
|
||||
|
||||
"ai_business_rule": {
|
||||
"title_key": "recommendations.ai_business_rule.title",
|
||||
"title_params": {
|
||||
"rule_category": "rule_category"
|
||||
},
|
||||
"message_variants": {
|
||||
"generic": "recommendations.ai_business_rule.message"
|
||||
},
|
||||
"message_params": {
|
||||
"rule_category": "rule_category",
|
||||
"rule_description": "rule_description",
|
||||
"confidence_percent": "confidence",
|
||||
"recommendation": "recommendation"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user