rasmus1610 commited on
Commit
d02f3a9
1 Parent(s): 410f60a

polished it

Browse files
Files changed (3) hide show
  1. __pycache__/app.cpython-310.pyc +0 -0
  2. app.py +21 -2
  3. test.ipynb +0 -0
__pycache__/app.cpython-310.pyc CHANGED
Binary files a/__pycache__/app.cpython-310.pyc and b/__pycache__/app.cpython-310.pyc differ
 
app.py CHANGED
@@ -5,6 +5,7 @@ from sentence_transformers import SentenceTransformer
5
  import re
6
  import gradio as gr
7
  import json
 
8
 
9
  # Calculate the cosine similarity
10
  def cos_sim(vector1, vector2):
@@ -52,8 +53,26 @@ df["embeddings"] = df.embeddings.apply(json.loads)
52
  model = SentenceTransformer('thenlper/gte-base')
53
 
54
  def gradio_answer(input):
55
- return answer_question(input,n=2)
56
 
57
- demo = gr.Interface(fn=gradio_answer, inputs=gr.Textbox(lines=1, placeholder="Frage hier...", label="Frage"), outputs=gr.Textbox(lines=4, placeholder="Antwort hier...", label="Antwort"), title="S3 Leitlinie Carotis Stenose", examples=["In welchen Intervallen ist eine Nachuntersuchung nach CAS angezeigt?", "Ist eine ambulante Therapie der Carotisstenose mittels CEA oder CAS möglich und sinnvoll?", "Was sollte man als Bradykardie-Therapie bei Nachdilatation eines Stents einsetzen?"])
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
58
 
59
  demo.launch()
 
5
  import re
6
  import gradio as gr
7
  import json
8
+ import requests
9
 
10
  # Calculate the cosine similarity
11
  def cos_sim(vector1, vector2):
 
53
  model = SentenceTransformer('thenlper/gte-base')
54
 
55
  def gradio_answer(input):
56
+ return answer_question(input, n=2)
57
 
58
+ desc_string = """
59
+ In dieser Demo kannst du einer KI Fragen zum Inhalt der ['S3-Leitlinie Diagnostik, Therapie und Nachsorge der extracraniellen Carotisstenose'](https://register.awmf.org/de/leitlinien/detail/004-028) stellen. Ein paar Beispiele findest du unten.
60
+
61
+ ### Wie funktioniert das?
62
+
63
+ Mit Hilfe eines neuronalen Netzwerkes werden die Fragen in eine Vektor-Repräsentation ('Embedding') umgewandelt. Dann wird die Ähnlichkeit des 'Frage-Vektors' mit genauso erstellten Vektoren von Textpassagen der Leitlinie berechnet. Die Textpassagen, die am ähnlichsten sind, werden dann einem 'Large Language Model (LLM)' zur Beantwortung der Frage als Context gegeben. Diese Technik heißt ['retrieval-augmented Generation (RAG)'](https://research.ibm.com/blog/retrieval-augmented-generation-RAG).
64
+ """
65
+
66
+ demo = gr.Interface(
67
+ fn=gradio_answer,
68
+ inputs=gr.Textbox(lines=1, placeholder="Frage hier...", label="Frage"),
69
+ outputs=gr.Textbox(lines=4, placeholder="Antwort hier...", label="Antwort"),
70
+ title="🧠 Q&A S3 Leitlinie Carotisstenose",
71
+ description=desc_string,
72
+ examples=[
73
+ "In welchen Intervallen ist eine Nachuntersuchung nach Carotis-Stent (CAS) angezeigt?",
74
+ "Ist eine ambulante Therapie der Carotisstenose mittels CEA oder CAS möglich und sinnvoll?",
75
+ "Was sollte man als Bradykardie-Therapie bei Nachdilatation eines Stents einsetzen?"]
76
+ )
77
 
78
  demo.launch()
test.ipynb ADDED
File without changes