Thiloid commited on
Commit
2c2b066
·
verified ·
1 Parent(s): ce06108

Update run.py

Browse files
Files changed (1) hide show
  1. run.py +56 -6
run.py CHANGED
@@ -18,9 +18,8 @@ print(client.list_collections())
18
  from chromadb.utils import embedding_functions
19
  default_ef = embedding_functions.DefaultEmbeddingFunction()
20
  sentence_transformer_ef = embedding_functions.SentenceTransformerEmbeddingFunction(model_name="T-Systems-onsite/cross-en-de-roberta-sentence-transformer")#"VAGOsolutions/SauerkrautLM-Mixtral-8x7B-Instruct")
21
- #instructor_ef = embedding_functions.InstructorEmbeddingFunction(model_name="hkunlp/instructor-large", device="cuda")
22
- #print(str(client.list_collections()))
23
- collection = client.get_collection(name="chromaTS", embedding_function=sentence_transformer_ef)
24
 
25
  client = InferenceClient("mistralai/Mixtral-8x7B-Instruct-v0.1")
26
 
@@ -68,8 +67,8 @@ def response(
68
  combination = [' '.join(triplets) for triplets in combination]
69
  #print(str(prompt)+"\n\n"+str(combination))
70
  if(len(results)>1):
71
- addon=" Bitte berücksichtige bei deiner Antwort ausschießlich folgende Auszüge aus unserer Datenbank, sofern sie für die Antwort erforderlich sind. Beantworte die Frage knapp und präzise. Ignoriere unpassende Datenbank-Auszüge OHNE sie zu kommentieren, zu erwähnen oder aufzulisten:\n"+"\n".join(results)
72
- system="Du bist ein deutschsprachiges KI-basiertes Studienberater Assistenzsystem, das zu jedem Anliegen möglichst geeignete Studieninformationen empfiehlt."+addon+"\n\nUser-Anliegen:"
73
  formatted_prompt = format_prompt(system+"\n"+prompt,history)
74
  stream = client.text_generation(formatted_prompt, **generate_kwargs, stream=True, details=True, return_full_text=False)
75
  output = ""
@@ -78,8 +77,59 @@ def response(
78
  yield output
79
  #output=output+"\n\n<br><details open><summary><strong>Sources</strong></summary><br><ul>"+ "".join(["<li>" + s + "</li>" for s in combination])+"</ul></details>"
80
  yield output
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
81
 
82
- gr.ChatInterface(response, chatbot=gr.Chatbot(value=[[None,"Herzlich willkommen! Ich bin Chätti ein KI-basiertes Studienassistenzsystem, das für jede Anfrage die am besten Studieninformationen empfiehlt.<br>Erzähle mir, was du gerne tust!"]],render_markdown=True),title="German Studyhelper Chätti").queue().launch(share=True) #False, server_name="0.0.0.0", server_port=7864)
83
  print("Interface up and running!")
84
 
85
 
 
18
  from chromadb.utils import embedding_functions
19
  default_ef = embedding_functions.DefaultEmbeddingFunction()
20
  sentence_transformer_ef = embedding_functions.SentenceTransformerEmbeddingFunction(model_name="T-Systems-onsite/cross-en-de-roberta-sentence-transformer")#"VAGOsolutions/SauerkrautLM-Mixtral-8x7B-Instruct")
21
+
22
+ collection = client.get_collection(name="chromatsc", embedding_function=sentence_transformer_ef)
 
23
 
24
  client = InferenceClient("mistralai/Mixtral-8x7B-Instruct-v0.1")
25
 
 
67
  combination = [' '.join(triplets) for triplets in combination]
68
  #print(str(prompt)+"\n\n"+str(combination))
69
  if(len(results)>1):
70
+ addon=" Bitte berücksichtige bei deiner Antwort ausschießlich folgende Auszüge aus unserer Wahlhilfe Datenbank, sofern sie für die Antwort erforderlich sind. Beantworte die Frage knapp und präzise. Ignoriere unpassende Datenbank-Auszüge OHNE sie zu kommentieren, zu erwähnen oder aufzulisten:\n"+"\n".join(results)
71
+ system="Du heißt Avah und bist ein deutschsprachiges KI-basiertes Wahlhilfe Beratungssystem zum Wahl-O-Maten für die Bundestagswahl 2021."+addon+"\n\nUser-Anliegen:"
72
  formatted_prompt = format_prompt(system+"\n"+prompt,history)
73
  stream = client.text_generation(formatted_prompt, **generate_kwargs, stream=True, details=True, return_full_text=False)
74
  output = ""
 
77
  yield output
78
  #output=output+"\n\n<br><details open><summary><strong>Sources</strong></summary><br><ul>"+ "".join(["<li>" + s + "</li>" for s in combination])+"</ul></details>"
79
  yield output
80
+
81
+ def update_prompt(selected_option, history):
82
+ if selected_option=="Keine These ausgewählt":
83
+ selected_option== " "
84
+ return history, selected_option
85
+
86
+ dropdown_options = ["Keine These ausgewählt",
87
+ 'Auf allen Autobahnen soll ein generelles Tempolimit gelten.',
88
+ 'Deutschland soll seine Verteidigungsausgaben erhöhen.',
89
+ 'Bei Bundestagswahlen sollen auch Jugendliche ab 16 Jahren wählen dürfen.',
90
+ 'Die Förderung von Windenergie soll beendet werden.',
91
+ 'Die Möglichkeiten der Vermieterinnen und Vermieter, Wohnungsmieten zu erhöhen, sollen gesetzlich stärker begrenzt werden.',
92
+ 'Impfstoffe gegen Covid-19 sollen weiterhin durch Patente geschützt sein.',
93
+ 'Der für das Jahr 2038 geplante Ausstieg aus der Kohleverstromung soll vorgezogen werden.',
94
+ 'Alle Erwerbstätigen sollen in der gesetzlichen Rentenversicherung versichert sein müssen.',
95
+ 'Das Recht anerkannter Flüchtlinge auf Familiennachzug soll abgeschafft werden.',
96
+ 'Auf den Umsatz, der in Deutschland mit digitalen Dienstleistungen erzielt wird, soll eine nationale Steuer erhoben werden.',
97
+ 'Die traditionelle Familie aus Vater, Mutter und Kindern soll stärker als andere Lebensgemeinschaften gefördert werden.',
98
+ 'Spenden von Unternehmen an Parteien sollen weiterhin erlaubt sein.',
99
+ 'Studentinnen und Studenten sollen BAföG unabhängig vom Einkommen ihrer Eltern erhalten.',
100
+ 'In Deutschland soll es generell möglich sein, neben der deutschen eine zweite Staatsbürgerschaft zu haben.',
101
+ 'Bundesbehörden sollen in ihren Veröffentlichungen unterschiedliche Geschlechtsidentitäten sprachlich berücksichtigen.',
102
+ 'Die Ostsee-Pipeline "Nord Stream 2", die Gas von Russland nach Deutschland transportiert, soll wie geplant in Betrieb gehen dürfen.',
103
+ 'Der Solidaritätszuschlag soll vollständig abgeschafft werden.',
104
+ 'Das Tragen eines Kopftuchs soll Beamtinnen im Dienst generell erlaubt sein.',
105
+ 'Die Zulassung von neuen Autos mit Verbrennungsmotor soll auch langfristig möglich sein.',
106
+ 'Der Bund soll mehr Zuständigkeiten in der Schulpolitik erhalten.',
107
+ 'Der Bund soll Projekte zur Bekämpfung des Antisemitismus stärker finanziell unterstützen.',
108
+ 'Chinesische Firmen sollen keine Aufträge für den Ausbau der Kommunikationsinfrastruktur in Deutschland erhalten dürfen.',
109
+ 'Der Staat soll weiterhin für Religionsgemeinschaften die Kirchensteuer einziehen.',
110
+ 'Der kontrollierte Verkauf von Cannabis soll generell erlaubt sein.',
111
+ 'Deutschland soll aus der Europäischen Union austreten.',
112
+ 'Die Landeslisten der Parteien für die Wahlen zum Deutschen Bundestag sollen abwechselnd mit Frauen und Männern besetzt werden m��ssen.',
113
+ 'Stationäre Behandlungen im Krankenhaus sollen weiterhin über eine Fallpauschale abgerechnet werden.',
114
+ 'Auf hohe Vermögen soll wieder eine Steuer erhoben werden.',
115
+ 'Bei der Videoüberwachung öffentlicher Plätze soll Gesichtserkennungssoftware eingesetzt werden dürfen.',
116
+ 'Auch Ehepaare ohne Kinder sollen weiterhin steuerlich begünstigt werden.',
117
+ 'Ökologische Landwirtschaft soll stärker gefördert werden als konventionelle Landwirtschaft.',
118
+ 'Islamische Verbände sollen als Religionsgemeinschaften staatlich anerkannt werden können.',
119
+ 'Der staatlich festgelegte Preis für den Ausstoß von CO2 beim Heizen und Autofahren soll stärker steigen als geplant.',
120
+ 'Die Schuldenbremse im Grundgesetz soll beibehalten werden.',
121
+ 'Asyl soll weiterhin nur politisch Verfolgten gewährt werden.',
122
+ 'Der gesetzliche Mindestlohn soll spätestens im Jahr 2022 auf mindestens 12 Euro erhöht werden.',
123
+ 'Der Flugverkehr soll höher besteuert werden.',
124
+ 'Unternehmen sollen selbst entscheiden, ob sie ihren Beschäftigten das Arbeiten im Homeoffice erlauben.']
125
+ ]
126
+
127
+ with gr.Blocks() as demo:
128
+ chatbot = gr.Chatbot(value=[[None,"Herzlich willkommen! Ich bin Chätti ein KI-basiertes Studienassistenzsystem, das für jede Anfrage die am besten Studieninformationen empfiehlt.<br>Erzähle mir, was du gerne tust!"]], render_markdown=True)
129
+ dropdown = gr.Dropdown(choices=dropdown_options, label="Choose an option")
130
+ dropdown.change(fn=update_prompt, inputs=[dropdown, chatbot], outputs=[chatbot, dropdown])
131
+ gr.ChatInterface(value=[[None,"Hallo mein Name ist Avah (Artificial Voting Advice Helper), deine interaktive Hilfe zum Wahl-O-Maten für die Bundestagswahl 2021. Wenn du Fragen zu Thesen der Wahlhilfe hast, wähle gerne die besagt These aus. Ansonsten kannst du mir auch unabhängig von bestimmten Thesen Fragen stellen."]],response, inputs=[gr.Textbox(), chatbot, dropdown], title="Avah (Artificial Voting Advice Helper)").queue().launch(share=True)
132
 
 
133
  print("Interface up and running!")
134
 
135