JOELDSL commited on
Commit
0a27e5e
·
1 Parent(s): 6094f30

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -4
app.py CHANGED
@@ -1,4 +1,4 @@
1
- import numpy as np
2
  import gradio as gr
3
  from transformers import pipeline
4
  pipe = pipeline("translation", model="Helsinki-NLP/opus-mt-en-es")
@@ -9,10 +9,24 @@ sumModel = pipeline("summarization", model="Einmalumdiewelt/T5-Base_GNAD")
9
  title_text = "(Anmerkung: Diese Seite ist noch in Entwicklung.)<br />Spätestens seit der Veröffentlichung von ChatGPT geniessen moderne Sprachmodelle grosse öffentliche Aufmerksamkeit. Allerdings ist es für nicht-Experten schwierig einzuschätzen, inwiefern die Technologie in ihrem Arbeitsumfeld eingesetzt werden könnten. Damit auch sie eine Intuition für die Möglichkeiten und Limitierungen von grossen Sprachmodellen entwickeln können, haben wir diese interaktive Webseite entwickelt. <br />Grundsätzlich sind Sprachmodelle nichts als statistische Modelle, welche die menschliche Sprache abbilden. Sie werden zuerst auf sehr allgemeine Tasks \"vortrainiert\", damit sie die Struktur der Sprache erlernen können. Ein solcher Task ist es zum Beispiel, das nächste Wort in einem Text vorauszusagen: Um dies lösen zu können, braucht ein Modell einerseits ein Verständnis für Grammatik. Anderseits muss es aber auch ein gewisses Verständnis für unsere \"Welt\" entwickeln, um stets das richtige Wort voraussagen zu können. Ein Beispiel für ein solches Modell ist GPT-2, welches Sie in der nachfolgenden Demo ausprobieren können. <br />Die vortrainierten Sprachmodelle haben also bereits ein Verständnis für Sprache, und eignen sich deshalb gut, um sie auf eine spezifische Aufgabe zu spezialisieren. Mögliche spezialisierte Aufgaben sind Übersetzungen, das Erkennen und Taggen von gewissen Konzepten im Text (sog. Named Entity Recognition), Textklassifizierung (z.B.: Ist diese Mail eine Spam-Mail? Ist dieses Feedback positiv?), Text-Zusammenfassung oder Fragen zu beantworten. Letztere zwei Beispiele können Sie in der Demo-App ausprobieren. <br />Die Qualität des Sprachmodells hängt stark von der Grösse des Modells sowie der Grösse des Datensatzes ab. Während die Technologien hinter ChatGPT bereits weitestgehend bekannt waren, ist das einzige Geheimnis hinter den verblüffenden Resultaten die Modellgrösse: Das Modell hat 175 Milliarden Parameter und wurde auf über 8 Milliarden Textdokumenten trainiert. Dadurch konnte es ein so gutes Verständnis für Sprache und unsere Welt erlangen, dass man das Gefühl hat, man interagiere mit einem anderen Menschen. "
10
  gpt2_text = 'GPT-2 ist ein Vorläufer von GPT-3.5, auf dem ChatGPT beruht. Das Modell vervollständigt eingegebene Texte, in dem es immer ein wahrscheinliches nächstes Wort voraussagt. Allerdings hat es auch einen kleinen Zufallsfaktor, damit der gleiche Input nicht immer das gleiche Resultat liefern. Das hier vorgestellte GPT-2 Modell hat 124 Millionen Parameter, ist also 1400x kleiner als ChatGPT - und somit auch erkennbar schlechter in der Textgenerierung. Das Modell versteht nur Englisch. '
11
  summarization_text = 'Hier wurde ein sogenanntes T5-Sprachmodell auf den Task der Text-Zusammenfassung spezialisiert. Das Modell versteht nur Englisch. '
12
- qa_text = 'Dieses Modell wurde darauf spezialisiert, in einem Text die Antwort auf eine gestellte Frage zu finden. Das Modell versteht nur Deutsch. '
13
 
14
 
15
- def textGeneration(text):
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16
  return gpt(text)
17
 
18
 
@@ -66,4 +80,4 @@ with gr.Blocks() as demo:
66
  summarize_button.click(
67
  summarization, inputs=inputText, outputs=summarized)
68
 
69
- demo.launch()
 
