khaerens commited on
Commit
497c76e
1 Parent(s): 746bea5
.vscode/settings.json CHANGED
@@ -1,7 +1,7 @@
1
  {
2
  "workbench.colorCustomizations": {
3
- "activityBar.background": "#630018",
4
- "titleBar.activeBackground": "#8A0121",
5
- "titleBar.activeForeground": "#FFFBFC"
6
  }
7
  }
 
1
  {
2
  "workbench.colorCustomizations": {
3
+ "activityBar.background": "#09323E",
4
+ "titleBar.activeBackground": "#0C4656",
5
+ "titleBar.activeForeground": "#F6FCFE"
6
  }
7
  }
1643364695510.8708.html ADDED
@@ -0,0 +1,116 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <html>
2
+ <head>
3
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/vis/4.16.1/vis.css" type="text/css" />
4
+ <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/vis/4.16.1/vis-network.min.js"> </script>
5
+ <center>
6
+ <h1></h1>
7
+ </center>
8
+
9
+ <!-- <link rel="stylesheet" href="../node_modules/vis/dist/vis.min.css" type="text/css" />
10
+ <script type="text/javascript" src="../node_modules/vis/dist/vis.js"> </script>-->
11
+
12
+ <style type="text/css">
13
+
14
+ #mynetwork {
15
+ width: 700px;
16
+ height: 700px;
17
+ background-color: #ffffff;
18
+ border: 1px solid lightgray;
19
+ position: relative;
20
+ float: left;
21
+ }
22
+
23
+
24
+
25
+
26
+
27
+
28
+ </style>
29
+
30
+ </head>
31
+
32
+ <body>
33
+ <div id = "mynetwork"></div>
34
+
35
+
36
+ <script type="text/javascript">
37
+
38
+ // initialize global variables.
39
+ var edges;
40
+ var nodes;
41
+ var network;
42
+ var container;
43
+ var options, data;
44
+
45
+
46
+ // This method is responsible for drawing the graph, returns the drawn network
47
+ function drawGraph() {
48
+ var container = document.getElementById('mynetwork');
49
+
50
+
51
+
52
+ // parsing and collecting nodes and edges from the python
53
+ nodes = new vis.DataSet([{"id": "tasmania", "label": "tasmania", "shape": "circle"}, {"id": "australia", "label": "australia", "shape": "circle"}]);
54
+ edges = new vis.DataSet([{"arrows": "to", "from": "australia", "label": "contains administrative territorial entity", "title": "contains administrative territorial entity", "to": "tasmania"}, {"arrows": "to", "from": "tasmania", "label": "located in the administrative territorial entity", "title": "located in the administrative territorial entity", "to": "australia"}]);
55
+
56
+ // adding nodes and edges to the graph
57
+ data = {nodes: nodes, edges: edges};
58
+
59
+ var options = {
60
+ "configure": {
61
+ "enabled": false
62
+ },
63
+ "edges": {
64
+ "color": {
65
+ "inherit": true
66
+ },
67
+ "smooth": {
68
+ "enabled": true,
69
+ "type": "dynamic"
70
+ }
71
+ },
72
+ "interaction": {
73
+ "dragNodes": true,
74
+ "hideEdgesOnDrag": false,
75
+ "hideNodesOnDrag": false
76
+ },
77
+ "physics": {
78
+ "enabled": true,
79
+ "repulsion": {
80
+ "centralGravity": 0.2,
81
+ "damping": 0.09,
82
+ "nodeDistance": 200,
83
+ "springConstant": 0.05,
84
+ "springLength": 200
85
+ },
86
+ "solver": "repulsion",
87
+ "stabilization": {
88
+ "enabled": true,
89
+ "fit": true,
90
+ "iterations": 1000,
91
+ "onlyDynamicEdges": false,
92
+ "updateInterval": 50
93
+ }
94
+ }
95
+ };
96
+
97
+
98
+
99
+
100
+
101
+ network = new vis.Network(container, data, options);
102
+
103
+
104
+
105
+
106
+
107
+
108
+ return network;
109
+
110
+ }
111
+
112
+ drawGraph();
113
+
114
+ </script>
115
+ </body>
116
+ </html>
1643368448366.303.html ADDED
@@ -0,0 +1,116 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <html>
2
+ <head>
3
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/vis/4.16.1/vis.css" type="text/css" />
4
+ <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/vis/4.16.1/vis-network.min.js"> </script>
5
+ <center>
6
+ <h1></h1>
7
+ </center>
8
+
9
+ <!-- <link rel="stylesheet" href="../node_modules/vis/dist/vis.min.css" type="text/css" />
10
+ <script type="text/javascript" src="../node_modules/vis/dist/vis.js"> </script>-->
11
+
12
+ <style type="text/css">
13
+
14
+ #mynetwork {
15
+ width: 700px;
16
+ height: 700px;
17
+ background-color: #ffffff;
18
+ border: 1px solid lightgray;
19
+ position: relative;
20
+ float: left;
21
+ }
22
+
23
+
24
+
25
+
26
+
27
+
28
+ </style>
29
+
30
+ </head>
31
+
32
+ <body>
33
+ <div id = "mynetwork"></div>
34
+
35
+
36
+ <script type="text/javascript">
37
+
38
+ // initialize global variables.
39
+ var edges;
40
+ var nodes;
41
+ var network;
42
+ var container;
43
+ var options, data;
44
+
45
+
46
+ // This method is responsible for drawing the graph, returns the drawn network
47
+ function drawGraph() {
48
+ var container = document.getElementById('mynetwork');
49
+
50
+
51
+
52
+ // parsing and collecting nodes and edges from the python
53
+ nodes = new vis.DataSet([{"id": "software testing", "label": "software testing", "shape": "circle"}, {"id": "software under test", "label": "software under test", "shape": "circle"}]);
54
+ edges = new vis.DataSet([{"arrows": "to", "from": "software under test", "label": "subclass of", "title": "subclass of", "to": "software testing"}]);
55
+
56
+ // adding nodes and edges to the graph
57
+ data = {nodes: nodes, edges: edges};
58
+
59
+ var options = {
60
+ "configure": {
61
+ "enabled": false
62
+ },
63
+ "edges": {
64
+ "color": {
65
+ "inherit": true
66
+ },
67
+ "smooth": {
68
+ "enabled": true,
69
+ "type": "dynamic"
70
+ }
71
+ },
72
+ "interaction": {
73
+ "dragNodes": true,
74
+ "hideEdgesOnDrag": false,
75
+ "hideNodesOnDrag": false
76
+ },
77
+ "physics": {
78
+ "enabled": true,
79
+ "repulsion": {
80
+ "centralGravity": 0.2,
81
+ "damping": 0.09,
82
+ "nodeDistance": 200,
83
+ "springConstant": 0.05,
84
+ "springLength": 200
85
+ },
86
+ "solver": "repulsion",
87
+ "stabilization": {
88
+ "enabled": true,
89
+ "fit": true,
90
+ "iterations": 1000,
91
+ "onlyDynamicEdges": false,
92
+ "updateInterval": 50
93
+ }
94
+ }
95
+ };
96
+
97
+
98
+
99
+
100
+
101
+ network = new vis.Network(container, data, options);
102
+
103
+
104
+
105
+
106
+
107
+
108
+ return network;
109
+
110
+ }
111
+
112
+ drawGraph();
113
+
114
+ </script>
115
+ </body>
116
+ </html>
1643368606037.2578.html ADDED
@@ -0,0 +1,116 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <html>
2
+ <head>
3
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/vis/4.16.1/vis.css" type="text/css" />
4
+ <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/vis/4.16.1/vis-network.min.js"> </script>
5
+ <center>
6
+ <h1></h1>
7
+ </center>
8
+
9
+ <!-- <link rel="stylesheet" href="../node_modules/vis/dist/vis.min.css" type="text/css" />
10
+ <script type="text/javascript" src="../node_modules/vis/dist/vis.js"> </script>-->
11
+
12
+ <style type="text/css">
13
+
14
+ #mynetwork {
15
+ width: 700px;
16
+ height: 700px;
17
+ background-color: #ffffff;
18
+ border: 1px solid lightgray;
19
+ position: relative;
20
+ float: left;
21
+ }
22
+
23
+
24
+
25
+
26
+
27
+
28
+ </style>
29
+
30
+ </head>
31
+
32
+ <body>
33
+ <div id = "mynetwork"></div>
34
+
35
+
36
+ <script type="text/javascript">
37
+
38
+ // initialize global variables.
39
+ var edges;
40
+ var nodes;
41
+ var network;
42
+ var container;
43
+ var options, data;
44
+
45
+
46
+ // This method is responsible for drawing the graph, returns the drawn network
47
+ function drawGraph() {
48
+ var container = document.getElementById('mynetwork');
49
+
50
+
51
+
52
+ // parsing and collecting nodes and edges from the python
53
+ nodes = new vis.DataSet([{"id": "software testing", "label": "software testing", "shape": "circle"}, {"id": "software under test", "label": "software under test", "shape": "circle"}]);
54
+ edges = new vis.DataSet([{"arrows": "to", "from": "software under test", "label": "subclass of", "title": "subclass of", "to": "software testing"}]);
55
+
56
+ // adding nodes and edges to the graph
57
+ data = {nodes: nodes, edges: edges};
58
+
59
+ var options = {
60
+ "configure": {
61
+ "enabled": false
62
+ },
63
+ "edges": {
64
+ "color": {
65
+ "inherit": true
66
+ },
67
+ "smooth": {
68
+ "enabled": true,
69
+ "type": "dynamic"
70
+ }
71
+ },
72
+ "interaction": {
73
+ "dragNodes": true,
74
+ "hideEdgesOnDrag": false,
75
+ "hideNodesOnDrag": false
76
+ },
77
+ "physics": {
78
+ "enabled": true,
79
+ "repulsion": {
80
+ "centralGravity": 0.2,
81
+ "damping": 0.09,
82
+ "nodeDistance": 200,
83
+ "springConstant": 0.05,
84
+ "springLength": 200
85
+ },
86
+ "solver": "repulsion",
87
+ "stabilization": {
88
+ "enabled": true,
89
+ "fit": true,
90
+ "iterations": 1000,
91
+ "onlyDynamicEdges": false,
92
+ "updateInterval": 50
93
+ }
94
+ }
95
+ };
96
+
97
+
98
+
99
+
100
+
101
+ network = new vis.Network(container, data, options);
102
+
103
+
104
+
105
+
106
+
107
+
108
+ return network;
109
+
110
+ }
111
+
112
+ drawGraph();
113
+
114
+ </script>
115
+ </body>
116
+ </html>
1643369883907.5068.html ADDED
@@ -0,0 +1,116 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <html>
2
+ <head>
3
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/vis/4.16.1/vis.css" type="text/css" />
4
+ <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/vis/4.16.1/vis-network.min.js"> </script>
5
+ <center>
6
+ <h1></h1>
7
+ </center>
8
+
9
+ <!-- <link rel="stylesheet" href="../node_modules/vis/dist/vis.min.css" type="text/css" />
10
+ <script type="text/javascript" src="../node_modules/vis/dist/vis.js"> </script>-->
11
+
12
+ <style type="text/css">
13
+
14
+ #mynetwork {
15
+ width: 700px;
16
+ height: 700px;
17
+ background-color: #ffffff;
18
+ border: 1px solid lightgray;
19
+ position: relative;
20
+ float: left;
21
+ }
22
+
23
+
24
+
25
+
26
+
27
+
28
+ </style>
29
+
30
+ </head>
31
+
32
+ <body>
33
+ <div id = "mynetwork"></div>
34
+
35
+
36
+ <script type="text/javascript">
37
+
38
+ // initialize global variables.
39
+ var edges;
40
+ var nodes;
41
+ var network;
42
+ var container;
43
+ var options, data;
44
+
45
+
46
+ // This method is responsible for drawing the graph, returns the drawn network
47
+ function drawGraph() {
48
+ var container = document.getElementById('mynetwork');
49
+
50
+
51
+
52
+ // parsing and collecting nodes and edges from the python
53
+ nodes = new vis.DataSet([{"id": "software testing", "label": "software testing", "shape": "circle"}, {"id": "software under test", "label": "software under test", "shape": "circle"}]);
54
+ edges = new vis.DataSet([{"arrows": "to", "from": "software under test", "label": "subclass of", "title": "subclass of", "to": "software testing"}]);
55
+
56
+ // adding nodes and edges to the graph
57
+ data = {nodes: nodes, edges: edges};
58
+
59
+ var options = {
60
+ "configure": {
61
+ "enabled": false
62
+ },
63
+ "edges": {
64
+ "color": {
65
+ "inherit": true
66
+ },
67
+ "smooth": {
68
+ "enabled": true,
69
+ "type": "dynamic"
70
+ }
71
+ },
72
+ "interaction": {
73
+ "dragNodes": true,
74
+ "hideEdgesOnDrag": false,
75
+ "hideNodesOnDrag": false
76
+ },
77
+ "physics": {
78
+ "enabled": true,
79
+ "repulsion": {
80
+ "centralGravity": 0.2,
81
+ "damping": 0.09,
82
+ "nodeDistance": 200,
83
+ "springConstant": 0.05,
84
+ "springLength": 200
85
+ },
86
+ "solver": "repulsion",
87
+ "stabilization": {
88
+ "enabled": true,
89
+ "fit": true,
90
+ "iterations": 1000,
91
+ "onlyDynamicEdges": false,
92
+ "updateInterval": 50
93
+ }
94
+ }
95
+ };
96
+
97
+
98
+
99
+
100
+
101
+ network = new vis.Network(container, data, options);
102
+
103
+
104
+
105
+
106
+
107
+
108
+ return network;
109
+
110
+ }
111
+
112
+ drawGraph();
113
+
114
+ </script>
115
+ </body>
116
+ </html>
app.py CHANGED
@@ -15,7 +15,7 @@ import os
15
 
