Commit d92a2731 authored by Christof Walther's avatar Christof Walther Committed by Patrick Schlindwein
Browse files

#60 added the post variant of the summarize api (nlp) endpoint

parent 2eb67996
from fastapi import FastAPI
from fastapi import FastAPI, Request
from app.summary.summary_word_embedding import WordEmbeddingSummarizer
from app.utilities import generator
from app.summary.simple_spacy_summarizer import SimpleSpacySummarizer
from app.summary.summary_sentence_embedding import SentenceEmbeddingSummarizer
from app.summary.summarization_with_strategy_TFIDF import SummaryTFIDF
from app.summary.summary_bert import BertSummary
from app.summary.summary_sentence_embedding import SentenceEmbeddingSummarizer
from app.summary.summary_word_embedding import WordEmbeddingSummarizer
from app.utilities import generator
app = FastAPI(
title="IntentFinder: NLP-API",
......@@ -47,9 +47,7 @@ async def api_strategies():
return res
@app.get("/summarize/{strategy_id}", summary="Generate a summary of the given"
" text.")
async def summarize(strategy_id: str, max_length: int, text: str):
async def call_strategy(strategy_id: str, text: str, max_length: int):
"""
This function will summarize a given text with a given summarization
strategy
......@@ -69,6 +67,36 @@ async def summarize(strategy_id: str, max_length: int, text: str):
return {"error": "invalid id"}
@app.get("/summarize/{strategy_id}", summary="Generate a summary of the given"
" text.")
async def get_summarize(strategy_id: str, max_length: int, text: str):
"""
get variant of the summarize api endpoint
:param max_length: max number of characters in the summarization
:param strategy_id: The id of the strategy
:param text: The text to be summarized
:return: The summary, strategy and quality of the summary in JSON format
"""
return await call_strategy(strategy_id, text, max_length)
@app.post("/summarize/{strategy_id}", summary="Generate a summary of the given"
" text.")
async def post_summarize(strategy_id: str, req: Request):
"""
post variant of the summarize api endpoint
:param strategy_id: The id of the strategy
:param req: The post body of the Request. Should have a text and maxLength
field.
:return: The summary, strategy and quality of the summary in JSON format
"""
req_json = await req.json()
return await call_strategy(strategy_id, req_json["text"],
req_json["maxLength"])
@app.post("/intentid", summary="Generate an intent id from a given intent"
" text")
async def generate_intent_id(intent: str, max_tokens: int):
......
from unittest import TestCase
import app.nlp_server
from fastapi.testclient import TestClient
import app.nlp_server
from app.summary.summary_strategy_interface import ISummaryStrategy
import json
class TestStrategy1(ISummaryStrategy):
"""
......@@ -55,9 +59,10 @@ class TestNlpApi(TestCase):
assert response.status_code == 200
assert response.json() == ["test1", "test2"]
def test_summarize(self):
def test_get_summarize(self):
"""
In this case the "/summarize/{strategy}" path of the rest api is tested
In this case the get variant of the "/summarize/{strategy}"
path of the rest api is tested
"""
# init test client
......@@ -77,3 +82,27 @@ class TestNlpApi(TestCase):
assert response2.status_code == 200
assert response2.json() == {"strategy": "test2",
"quality": 0.5, "summary": "result text"}
def test_post_summarize(self):
"""
In this case the post variant of the "/summarize/{strategy}"
path of the rest api is tested
"""
app.nlp_server.strategies = [TestStrategy1(), TestStrategy2()]
client = TestClient(app.nlp_server.app)
test_data = json.dumps({"text": "test text", "maxLength": 130})
# run test
response1 = client.post(
"/summarize/test1", test_data)
response2 = client.post(
"/summarize/test2", test_data)
# assert result
assert response1.status_code == 200
assert response1.json() == {"strategy": "test1",
"quality": 0.5, "summary": "test text"}
assert response2.status_code == 200
assert response2.json() == {"strategy": "test2",
"quality": 0.5, "summary": "result text"}
......@@ -11,496 +11,184 @@ from app.summary.summary_bert import BertSummary
# valid implementation of ISummaryStrategy
class TestBertSummarization(TestCase):
test_text = (
"Herr Doktor Çelik, wir sprechen regelmäßig über Ihre Arbeit "
"als Oberarzt auf der Isolierstation für Covid-19-Kranke im "
"Klinikum Darmstadt. Wie ist aktuell die Lage? Es ist ein "
"gemischtes Bild. Aktuell haben wir bei uns den Zenit der "
"Neuaufnahmen vorerst überschritten. Wir wissen noch nicht "
"genau, wie es weitergeht. Aber auf der Normalstation "
"entspannt sich die Situation etwas, wir haben in den "
"vergangenen Tagen weniger Patienten aufgenommen und "
"gleichzeitig einige Patienten entlassen können. Ganz anders "
"sieht es leider auf der Intensivstation aus: Da steigt die "
"Zahl der Covid-Patienten, gerade mussten die Räumlichkeiten "
"vergrößert werden. In der Vergangenheit war es so, dass sich "
"die Situation zuerst auf der Normalstation entspannt hat und "
"zwei Wochen später dann auf der Intensivstation. Jetzt ist "
"die Besonderheit zu beobachten, dass viele Patienten sehr "
"schnell nach der Krankenhausaufnahme auf die Intensivstation "
"müssen. Die klinischen Verläufe sind momentan schwerer. Die "
"Korrelation zwischen Patienten auf der Normal- und auf der "
"Intensivstation ist in der dritten Welle durcheinandergeraten"
". Woran liegt das? Insgesamt haben sich die Kenngrößen in der"
" Pandemie verändert. In den ersten zwei Wellen war der Anteil"
" der Infizierten, die im Krankenhaus behandelt werden müssen,"
" recht konstant – also die Hospitalisierungsrate. Das ist ein"
" wichtiger Wert für die Planung im Krankenhaus und für"
" politische Maßnahmen. Dieser Wert scheint niedriger geworden"
" zu sein, weil viele alte Menschen jetzt geimpft sind. Es"
" brauchen weniger Infizierte eine Krankenhausbehandlung."
" Gleichzeitig scheint die Intensivquote aber deutlich höher"
" zu sein – also der Anteil der Patienten im Krankenhaus, die"
" auf die Intensivstation müssen. Durch die Mutation B.1.1.7"
" hat sich der Verlauf der Krankheit verändert. Es müssen"
" viele junge Menschen unter 50 mit sehr schweren Verläufen"
" behandelt werden. Das kann eigentlich nur an der Mutation"
" liegen. Alle anderen Faktoren waren in der zweiten Welle"
" ähnlich wie jetzt. Auch die Inzidenz unter den jüngeren"
" Menschen war nicht viel niedriger. Aber in der dritten Welle"
" sehen wir viel häufiger junge Patienten mit schweren"
" Verläufen. Inwiefern haben sich die Verläufe verändert?"
" Vorher kamen die Patienten meist eine Woche nach"
" Symptombeginn mit milden oder schweren Symptomen auf die"
" Normalstation, zu Beginn der zweiten Krankheitswoche hat"
" sich oft eine Verschlechterung eingestellt. Jetzt läuft es"
" bei uns öfter so, dass die Patienten schon mit sehr wenig"
" Sauerstoff im Blut in der Notaufnahme ankommen oder schon"
" Gefäßverschlüsse haben. Einige müssen direkt auf die"
" Intensivstation – das haben wir vorher selten gesehen, jetzt"
" kommt das regelmäßig vor. Sollte der Anteil der"
" intensivpflichtigen Patienten unter den Infizierten weiter"
" ansteigen, hilft auch ein leichtes Absinken der"
" Neuinfiziertenzahlen nicht, um die Intensivstationen zu"
" entlasten. Aber noch lässt sich das nicht richtig"
" einschätzen. Es ist also noch kein Grund zur Freude, dass"
" sich der Inzidenzwert auf hohem Niveau eingependelt hat? In"
" Darmstadt liegt er schon seit ein paar Wochen um 100, da"
" scheint ein Plateau erreicht. Aber der Inzidenzwert muss in"
" seiner Bedeutung für uns neu geeicht werden. Er ist immer"
" noch eine entscheidende Größe, aber wir wissen nicht mehr"
" genau, welcher Wert welche Bedeutung für die Entwicklung im"
" Krankenhaus hat. Subjektiv wirkt es bei uns so, als müssten"
" die jüngeren Patienten im Schnitt länger behandelt werden,"
" auch das spielt eine Rolle. Sie haben eine sehr viel höhere"
" Chance, die Intensivtherapie zu überleben – aber mit einer"
" höheren Liegezeit. Wann verlegen Sie Patienten von der"
" Normal- auf die Intensivstation? Covid-Stationen sind"
" mittlerweile richtige Überwachungsstationen geworden. Es"
" werden sekundengenau die Vitalparameter der Patienten"
" überwacht, so können auch Patienten, die einen höheren"
" Sauerstoffbedarf haben, noch lange sicher bei uns behalten"
" werden. Ein Patient muss beispielsweise auf die"
" Intensivstation, wenn er mehr Sauerstoff braucht, als man"
" auf einer Normalstation verabreichen kann. Maschinelle"
" Druckbeatmung findet zum Beispiel auf der Intensivstation"
" statt. Außerdem wird ein Patient verlegt, wenn wir merken,"
" dass eine sehr unheilvolle Dynamik begonnen hat. Tritt"
" innerhalb von kurzer Zeit eine Verschlechterung der"
" Sauerstoffwerte auf und verschlechtert sich gleichzeitig das"
" Röntgenbild der Lunge, verlegen wir manchmal Patienten, die"
" ihre Luftnot selbst noch gar nicht so bemerken. Man"
" erschrickt immer noch darüber, wenn man einen Patienten, der"
" lächelt und mit uns spricht, auf die Intensivstation verlegt"
" und er dort Stunden später intubiert werden muss. Es wurde"
" bekannt, dass Asthmaspray bei Covid-Erkrankungen helfen kann"
". Beobachten Sie das auch? Zu Beginn der Pandemie wurden"
" Asthmakranke als Risikogruppe eingestuft. Man hat aber sehr"
" schnell gemerkt, dass sie eher keine schweren Verläufe haben"
". Und dann hat man überprüft, ob das vielleicht an"
" Asthmasprays mit Kortison liegt. Eine Studie deutet darauf"
" hin, dass Covid-Patienten, die das früh im Krankheitsverlauf"
" nutzen, seltener einen schweren Verlauf haben. Diese Studie"
" hat eine Hypothese generiert und ist Anlass für weitere,"
" größere Studien. Man kann aus ihr noch keine Empfehlung für"
" eine prophylaktische Einnahme oder sogar eine Nutzung ohne"
" ärztlichen Rat ableiten. Das Spray hat auch potentielle"
" Nebenwirkungen, es kann zu bakteriellen Pneumonien führen"
" oder zu Pilzinfekten im Mund. Deswegen sollte man das nur"
" nehmen, wenn es der Hausarzt oder Lungenarzt empfiehlt. Aus"
" welchen Bevölkerungsgruppen kommen Ihre Patienten aktuell?"
" Das sind Menschen, die mitten im Leben stehen: Eltern,"
" Berufstätige, oft auch Menschen aus prekären Wohn- und"
" Arbeitsverhältnissen. Die Ansteckungen finden, soweit man"
" das eruieren kann, weiterhin vor allem im familiären und"
" beruflichen Umfeld statt. In vielen Personalabteilungen wird"
" leider aus mangelndem Detailwissen sehr inkonsequent"
" gehandelt. Wenn man den Personalabteilungen oder den Chefs"
" die Entscheidungen über das Kontaktpersonenmanagement"
" überlässt, geht vieles schief. Wir haben immer wieder"
" mitbekommen, dass eine Quarantäne nach einem Risikokontakt"
" abgekürzt wurde, weil es keine Symptome gab und direkt nach"
" dem Kontakt ein Test gemacht worden ist. Das geschieht auch"
" aus Unwissen, weil Gesundheitsämter nicht eingebunden oder"
" nicht erreicht werden. Jeder Fehler kann zu weiteren"
" Infektionen führen. Wie ist die Stimmung beim"
" Krankenhauspersonal? Die Reserven sind erschöpft, wir machen"
" das seit einem Jahr. Und dass jetzt so viele jüngere"
" Patienten betroffen sind, ist emotional noch mal belastender"
". Viele junge Patienten hatten sich in Sicherheit gewähnt und"
" sind sehr erschrocken darüber, wenn es sie auf einmal so"
" hart trifft. Das geht auch an hartgesottenen Pflegenden und"
" Medizinern nicht spurlos vorbei. Es ist auf der einen Seite"
" zunehmend schwierig, Personal für die Covid-Abteilung zu"
" gewinnen. Auf der anderen Seite macht die Covid-Abteilung"
" die Abläufe in allen anderen Bereichen des Krankenhauses"
" nicht leichter. Mal müssen wir uns ausbreiten, dann wieder"
" zurückziehen, das ist schwer kalkulierbar. Es kann in einem"
" Krankenhaus grade nur sehr schlecht geplant werden, und das"
" ist immer Gift für die Stimmung beim Personal. Was halten"
" Sie davon, dass sich prominente Schauspieler unter dem"
" Schlagwort #allesdichtmachen über Corona-Maßnahmen lustig"
" machen? Der wirtschaftliche und kulturelle Schaden des"
" vergangenen Jahres ist sicher groß, es steckt also ein Kern"
" legitimer Kritik in dieser Aktion – oder zumindest eine"
" nachvollziehbare Motivation. Allerdings ist meiner Meinung"
" nach der Inhalt, den ich nicht von Querdenker-Argumenten"
" unterscheiden kann, der Zynismus und die spottende Ironie,"
" Gift für die öffentliche Diskussion, ohne dass ich im Detail"
" auf die Thesen eingehen möchte. Es ist in diesen"
" Diskussionen sehr wichtig, sachlich zu bleiben. Diese Aktion"
" ist meiner Meinung nach das Gegenteil: polemisierend,"
" populistisch, wissenschaftsleugnend und unfair. Speziell von"
" Menschen, die das Glück haben, durch Alter und"
" sozioökonomischen Status nicht zur absoluten Risikogruppe zu"
" gehören. Offen gesagt, fühlt man sich als Mediziner davon"
" verhöhnt. Ich glaube vielen Menschen in den"
" Gesundheitsberufen, aber auch Angehörigen und Patienten geht"
" es gerade so. Sie wurden kürzlich mit Astra-Zeneca geimpft."
" Warum? Für Ihr Alter ist der Impfstoff nicht mehr empfohlen."
" Einige Bundesländer lockern die Vorgaben dazu bereits. Ich"
" hatte eigentlich einen Termin für eine Biontech-Impfung,"
" habe aber darum gebeten, dass ich einen anderen Impfstoff"
" bekomme. Ich halte den Impfstoff für mich persönlich für"
" sicher und wirksam. Vor Ort konnte ich noch mit einer"
" ärztlichen Kollegin reden und wurde nach einer Beratung mit"
" dem Vakzin von Astra-Zeneca geimpft. Der Impfstoff wird"
" aktuell oft von Menschen über 60 verschmäht, bleibt häufiger"
" liegen, das bremst die Impfkampagne. Ich möchte einfach,"
" dass die Impfkampagne schnell vorankommt.")
# test if strategy id is correct
def test_strategy_id(self):
# init test data
test_id = "bert"
summarizer = BertSummary()
self.assertEqual(test_id, summarizer.id)
# test if summarized text is shorter than original text
def test_text_shortening(self):
# init test data
test_text = (
"Herr Doktor Çelik, wir sprechen regelmäßig über Ihre Arbeit "
"als Oberarzt auf der Isolierstation für Covid-19-Kranke im "
"Klinikum Darmstadt. Wie ist aktuell die Lage? Es ist ein "
"gemischtes Bild. Aktuell haben wir bei uns den Zenit der "
"Neuaufnahmen vorerst überschritten. Wir wissen noch nicht "
"genau, wie es weitergeht. Aber auf der Normalstation "
"entspannt sich die Situation etwas, wir haben in den "
"vergangenen Tagen weniger Patienten aufgenommen und "
"gleichzeitig einige Patienten entlassen können. Ganz anders "
"sieht es leider auf der Intensivstation aus: Da steigt die "
"Zahl der Covid-Patienten, gerade mussten die Räumlichkeiten "
"vergrößert werden. In der Vergangenheit war es so, dass sich "
"die Situation zuerst auf der Normalstation entspannt hat und "
"zwei Wochen später dann auf der Intensivstation. Jetzt ist "
"die Besonderheit zu beobachten, dass viele Patienten sehr "
"schnell nach der Krankenhausaufnahme auf die Intensivstation "
"müssen. Die klinischen Verläufe sind momentan schwerer. Die "
"Korrelation zwischen Patienten auf der Normal- und auf der "
"Intensivstation ist in der dritten Welle durcheinandergeraten"
". Woran liegt das? Insgesamt haben sich die Kenngrößen in der"
" Pandemie verändert. In den ersten zwei Wellen war der Anteil"
" der Infizierten, die im Krankenhaus behandelt werden müssen,"
" recht konstant – also die Hospitalisierungsrate. Das ist ein"
" wichtiger Wert für die Planung im Krankenhaus und für"
" politische Maßnahmen. Dieser Wert scheint niedriger geworden"
" zu sein, weil viele alte Menschen jetzt geimpft sind. Es"
" brauchen weniger Infizierte eine Krankenhausbehandlung."
" Gleichzeitig scheint die Intensivquote aber deutlich höher"
" zu sein – also der Anteil der Patienten im Krankenhaus, die"
" auf die Intensivstation müssen. Durch die Mutation B.1.1.7"
" hat sich der Verlauf der Krankheit verändert. Es müssen"
" viele junge Menschen unter 50 mit sehr schweren Verläufen"
" behandelt werden. Das kann eigentlich nur an der Mutation"
" liegen. Alle anderen Faktoren waren in der zweiten Welle"
" ähnlich wie jetzt. Auch die Inzidenz unter den jüngeren"
" Menschen war nicht viel niedriger. Aber in der dritten Welle"
" sehen wir viel häufiger junge Patienten mit schweren"
" Verläufen. Inwiefern haben sich die Verläufe verändert?"
" Vorher kamen die Patienten meist eine Woche nach"
" Symptombeginn mit milden oder schweren Symptomen auf die"
" Normalstation, zu Beginn der zweiten Krankheitswoche hat"
" sich oft eine Verschlechterung eingestellt. Jetzt läuft es"
" bei uns öfter so, dass die Patienten schon mit sehr wenig"
" Sauerstoff im Blut in der Notaufnahme ankommen oder schon"
" Gefäßverschlüsse haben. Einige müssen direkt auf die"
" Intensivstation – das haben wir vorher selten gesehen, jetzt"
" kommt das regelmäßig vor. Sollte der Anteil der"
" intensivpflichtigen Patienten unter den Infizierten weiter"
" ansteigen, hilft auch ein leichtes Absinken der"
" Neuinfiziertenzahlen nicht, um die Intensivstationen zu"
" entlasten. Aber noch lässt sich das nicht richtig"
" einschätzen. Es ist also noch kein Grund zur Freude, dass"
" sich der Inzidenzwert auf hohem Niveau eingependelt hat? In"
" Darmstadt liegt er schon seit ein paar Wochen um 100, da"
" scheint ein Plateau erreicht. Aber der Inzidenzwert muss in"
" seiner Bedeutung für uns neu geeicht werden. Er ist immer"
" noch eine entscheidende Größe, aber wir wissen nicht mehr"
" genau, welcher Wert welche Bedeutung für die Entwicklung im"
" Krankenhaus hat. Subjektiv wirkt es bei uns so, als müssten"
" die jüngeren Patienten im Schnitt länger behandelt werden,"
" auch das spielt eine Rolle. Sie haben eine sehr viel höhere"
" Chance, die Intensivtherapie zu überleben – aber mit einer"
" höheren Liegezeit. Wann verlegen Sie Patienten von der"
" Normal- auf die Intensivstation? Covid-Stationen sind"
" mittlerweile richtige Überwachungsstationen geworden. Es"
" werden sekundengenau die Vitalparameter der Patienten"
" überwacht, so können auch Patienten, die einen höheren"
" Sauerstoffbedarf haben, noch lange sicher bei uns behalten"
" werden. Ein Patient muss beispielsweise auf die"
" Intensivstation, wenn er mehr Sauerstoff braucht, als man"
" auf einer Normalstation verabreichen kann. Maschinelle"
" Druckbeatmung findet zum Beispiel auf der Intensivstation"
" statt. Außerdem wird ein Patient verlegt, wenn wir merken,"
" dass eine sehr unheilvolle Dynamik begonnen hat. Tritt"
" innerhalb von kurzer Zeit eine Verschlechterung der"
" Sauerstoffwerte auf und verschlechtert sich gleichzeitig das"
" Röntgenbild der Lunge, verlegen wir manchmal Patienten, die"
" ihre Luftnot selbst noch gar nicht so bemerken. Man"
" erschrickt immer noch darüber, wenn man einen Patienten, der"
" lächelt und mit uns spricht, auf die Intensivstation verlegt"
" und er dort Stunden später intubiert werden muss. Es wurde"
" bekannt, dass Asthmaspray bei Covid-Erkrankungen helfen kann"
". Beobachten Sie das auch? Zu Beginn der Pandemie wurden"
" Asthmakranke als Risikogruppe eingestuft. Man hat aber sehr"
" schnell gemerkt, dass sie eher keine schweren Verläufe haben"
". Und dann hat man überprüft, ob das vielleicht an"
" Asthmasprays mit Kortison liegt. Eine Studie deutet darauf"
" hin, dass Covid-Patienten, die das früh im Krankheitsverlauf"
" nutzen, seltener einen schweren Verlauf haben. Diese Studie"
" hat eine Hypothese generiert und ist Anlass für weitere,"
" größere Studien. Man kann aus ihr noch keine Empfehlung für"
" eine prophylaktische Einnahme oder sogar eine Nutzung ohne"
" ärztlichen Rat ableiten. Das Spray hat auch potentielle"
" Nebenwirkungen, es kann zu bakteriellen Pneumonien führen"
" oder zu Pilzinfekten im Mund. Deswegen sollte man das nur"
" nehmen, wenn es der Hausarzt oder Lungenarzt empfiehlt. Aus"
" welchen Bevölkerungsgruppen kommen Ihre Patienten aktuell?"
" Das sind Menschen, die mitten im Leben stehen: Eltern,"
" Berufstätige, oft auch Menschen aus prekären Wohn- und"
" Arbeitsverhältnissen. Die Ansteckungen finden, soweit man"
" das eruieren kann, weiterhin vor allem im familiären und"
" beruflichen Umfeld statt. In vielen Personalabteilungen wird"
" leider aus mangelndem Detailwissen sehr inkonsequent"
" gehandelt. Wenn man den Personalabteilungen oder den Chefs"
" die Entscheidungen über das Kontaktpersonenmanagement"
" überlässt, geht vieles schief. Wir haben immer wieder"
" mitbekommen, dass eine Quarantäne nach einem Risikokontakt"
" abgekürzt wurde, weil es keine Symptome gab und direkt nach"
" dem Kontakt ein Test gemacht worden ist. Das geschieht auch"
" aus Unwissen, weil Gesundheitsämter nicht eingebunden oder"
" nicht erreicht werden. Jeder Fehler kann zu weiteren"
" Infektionen führen. Wie ist die Stimmung beim"
" Krankenhauspersonal? Die Reserven sind erschöpft, wir machen"
" das seit einem Jahr. Und dass jetzt so viele jüngere"
" Patienten betroffen sind, ist emotional noch mal belastender"
". Viele junge Patienten hatten sich in Sicherheit gewähnt und"
" sind sehr erschrocken darüber, wenn es sie auf einmal so"
" hart trifft. Das geht auch an hartgesottenen Pflegenden und"
" Medizinern nicht spurlos vorbei. Es ist auf der einen Seite"
" zunehmend schwierig, Personal für die Covid-Abteilung zu"
" gewinnen. Auf der anderen Seite macht die Covid-Abteilung"
" die Abläufe in allen anderen Bereichen des Krankenhauses"
" nicht leichter. Mal müssen wir uns ausbreiten, dann wieder"
" zurückziehen, das ist schwer kalkulierbar. Es kann in einem"
" Krankenhaus grade nur sehr schlecht geplant werden, und das"
" ist immer Gift für die Stimmung beim Personal. Was halten"
" Sie davon, dass sich prominente Schauspieler unter dem"
" Schlagwort #allesdichtmachen über Corona-Maßnahmen lustig"
" machen? Der wirtschaftliche und kulturelle Schaden des"
" vergangenen Jahres ist sicher groß, es steckt also ein Kern"
" legitimer Kritik in dieser Aktion – oder zumindest eine"
" nachvollziehbare Motivation. Allerdings ist meiner Meinung"
" nach der Inhalt, den ich nicht von Querdenker-Argumenten"
" unterscheiden kann, der Zynismus und die spottende Ironie,"
" Gift für die öffentliche Diskussion, ohne dass ich im Detail"
" auf die Thesen eingehen möchte. Es ist in diesen"
" Diskussionen sehr wichtig, sachlich zu bleiben. Diese Aktion"
" ist meiner Meinung nach das Gegenteil: polemisierend,"
" populistisch, wissenschaftsleugnend und unfair. Speziell von"
" Menschen, die das Glück haben, durch Alter und"
" sozioökonomischen Status nicht zur absoluten Risikogruppe zu"
" gehören. Offen gesagt, fühlt man sich als Mediziner davon"
" verhöhnt. Ich glaube vielen Menschen in den"
" Gesundheitsberufen, aber auch Angehörigen und Patienten geht"
" es gerade so. Sie wurden kürzlich mit Astra-Zeneca geimpft."
" Warum? Für Ihr Alter ist der Impfstoff nicht mehr empfohlen."
" Einige Bundesländer lockern die Vorgaben dazu bereits. Ich"
" hatte eigentlich einen Termin für eine Biontech-Impfung,"
" habe aber darum gebeten, dass ich einen anderen Impfstoff"
" bekomme. Ich halte den Impfstoff für mich persönlich für"
" sicher und wirksam. Vor Ort konnte ich noch mit einer"
" ärztlichen Kollegin reden und wurde nach einer Beratung mit"
" dem Vakzin von Astra-Zeneca geimpft. Der Impfstoff wird"
" aktuell oft von Menschen über 60 verschmäht, bleibt häufiger"
" liegen, das bremst die Impfkampagne. Ich möchte einfach,"
" dass die Impfkampagne schnell vorankommt.")
summarizer = BertSummary()
summarized_text = summarizer.summarize(test_text, max_length=80)
self.assertLess(len(summarized_text), len(test_text))
summarized_text = summarizer.summarize(self.test_text, max_length=80)
self.assertLess(len(summarized_text), len(self.test_text))
# test if return type is str
def test_text_str(self):
summary_bert = BertSummary()
text = ("Herr Doktor Çelik, wir sprechen regelmäßig über Ihre Arbeit "
"als Oberarzt auf der Isolierstation für Covid-19-Kranke im "
"Klinikum Darmstadt. Wie ist aktuell die Lage? Es ist ein "
"gemischtes Bild. Aktuell haben wir bei uns den Zenit der "
"Neuaufnahmen vorerst überschritten. Wir wissen noch nicht "
"genau, wie es weitergeht. Aber auf der Normalstation "
"entspannt sich die Situation etwas, wir haben in den "
"vergangenen Tagen weniger Patienten aufgenommen und "
"gleichzeitig einige Patienten entlassen können. Ganz anders "
"sieht es leider auf der Intensivstation aus: Da steigt die "
"Zahl der Covid-Patienten, gerade mussten die Räumlichkeiten "
"vergrößert werden. In der Vergangenheit war es so, dass sich "
"die Situation zuerst auf der Normalstation entspannt hat und "
"zwei Wochen später dann auf der Intensivstation. Jetzt ist "
"die Besonderheit zu beobachten, dass viele Patienten sehr "
"schnell nach der Krankenhausaufnahme auf die Intensivstation "
"müssen. Die klinischen Verläufe sind momentan schwerer. Die "
"Korrelation zwischen Patienten auf der Normal- und auf der "
"Intensivstation ist in der dritten Welle durcheinandergeraten"
". Woran liegt das? Insgesamt haben sich die Kenngrößen in der"
" Pandemie verändert. In den ersten zwei Wellen war der Anteil"
" der Infizierten, die im Krankenhaus behandelt werden müssen,"
" recht konstant – also die Hospitalisierungsrate. Das ist ein"
" wichtiger Wert für die Planung im Krankenhaus und für"
" politische Maßnahmen. Dieser Wert scheint niedriger geworden"
" zu sein, weil viele alte Menschen jetzt geimpft sind. Es"
" brauchen weniger Infizierte eine Krankenhausbehandlung."
" Gleichzeitig scheint die Intensivquote aber deutlich höher"
" zu sein – also der Anteil der Patienten im Krankenhaus, die"
" auf die Intensivstation müssen. Durch die Mutation B.1.1.7"
" hat sich der Verlauf der Krankheit verändert. Es müssen"
" viele junge Menschen unter 50 mit sehr schweren Verläufen"
" behandelt werden. Das kann eigentlich nur an der Mutation"
" liegen. Alle anderen Faktoren waren in der zweiten Welle"
" ähnlich wie jetzt. Auch die Inzidenz unter den jüngeren"
" Menschen war nicht viel niedriger. Aber in der dritten Welle"
" sehen wir viel häufiger junge Patienten mit schweren"
" Verläufen. Inwiefern haben sich die Verläufe verändert?"
" Vorher kamen die Patienten meist eine Woche nach"
" Symptombeginn mit milden oder schweren Symptomen auf die"
" Normalstation, zu Beginn der zweiten Krankheitswoche hat"
" sich oft eine Verschlechterung eingestellt. Jetzt läuft es"
" bei uns öfter so, dass die Patienten schon mit sehr wenig"
" Sauerstoff im Blut in der Notaufnahme ankommen oder schon"
" Gefäßverschlüsse haben. Einige müssen direkt auf die"
" Intensivstation – das haben wir vorher selten gesehen, jetzt"
" kommt das regelmäßig vor. Sollte der Anteil der"
" intensivpflichtigen Patienten unter den Infizierten weiter"
" ansteigen, hilft auch ein leichtes Absinken der"
" Neuinfiziertenzahlen nicht, um die Intensivstationen zu"
" entlasten. Aber noch lässt sich das nicht richtig"
" einschätzen. Es ist also noch kein Grund zur Freude, dass"
" sich der Inzidenzwert auf hohem Niveau eingependelt hat? In"
" Darmstadt liegt er schon seit ein paar Wochen um 100, da"
" scheint ein Plateau erreicht. Aber der Inzidenzwert muss in"
" seiner Bedeutung für uns neu geeicht werden. Er ist immer"
" noch eine entscheidende Größe, aber wir wissen nicht mehr"
" genau, welcher Wert welche Bedeutung für die Entwicklung im"
" Krankenhaus hat. Subjektiv wirkt es bei uns so, als müssten"
" die jüngeren Patienten im Schnitt länger behandelt werden,"
" auch das spielt eine Rolle. Sie haben eine sehr viel höhere"
" Chance, die Intensivtherapie zu überleben – aber mit einer"
" höheren Liegezeit. Wann verlegen Sie Patienten von der"
" Normal- auf die Intensivstation? Covid-Stationen sind"
" mittlerweile richtige Überwachungsstationen geworden. Es"
" werden sekundengenau die Vitalparameter der Patienten"
" überwacht, so können auch Patienten, die einen höheren"
" Sauerstoffbedarf haben, noch lange sicher bei uns behalten"
" werden. Ein Patient muss beispielsweise auf die"
" Intensivstation, wenn er mehr Sauerstoff braucht, als man"
" auf einer Normalstation verabreichen kann. Maschinelle"
" Druckbeatmung findet zum Beispiel auf der Intensivstation"
" statt. Außerdem wird ein Patient verlegt, wenn wir merken,"
" dass eine sehr unheilvolle Dynamik begonnen hat. Tritt"
" innerhalb von kurzer Zeit eine Verschlechterung der"
" Sauerstoffwerte auf und verschlechtert sich gleichzeitig das"
" Röntgenbild der Lunge, verlegen wir manchmal Patienten, die"
" ihre Luftnot selbst noch gar nicht so bemerken. Man"
" erschrickt immer noch darüber, wenn man einen Patienten, der"
" lächelt und mit uns spricht, auf die Intensivstation verlegt"
" und er dort Stunden später intubiert werden muss. Es wurde"
" bekannt, dass Asthmaspray bei Covid-Erkrankungen helfen kann"
". Beobachten Sie das auch? Zu Beginn der Pandemie wurden"
" Asthmakranke als Risikogruppe eingestuft. Man hat aber sehr"
" schnell gemerkt, dass sie eher keine schweren Verläufe haben"
". Und dann hat man überprüft, ob das vielleicht an"
" Asthmasprays mit Kortison liegt. Eine Studie deutet darauf"
" hin, dass Covid-Patienten, die das früh im Krankheitsverlauf"
" nutzen, seltener einen schweren Verlauf haben. Diese Studie"
" hat eine Hypothese generiert und ist Anlass für weitere,"
" größere Studien. Man kann aus ihr noch keine Empfehlung für"
" eine prophylaktische Einnahme oder sogar eine Nutzung ohne"
" ärztlichen Rat ableiten. Das Spray hat auch potentielle"
" Nebenwirkungen, es kann zu bakteriellen Pneumonien führen"
" oder zu Pilzinfekten im Mund. Deswegen sollte man das nur"
" nehmen, wenn es der Hausarzt oder Lungenarzt empfiehlt. Aus"
" welchen Bevölkerungsgruppen kommen Ihre Patienten aktuell?"
" Das sind Menschen, die mitten im Leben stehen: Eltern,"
" Berufstätige, oft auch Menschen aus prekären Wohn- und"
" Arbeitsverhältnissen. Die Ansteckungen finden, soweit man"
" das eruieren kann, weiterhin vor allem im familiären und"
" beruflichen Umfeld statt. In vielen Personalabteilungen wird"
" leider aus mangelndem Detailwissen sehr inkonsequent"
" gehandelt. Wenn man den Personalabteilungen oder den Chefs"
" die Entscheidungen über das Kontaktpersonenmanagement"
" überlässt, geht vieles schief. Wir haben immer wieder"
" mitbekommen, dass eine Quarantäne nach einem Risikokontakt"
" abgekürzt wurde, weil es keine Symptome gab und direkt nach"
" dem Kontakt ein Test gemacht worden ist. Das geschieht auch"
" aus Unwissen, weil Gesundheitsämter nicht eingebunden oder"
" nicht erreicht werden. Jeder Fehler kann zu weiteren"
" Infektionen führen. Wie ist die Stimmung beim"
" Krankenhauspersonal? Die Reserven sind erschöpft, wir machen"
" das seit einem Jahr. Und dass jetzt so viele jüngere"
" Patienten betroffen sind, ist emotional noch mal belastender"
". Viele junge Patienten hatten sich in Sicherheit gewähnt und"
" sind sehr erschrocken darüber, wenn es sie auf einmal so"
" hart trifft. Das geht auch an hartgesottenen Pflegenden und"
" Medizinern nicht spurlos vorbei. Es ist auf der einen Seite"
" zunehmend schwierig, Personal für die Covid-Abteilung zu"
" gewinnen. Auf der anderen Seite macht die Covid-Abteilung"
" die Abläufe in allen anderen Bereichen des Krankenhauses"
" nicht leichter. Mal müssen wir uns ausbreiten, dann wieder"
" zurückziehen, das ist schwer kalkulierbar. Es kann in einem"
" Krankenhaus grade nur sehr schlecht geplant werden, und das"
" ist immer Gift für die Stimmung beim Personal. Was halten"
" Sie davon, dass sich prominente Schauspieler unter dem"
" Schlagwort #allesdichtmachen über Corona-Maßnahmen lustig"
" machen? Der wirtschaftliche und kulturelle Schaden des"
" vergangenen Jahres ist sicher groß, es steckt also ein Kern"
" legitimer Kritik in dieser Aktion – oder zumindest eine"
" nachvollziehbare Motivation. Allerdings ist meiner Meinung"
" nach der Inhalt, den ich nicht von Querdenker-Argumenten"
" unterscheiden kann, der Zynismus und die spottende Ironie,"
" Gift für die öffentliche Diskussion, ohne dass ich im Detail"
" auf die Thesen eingehen möchte. Es ist in diesen"
" Diskussionen sehr wichtig, sachlich zu bleiben. Diese Aktion"
" ist meiner Meinung nach das Gegenteil: polemisierend,"
" populistisch, wissenschaftsleugnend und unfair. Speziell von"
" Menschen, die das Glück haben, durch Alter und"
" sozioökonomischen Status nicht zur absoluten Risikogruppe zu"
" gehören. Offen gesagt, fühlt man sich als Mediziner davon"
" verhöhnt. Ich glaube vielen Menschen in den"
" Gesundheitsberufen, aber auch Angehörigen und Patienten geht"
" es gerade so. Sie wurden kürzlich mit Astra-Zeneca geimpft."
" Warum? Für Ihr Alter ist der Impfstoff nicht mehr empfohlen."
" Einige Bundesländer lockern die Vorgaben dazu bereits. Ich"
" hatte eigentlich einen Termin für eine Biontech-Impfung,"
" habe aber darum gebeten, dass ich einen anderen Impfstoff"
" bekomme. Ich halte den Impfstoff für mich persönlich für"
" sicher und wirksam. Vor Ort konnte ich noch mit einer"
" ärztlichen Kollegin reden und wurde nach einer Beratung mit"
" dem Vakzin von Astra-Zeneca geimpft. Der Impfstoff wird"
" aktuell oft von Menschen über 60 verschmäht, bleibt häufiger"
" liegen, das bremst die Impfkampagne. Ich möchte einfach,"
" dass die Impfkampagne schnell vorankommt.")
summary = summary_bert.summarize(text, max_length=300)