1
+ """import numpy as np
2
  import gradio as gr
3
  from transformers import pipeline
4
  pipe = pipeline("translation", model="Helsinki-NLP/opus-mt-en-es")
 
9
  title_text = "(Anmerkung: Diese Seite ist noch in Entwicklung.)<br />Spätestens seit der Veröffentlichung von ChatGPT geniessen moderne Sprachmodelle grosse öffentliche Aufmerksamkeit. Allerdings ist es für nicht-Experten schwierig einzuschätzen, inwiefern die Technologie in ihrem Arbeitsumfeld eingesetzt werden könnten. Damit auch sie eine Intuition für die Möglichkeiten und Limitierungen von grossen Sprachmodellen entwickeln können, haben wir diese interaktive Webseite entwickelt. <br />Grundsätzlich sind Sprachmodelle nichts als statistische Modelle, welche die menschliche Sprache abbilden. Sie werden zuerst auf sehr allgemeine Tasks \"vortrainiert\", damit sie die Struktur der Sprache erlernen können. Ein solcher Task ist es zum Beispiel, das nächste Wort in einem Text vorauszusagen: Um dies lösen zu können, braucht ein Modell einerseits ein Verständnis für Grammatik. Anderseits muss es aber auch ein gewisses Verständnis für unsere \"Welt\" entwickeln, um stets das richtige Wort voraussagen zu können. Ein Beispiel für ein solches Modell ist GPT-2, welches Sie in der nachfolgenden Demo ausprobieren können. <br />Die vortrainierten Sprachmodelle haben also bereits ein Verständnis für Sprache, und eignen sich deshalb gut, um sie auf eine spezifische Aufgabe zu spezialisieren. Mögliche spezialisierte Aufgaben sind Übersetzungen, das Erkennen und Taggen von gewissen Konzepten im Text (sog. Named Entity Recognition), Textklassifizierung (z.B.: Ist diese Mail eine Spam-Mail? Ist dieses Feedback positiv?), Text-Zusammenfassung oder Fragen zu beantworten. Letztere zwei Beispiele können Sie in der Demo-App ausprobieren. <br />Die Qualität des Sprachmodells hängt stark von der Grösse des Modells sowie der Grösse des Datensatzes ab. Während die Technologien hinter ChatGPT bereits weitestgehend bekannt waren, ist das einzige Geheimnis hinter den verblüffenden Resultaten die Modellgrösse: Das Modell hat 175 Milliarden Parameter und wurde auf über 8 Milliarden Textdokumenten trainiert. Dadurch konnte es ein so gutes Verständnis für Sprache und unsere Welt erlangen, dass man das Gefühl hat, man interagiere mit einem anderen Menschen. "
10
  gpt2_text = 'GPT-2 ist ein Vorläufer von GPT-3.5, auf dem ChatGPT beruht. Das Modell vervollständigt eingegebene Texte, in dem es immer ein wahrscheinliches nächstes Wort voraussagt. Allerdings hat es auch einen kleinen Zufallsfaktor, damit der gleiche Input nicht immer das gleiche Resultat liefern. Das hier vorgestellte GPT-2 Modell hat 124 Millionen Parameter, ist also 1400x kleiner als ChatGPT - und somit auch erkennbar schlechter in der Textgenerierung. Das Modell versteht nur Englisch. '
11
  summarization_text = 'Hier wurde ein sogenanntes T5-Sprachmodell auf den Task der Text-Zusammenfassung spezialisiert. Das Modell versteht nur Englisch. '
12
+ qa_text = 'Dieses Modell wurde darauf spezialisiert, in einem Text die Antwort auf eine gestellte Frage zu finden. Das Modell versteht nur Deutsch. '"""
13
 
14
 
15
+ import gradio as gr
16
+
17
+ description = "Story generation with GPT-2"
18
+ title = "Generate your own story"
19
+ examples = [["Adventurer is approached by a mysterious stranger in the tavern for a new quest."]]
20
+
21
+ interface = gr.Interface.load("huggingface/pranavpsv/gpt2-genre-story-generator",
22
+ description=description,
23
+ examples=examples
24
+ )
25
+
26
+ interface.launch()
27
+
28
+
29
+ """def textGeneration(text):
30
  return gpt(text)
31
 
32
 
 
80
  summarize_button.click(
81
  summarization, inputs=inputText, outputs=summarized)
82
 
83
+ demo.launch()"""