petter2025's picture
Create app.py
7e904fd verified
raw
history blame
1.19 kB
# app.py
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
import gradio as gr
from agentic_reliability_framework.core.governance.risk_engine import RiskEngine
from agentic_reliability_framework.core.memory.semantic_memory import SemanticMemory
app = FastAPI(title="ARF v4 API")
# Enable CORS for your frontend
app.add_middleware(
CORSMiddleware,
allow_origins=["https://arf-frontend-sandy.vercel.app"],
allow_methods=["*"],
)
# Initialize ARF components
risk_engine = RiskEngine()
memory = SemanticMemory()
@app.get("/health")
async def health():
return {"status": "ok", "version": "4.0.0"}
@app.get("/api/v1/get_risk")
async def get_risk():
# Your existing risk endpoint logic
risk_score = risk_engine.get_current_risk()
return {
"system_risk": risk_score.mean,
"status": "critical" if risk_score.mean > 0.8 else "normal"
}
# Optional: keep the Gradio interface for interactive testing
iface = gr.Interface(
fn=lambda: f"ARF v4 - Current risk: {risk_engine.get_current_risk().mean:.2f}",
inputs=[],
outputs="text",
title="ARF v4 Demo"
)
app = gr.mount_gradio_app(app, iface, path="/")