Spaces:
Running
Running
Commit
·
7976155
1
Parent(s):
07a5f5c
Include risk descriptions
Browse files- app.py +3 -2
- executor.py +14 -4
app.py
CHANGED
@@ -47,7 +47,7 @@ class UI:
|
|
47 |
)
|
48 |
self.model_name_or_path = gr.Dropdown(
|
49 |
#choices=['codellama/codellama-34b-instruct-hf', 'google/flan-t5-xl', 'google/flan-t5-xxl', 'google/flan-ul2', 'ibm/granite-13b-instruct-v2', 'ibm/granite-20b-code-instruct', 'ibm/granite-20b-multilingual', 'ibm/granite-3-2-8b-instruct-preview-rc', 'ibm/granite-3-2b-instruct', 'ibm/granite-3-8b-instruct', 'ibm/granite-34b-code-instruct', 'ibm/granite-3b-code-instruct', 'ibm/granite-8b-code-instruct', 'ibm/granite-guardian-3-2b', 'ibm/granite-guardian-3-8b', 'meta-llama/llama-2-13b-chat', 'meta-llama/llama-3-1-70b-instruct', 'meta-llama/llama-3-1-8b-instruct', 'meta-llama/llama-3-2-11b-vision-instruct', 'meta-llama/llama-3-2-1b-instruct', 'meta-llama/llama-3-2-3b-instruct', 'meta-llama/llama-3-2-90b-vision-instruct', 'meta-llama/llama-3-3-70b-instruct', 'meta-llama/llama-3-405b-instruct', 'meta-llama/llama-guard-3-11b-vision', 'mistralai/mistral-large', 'mistralai/mixtral-8x7b-instruct-v01'],
|
50 |
-
choices=["ibm/granite-20b-code-instruct"]
|
51 |
value="ibm/granite-20b-code-instruct",
|
52 |
multiselect=False,
|
53 |
label="Choose language model to use",
|
@@ -65,6 +65,7 @@ class UI:
|
|
65 |
|
66 |
self.assessment_sec = gr.Markdown()
|
67 |
self.assessed_risks = gr.Dataset(label=None, visible=False)
|
|
|
68 |
|
69 |
gr.Markdown(
|
70 |
"""<h2> Related Risks </h2>
|
@@ -114,7 +115,7 @@ class UI:
|
|
114 |
fn=mitigations,
|
115 |
inputs=[self.assessed_risks, self.taxonomy],
|
116 |
# NOTETOSELF: Intent based risk is stored in self.risk (if needed)
|
117 |
-
outputs=[self.relatedrisks, self.mitigations]
|
118 |
)
|
119 |
return demo
|
120 |
|
|
|
47 |
)
|
48 |
self.model_name_or_path = gr.Dropdown(
|
49 |
#choices=['codellama/codellama-34b-instruct-hf', 'google/flan-t5-xl', 'google/flan-t5-xxl', 'google/flan-ul2', 'ibm/granite-13b-instruct-v2', 'ibm/granite-20b-code-instruct', 'ibm/granite-20b-multilingual', 'ibm/granite-3-2-8b-instruct-preview-rc', 'ibm/granite-3-2b-instruct', 'ibm/granite-3-8b-instruct', 'ibm/granite-34b-code-instruct', 'ibm/granite-3b-code-instruct', 'ibm/granite-8b-code-instruct', 'ibm/granite-guardian-3-2b', 'ibm/granite-guardian-3-8b', 'meta-llama/llama-2-13b-chat', 'meta-llama/llama-3-1-70b-instruct', 'meta-llama/llama-3-1-8b-instruct', 'meta-llama/llama-3-2-11b-vision-instruct', 'meta-llama/llama-3-2-1b-instruct', 'meta-llama/llama-3-2-3b-instruct', 'meta-llama/llama-3-2-90b-vision-instruct', 'meta-llama/llama-3-3-70b-instruct', 'meta-llama/llama-3-405b-instruct', 'meta-llama/llama-guard-3-11b-vision', 'mistralai/mistral-large', 'mistralai/mixtral-8x7b-instruct-v01'],
|
50 |
+
choices=["ibm/granite-20b-code-instruct"],
|
51 |
value="ibm/granite-20b-code-instruct",
|
52 |
multiselect=False,
|
53 |
label="Choose language model to use",
|
|
|
65 |
|
66 |
self.assessment_sec = gr.Markdown()
|
67 |
self.assessed_risks = gr.Dataset(label=None, visible=False)
|
68 |
+
self.assessed_risk_definition = gr.Markdown()
|
69 |
|
70 |
gr.Markdown(
|
71 |
"""<h2> Related Risks </h2>
|
|
|
115 |
fn=mitigations,
|
116 |
inputs=[self.assessed_risks, self.taxonomy],
|
117 |
# NOTETOSELF: Intent based risk is stored in self.risk (if needed)
|
118 |
+
outputs=[self.assessed_risk_definition, self.relatedrisks, self.mitigations]
|
119 |
)
|
120 |
return demo
|
121 |
|
executor.py
CHANGED
@@ -1,3 +1,4 @@
|
|
|
|
1 |
from dotenv import load_dotenv
|
2 |
|
3 |
load_dotenv(override=True)
|
@@ -55,15 +56,23 @@ def risk_identifier(usecase: str,
|
|
55 |
|
56 |
|
57 |
@lru_cache
|
58 |
-
def mitigations(riskid: str, taxonomy: str) -> tuple[gr.Dataset, gr.DataFrame]:
|
59 |
"""
|
60 |
For a specific risk (riskid), returns
|
61 |
-
(a)
|
62 |
-
(b)
|
|
|
63 |
|
64 |
"""
|
65 |
|
|
|
|
|
|
|
|
|
|
|
|
|
66 |
related_risk_ids = ran.get_related_risk_ids_by_risk_id(riskid)
|
|
|
67 |
action_ids = []
|
68 |
|
69 |
if taxonomy == "ibm-risk-atlas":
|
@@ -102,5 +111,6 @@ def mitigations(riskid: str, taxonomy: str) -> tuple[gr.Dataset, gr.DataFrame]:
|
|
102 |
asample_name = [ran.get_action_by_id(i).name for i in asamples] #type: ignore
|
103 |
mitdf = pd.DataFrame({"Mitigation": asample_name, "Description": asample_labels})
|
104 |
|
105 |
-
return (gr.
|
|
|
106 |
gr.DataFrame(mitdf, wrap=True, show_copy_button=True, show_search="search", label=alabel, visible=True))
|
|
|
1 |
+
from ast import Attribute
|
2 |
from dotenv import load_dotenv
|
3 |
|
4 |
load_dotenv(override=True)
|
|
|
56 |
|
57 |
|
58 |
@lru_cache
|
59 |
+
def mitigations(riskid: str, taxonomy: str) -> tuple[gr.Markdown, gr.Dataset, gr.DataFrame]:
|
60 |
"""
|
61 |
For a specific risk (riskid), returns
|
62 |
+
(a) a risk description
|
63 |
+
(b) related risks - as a dataset
|
64 |
+
(c) mitigations
|
65 |
|
66 |
"""
|
67 |
|
68 |
+
try:
|
69 |
+
risk_desc = ran.get_risk_by_id(riskid).description # type: ignore
|
70 |
+
risk_sec = f"<h3>Description: </h3> {risk_desc}"
|
71 |
+
except AttributeError:
|
72 |
+
risk_sec = ""
|
73 |
+
|
74 |
related_risk_ids = ran.get_related_risk_ids_by_risk_id(riskid)
|
75 |
+
|
76 |
action_ids = []
|
77 |
|
78 |
if taxonomy == "ibm-risk-atlas":
|
|
|
111 |
asample_name = [ran.get_action_by_id(i).name for i in asamples] #type: ignore
|
112 |
mitdf = pd.DataFrame({"Mitigation": asample_name, "Description": asample_labels})
|
113 |
|
114 |
+
return (gr.Markdown(risk_sec),
|
115 |
+
gr.Dataset(samples=samples, label=label, sample_labels=sample_labels, visible=True),
|
116 |
gr.DataFrame(mitdf, wrap=True, show_copy_button=True, show_search="search", label=alabel, visible=True))
|