From 6c847ad0d78da6862080e0a41f4b7fc9ff43a280 Mon Sep 17 00:00:00 2001 From: Ishaan Jaff Date: Sat, 30 Mar 2024 11:30:18 -0700 Subject: [PATCH 1/2] (ui) dont let prediction block spend view --- .../src/components/view_key_table.tsx | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/ui/litellm-dashboard/src/components/view_key_table.tsx b/ui/litellm-dashboard/src/components/view_key_table.tsx index 4269bfc0243..bf3affe14c0 100644 --- a/ui/litellm-dashboard/src/components/view_key_table.tsx +++ b/ui/litellm-dashboard/src/components/view_key_table.tsx @@ -84,15 +84,20 @@ const ViewKeyTable: React.FC = ({ setSpendData(response); // predict spend based on response - const predictedSpend = await PredictedSpendLogsCall(accessToken, response); - console.log("Response2:", predictedSpend); + try { + const predictedSpend = await PredictedSpendLogsCall(accessToken, response); + console.log("Response2:", predictedSpend); - // append predictedSpend to data - const combinedData = [...response, ...predictedSpend.response]; - setSpendData(combinedData); - setPredictedSpendString(predictedSpend.predicted_spend) + // append predictedSpend to data + const combinedData = [...response, ...predictedSpend.response]; + setSpendData(combinedData); + setPredictedSpendString(predictedSpend.predicted_spend) - console.log("Combined Data:", combinedData); + console.log("Combined Data:", combinedData); + } catch (error) { + console.error("There was an error fetching the predicted data", error); + } + // setPredictedSpend(predictedSpend); } catch (error) { From da20aecb16e4cfe508070a118512036b99086222 Mon Sep 17 00:00:00 2001 From: Ishaan Jaff Date: Sat, 30 Mar 2024 11:34:20 -0700 Subject: [PATCH 2/2] (fix) check size of data to predict --- enterprise/utils.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/enterprise/utils.py b/enterprise/utils.py index d762cd56cfc..c575a74f6b0 100644 --- a/enterprise/utils.py +++ b/enterprise/utils.py @@ -251,6 +251,11 @@ def _forecast_daily_cost(data: list): import requests from datetime import datetime, timedelta + if len(data) == 0: + return { + "response": [], + "predicted_spend": "Current Spend = $0, Predicted = $0", + } first_entry = data[0] last_entry = data[-1]