16
 
17
  wiki_state_variables = {
18
- 'has_run':False,
19
  'wiki_suggestions': [],
20
  'wiki_text' : [],
21
  'nodes':[],
@@ -23,7 +23,7 @@ wiki_state_variables = {
23
  }
24
 
25
  free_text_state_variables = {
26
- 'has_run':False,
27
  }
28
 
29
  def wiki_init_state_variables():
@@ -52,7 +52,7 @@ def wiki_generate_graph():
52
  n = n.lower()
53
  if n not in st.session_state['topics']:
54
  st.session_state['nodes'].append(n)
55
- st.session_state['has_run'] = True
56
  st.success('Done!')
57
 
58
  def wiki_show_suggestion():
@@ -61,7 +61,7 @@ def wiki_show_suggestion():
61
  if st.session_state['input_method'] == "wikipedia":
62
  text = st.session_state.text
63
  if text is not None:
64
- subjects = text.split(",")
65
  for subj in subjects:
66
  st.session_state['wiki_suggestions'] += wikipedia.search(subj, results = 3)
67
 
@@ -98,7 +98,6 @@ def wiki_reset_session():
98
 
99
  def free_text_generate():
100
  st.session_state["GRAPH_FILENAME"] = str(dt.now().timestamp()*1000) + ".html"
101
-
102
  text = st.session_state['free_text'][0:500]
103
  rebel.generate_knowledge_graph([text], st.session_state["GRAPH_FILENAME"])
104
  st.session_state['has_run'] = True
@@ -165,6 +164,8 @@ def show_wiki_hub_page():
165
  - Hit the Generate button again to expand your graph!
166
  """
167
  )
 
 
168
  if st.session_state['has_run']:
169
  HtmlFile = open(st.session_state["GRAPH_FILENAME"], 'r', encoding='utf-8')
170
  source_code = HtmlFile.read()
@@ -191,7 +192,10 @@ def show_free_text_hub_page():
191
 
192
  st.sidebar.button("Reset", key="reset_key")
193
  free_text_layout()
 
 
194
  if st.session_state['has_run']:
 
195
  HtmlFile = open(st.session_state["GRAPH_FILENAME"], 'r', encoding='utf-8')
196
  source_code = HtmlFile.read()
197
  components.html(source_code, width=720, height=600)
@@ -201,6 +205,7 @@ if st.session_state['input_method'] == "wikipedia":
201
  wiki_init_state_variables()
202
  show_wiki_hub_page()
203
  else:
 
204
  show_free_text_hub_page()
205
 
206
 
 
15
 
16
 
17
  wiki_state_variables = {
18
+ 'has_run_wiki':False,
19
  'wiki_suggestions': [],
20
  'wiki_text' : [],
21
  'nodes':[],
 
23
  }
24
 
25
  free_text_state_variables = {
26
+ 'has_run_free':False,
27
  }
28
 
29
  def wiki_init_state_variables():
 
52
  n = n.lower()
53
  if n not in st.session_state['topics']:
54
  st.session_state['nodes'].append(n)
55
+ st.session_state['has_run_wiki'] = True
56
  st.success('Done!')
57
 
58
  def wiki_show_suggestion():
 
61
  if st.session_state['input_method'] == "wikipedia":
62
  text = st.session_state.text
63
  if text is not None:
64
+ subjects = text.split(",")[:5]
65
  for subj in subjects:
66
  st.session_state['wiki_suggestions'] += wikipedia.search(subj, results = 3)
67
 
 
98
 
99
  def free_text_generate():
100
  st.session_state["GRAPH_FILENAME"] = str(dt.now().timestamp()*1000) + ".html"
 
101
  text = st.session_state['free_text'][0:500]
102
  rebel.generate_knowledge_graph([text], st.session_state["GRAPH_FILENAME"])
103
  st.session_state['has_run'] = True
 
164
  - Hit the Generate button again to expand your graph!
165
  """
166
  )
167
+ print(st.session_state)
168
+
169
  if st.session_state['has_run']:
170
  HtmlFile = open(st.session_state["GRAPH_FILENAME"], 'r', encoding='utf-8')
171
  source_code = HtmlFile.read()
 
192
 
193
  st.sidebar.button("Reset", key="reset_key")
194
  free_text_layout()
195
+ print(st.session_state)
196
+
197
  if st.session_state['has_run']:
198
+ print(st.session_state)
199
  HtmlFile = open(st.session_state["GRAPH_FILENAME"], 'r', encoding='utf-8')
200
  source_code = HtmlFile.read()
201
  components.html(source_code, width=720, height=600)
 
205
  wiki_init_state_variables()
206
  show_wiki_hub_page()
207
  else:
208
+ free_test_init_state_variables()
209
  show_free_text_hub_page()
210
 
211