Das Repository enthält Code zum Generieren kurzer Gedichte mithilfe generativer Sprachmodelle mit einer GPT-Architektur.
Es kommt ein transformatives Sprachmodell auf Basis der GPT-Architektur zum Einsatz. Dieses Modell berücksichtigt sowohl die Grammatik der russischen Sprache (ähnlich Sprachmodellen wie Rugpt) als auch ihre Phonetik, einschließlich der Reimregeln und der Konstruktion des poetischen Metrums. Details finden Sie in der Präsentation.
Modellbinärdateien sind im Docker-Image inkoziev/verslibre:latest verfügbar.
Laden Sie das Image herunter und führen Sie es aus:
sudo docker pull inkoziev/verslibre:latest
sudo docker run -it inkoziev/verslibre:latest
Nach dem Start werden Sie vom Programm aufgefordert, einen Token für den Telegram-Bot einzugeben.
Nachdem Sie alle Modelle geladen haben, können Sie den Bot in seinem Chat mit dem Befehl /start starten. Der Bot fordert Sie auf, eines von drei zufälligen Themen für Ihren Aufsatz auszuwählen oder ein eigenes Thema einzugeben. Das Thema kann eine beliebige Phrase mit einem Substantiv in der Hauptrolle sein, zum Beispiel „Poesiegenerator“.
Dieser Bot ist im Telegram als @verslibre_bot verfügbar
Generationsbeispiele:
* * *
Любовь - источник вдохновения,
Души непризнанных людей.
И день весеннего цветения,
Омытый зеленью дождей…
* * *
Душа, гонимая страстями,
Тревожит, веет теплотой.
Любовь, хранимая стихами,
И примиренье, и покой.
Neben dem generativen Modell selbst ist der Poesie-Transkriptor, der die Quellgedichte für Trainingsmodelle markiert, für den ordnungsgemäßen Betrieb von großer Bedeutung. Mehr über die Arbeit des Transkriptors können Sie hier lesen.
Ein Docker-Image inkoziev/haiku:latest ist verfügbar, um den Generator als Telegram-Bot auszuführen.
Laden Sie das Bild herunter und führen Sie Folgendes aus:
sudo docker pull inkoziev/haiku:latest
sudo docker run -it inkoziev/haiku
Das Programm fordert Sie auf, einen Telegram-Bot-Token einzugeben. Dann werden die Modelle geladen (etwa eine Minute) und Sie können mit dem Bot kommunizieren. Geben Sie einen Startwert ein – ein Substantiv oder eine Phrase. Das Generieren mehrerer Optionen auf der CPU dauert etwa 30 Sekunden. Dann zeigt der Bot die erste Option an und bietet an, sie zu bewerten, oder zeigt die nächste Option an.
Dieser Bot ist im Telegram als @haiku_guru_bot verfügbar.
Da es sich um ein randomisiertes generatives Modell handelt, können seine Ergebnisse normalerweise nicht durch einfaches Einführen desselben Samens reproduziert werden. Kopieren Sie gute Ergebnisse, ergänzen Sie sie mit einem anschaulichen Modell, wie zum Beispiel ruDALLE, und erhalten Sie völlig einzigartige Inhalte:
Weitere Haiku-Beispiele finden Sie auf meinem Blog.
Das Unterverzeichnis tmp enthält Dateien mit einem Teil der Trainingsdaten:
poetie_corpus.txt – Korpus gefilterter Vierzeiler, Symbol | als Zeilentrenner; Wird für zusätzliches Training des ruGPT-Modells verwendet.
gedicht_generator_dataset.dat – Datensatz für das Training von ruGPT, das den Text eines Gedichts nach Thema (Schlüsselphrase) erstellt.
captions_generator_rugpt.dat – Datensatz zum Training von ruGPT, der einen Verstitel basierend auf seinem Inhalt generiert.
Eine Beschreibung des Vorbereitungsprozesses für das Ausbildungskorps finden Sie hier.