Spaces:
Runtime error
Runtime error
Commit ·
585c750
1
Parent(s): 42ee735
No I did not
Browse files- business_continuity.py +4 -24
business_continuity.py
CHANGED
|
@@ -86,22 +86,6 @@ def call_groq_api(prompt: str, user_message: str):
|
|
| 86 |
logger.error(f"API call failed: {str(e)}")
|
| 87 |
raise Exception(f"API call failed: {str(e)}")
|
| 88 |
|
| 89 |
-
def create_error_response(request_id: str, error_message: str) -> RecoveryStrategiesResponse:
|
| 90 |
-
"""Create a simple error response"""
|
| 91 |
-
return RecoveryStrategiesResponse(
|
| 92 |
-
success=False,
|
| 93 |
-
people_unavailability_strategy="Error: Strategy not generated",
|
| 94 |
-
people_reasoning="Error: Reasoning not generated",
|
| 95 |
-
technology_data_unavailability_strategy="Error: Strategy not generated",
|
| 96 |
-
technology_reasoning="Error: Reasoning not generated",
|
| 97 |
-
site_unavailability_strategy="Error: Strategy not generated",
|
| 98 |
-
site_reasoning="Error: Reasoning not generated",
|
| 99 |
-
third_party_vendors_unavailability_strategy="Error: Strategy not generated",
|
| 100 |
-
vendor_reasoning="Error: Reasoning not generated",
|
| 101 |
-
message=f"Error: {error_message}",
|
| 102 |
-
request_id=request_id
|
| 103 |
-
)
|
| 104 |
-
|
| 105 |
@business_continuity_router.post("/api/business-continuity/generate-recovery-strategies", response_model=RecoveryStrategiesResponse)
|
| 106 |
def generate_recovery_strategies(request: BusinessContinuityRequest):
|
| 107 |
"""Generate business continuity recovery strategies"""
|
|
@@ -140,13 +124,9 @@ Process: {request.business_process.process_name}
|
|
| 140 |
Department: {request.business_process.department}
|
| 141 |
Description: {request.business_process.process_description}"""
|
| 142 |
|
| 143 |
-
|
| 144 |
-
|
| 145 |
-
|
| 146 |
-
logger.info(f"Request {request_id}: Received API response")
|
| 147 |
-
except Exception as e:
|
| 148 |
-
logger.error(f"Request {request_id}: API call failed - {str(e)}")
|
| 149 |
-
return create_error_response(request_id, "API error")
|
| 150 |
|
| 151 |
# Parse JSON response directly
|
| 152 |
try:
|
|
@@ -156,7 +136,7 @@ Description: {request.business_process.process_description}"""
|
|
| 156 |
except json.JSONDecodeError as e:
|
| 157 |
# If parsing fails, just return the error
|
| 158 |
logger.error(f"Request {request_id}: JSON parsing failed - {str(e)}")
|
| 159 |
-
logger.error(f"Request {request_id}: Raw response preview: {api_response
|
| 160 |
return create_error_response(request_id, "Invalid JSON response from API")
|
| 161 |
|
| 162 |
# Safely get fields with fallbacks
|
|
|
|
| 86 |
logger.error(f"API call failed: {str(e)}")
|
| 87 |
raise Exception(f"API call failed: {str(e)}")
|
| 88 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 89 |
@business_continuity_router.post("/api/business-continuity/generate-recovery-strategies", response_model=RecoveryStrategiesResponse)
|
| 90 |
def generate_recovery_strategies(request: BusinessContinuityRequest):
|
| 91 |
"""Generate business continuity recovery strategies"""
|
|
|
|
| 124 |
Department: {request.business_process.department}
|
| 125 |
Description: {request.business_process.process_description}"""
|
| 126 |
|
| 127 |
+
|
| 128 |
+
api_response = call_groq_api(system_prompt, user_message)
|
| 129 |
+
logger.info(f"Request {request_id}: Received API response")
|
|
|
|
|
|
|
|
|
|
|
|
|
| 130 |
|
| 131 |
# Parse JSON response directly
|
| 132 |
try:
|
|
|
|
| 136 |
except json.JSONDecodeError as e:
|
| 137 |
# If parsing fails, just return the error
|
| 138 |
logger.error(f"Request {request_id}: JSON parsing failed - {str(e)}")
|
| 139 |
+
logger.error(f"Request {request_id}: Raw response preview: {api_response}")
|
| 140 |
return create_error_response(request_id, "Invalid JSON response from API")
|
| 141 |
|
| 142 |
# Safely get fields with fallbacks
|