Spaces:
Runtime error
Runtime error
Commit
Β·
8a617c3
1
Parent(s):
04ce422
Updated knowledge graph
Browse files
app.py
CHANGED
@@ -471,6 +471,15 @@ for i in range(len(t)//3):
|
|
471 |
r.append(t[3*i:3*i+3])
|
472 |
r
|
473 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
474 |
def knowledge_graph(prompt):
|
475 |
|
476 |
response = openai.Completion.create(
|
@@ -493,27 +502,42 @@ def knowledge_graph(prompt):
|
|
493 |
t.append(r[3*i:3*i+3])
|
494 |
# t = [['"Ankit"', '"went_to"', '"market"'], ['"Ankit"', '"called"', '"Raj"']]
|
495 |
import networkx as nx
|
|
|
496 |
print(t)
|
497 |
G = nx.Graph()
|
|
|
|
|
|
|
|
|
|
|
498 |
for i in t:
|
499 |
-
|
500 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
501 |
G.add_edge(i[0],i[2])
|
502 |
pos = nx.spring_layout(G)
|
503 |
nx.draw(G,pos,labels={node: node for node in G.nodes()})
|
504 |
-
|
505 |
x = nx.draw_networkx_edge_labels(
|
506 |
G, pos,
|
507 |
-
edge_labels=
|
508 |
-
(t[1][0], t[1][2]): t[1][1]
|
509 |
-
},
|
510 |
font_color='red'
|
511 |
)
|
512 |
# print(x)
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
-
|
|
|
|
|
|
|
|
|
|
|
517 |
|
518 |
|
519 |
|
@@ -653,7 +677,7 @@ home</p>""")
|
|
653 |
hbtn.click(video, inputs=fil1, outputs=vid2)
|
654 |
|
655 |
with gr.Accordion("Generate Knowledge Graph",open=False):
|
656 |
-
gr.Markdown("**Genrate
|
657 |
with gr.Row():
|
658 |
with gr.Column():
|
659 |
prompt_to_generate_graph = gr.Text()
|
|
|
471 |
r.append(t[3*i:3*i+3])
|
472 |
r
|
473 |
|
474 |
+
def get_edge_labels(t:list):
|
475 |
+
dct = {}
|
476 |
+
length_of_t = len(t)
|
477 |
+
for i in range(length_of_t):
|
478 |
+
t[i][0] = t[i][0].replace('"',"").replace("'","").strip()
|
479 |
+
t[i][2] = t[i][2].replace('"',"").replace("'","").strip()
|
480 |
+
t[i][1] = t[i][1].replace('"',"").replace("'","")
|
481 |
+
dct[(t[i][0],t[i][2] )] = t[i][1]
|
482 |
+
return dct
|
483 |
def knowledge_graph(prompt):
|
484 |
|
485 |
response = openai.Completion.create(
|
|
|
502 |
t.append(r[3*i:3*i+3])
|
503 |
# t = [['"Ankit"', '"went_to"', '"market"'], ['"Ankit"', '"called"', '"Raj"']]
|
504 |
import networkx as nx
|
505 |
+
import random
|
506 |
print(t)
|
507 |
G = nx.Graph()
|
508 |
+
new_nodes = []
|
509 |
+
print('Edge labels')
|
510 |
+
edge_labels = get_edge_labels(t)
|
511 |
+
print(edge_labels)
|
512 |
+
print(f't after edge labesl = {t}')
|
513 |
for i in t:
|
514 |
+
if not i[0] in new_nodes:
|
515 |
+
new_nodes.append(i[0])
|
516 |
+
G.add_node(i[0])
|
517 |
+
if not i[2] in new_nodes:
|
518 |
+
new_nodes.append(i[2])
|
519 |
+
G.add_node(i[2])
|
520 |
+
# G.add_node(i[0])
|
521 |
+
# G.add_node(i[2])
|
522 |
G.add_edge(i[0],i[2])
|
523 |
pos = nx.spring_layout(G)
|
524 |
nx.draw(G,pos,labels={node: node for node in G.nodes()})
|
525 |
+
|
526 |
x = nx.draw_networkx_edge_labels(
|
527 |
G, pos,
|
528 |
+
edge_labels=edge_labels,
|
|
|
|
|
529 |
font_color='red'
|
530 |
)
|
531 |
# print(x)
|
532 |
+
random_name = f'generated_img_{random.randint(1,100000)}.png'
|
533 |
+
plt.savefig(f"/tmp/{random_name}")
|
534 |
+
plt.clf()
|
535 |
+
img = Image.open(f"/tmp/{random_name}")
|
536 |
+
os.remove(f"/tmp/{random_name}")
|
537 |
+
|
538 |
+
return np.asarray(img)
|
539 |
+
|
540 |
+
c =knowledge_graph("Alice went to office. Called bob. Went to grocery shopping. Then went home")
|
541 |
|
542 |
|
543 |
|
|
|
677 |
hbtn.click(video, inputs=fil1, outputs=vid2)
|
678 |
|
679 |
with gr.Accordion("Generate Knowledge Graph",open=False):
|
680 |
+
gr.Markdown("**Genrate Knowledge Graph**")
|
681 |
with gr.Row():
|
682 |
with gr.Column():
|
683 |
prompt_to_generate_graph = gr.Text()
|