Wikifunctions:Status-Updates/2025-02-06
◀ | ![]() ![]() |
▶ |
Einladung zur Natural Language Generation Special Interest Group
Seit über zwei Jahren halten wir regelmäßige Treffen der Natural Language Generation Special Interest Group (NLG SIG) der Abstrakten Wikipedia ab. Wir haben diese Gruppe ein paar Mal erwähnt und Leute zu früheren Treffen eingeladen. Frühere Ergebnisse der NLG SIG wurden veröffentlicht und in diesem Newsletter angekündigt. Wir hatten kürzlich eine interne Diskussion in der Gruppe und haben beschlossen, die Dinge ein wenig aufzurütteln.
Wir planen, die Treffen in Zukunft öffentlich zu machen und es den Leuten zu ermöglichen, vorbeizukommen. Während wir bisher normalerweise keine Tagesordnung hatten, die wir im Voraus beschlossen haben, sondern stattdessen meist offene Diskussionen führten, planen wir, in Zukunft eine Tagesordnung zu haben und diese auch zu veröffentlichen, sodass die Leute auf Grundlage der Tagesordnung entscheiden können, ob sie teilnehmen möchten oder nicht. Wir planen, die Tagesordnung, wenn möglich, in den wöchentlichen Updates bekannt zu geben.
Die Treffen finden monatlich am dritten Dienstag jedes Monats statt und werden derzeit um 17:30 MEZ über Google Meet abgehalten. Wir werden den Link zum Treffen kurz vor dem Treffen sowohl im Wiki als auch im Newsletter veröffentlichen. Die Zeit kann sich im Laufe des Jahres ändern, wenn in einigen Gebieten die Sommerzeit beginnt oder aus anderen Gründen.
Angesichts der jüngsten Entwicklungen bei Wikifunctions, insbesondere der neuen Möglichkeit, Wikidata-Lexeme in Funktionen zu verwenden, scheint dies ein guter Zeitpunkt zu sein, mehr Leute in die Gruppe einzubinden und zu besprechen, wie mit der NLG-Arbeit auf Wikifunctions fortgefahren werden soll.
Dies lässt sich auch an der zunehmenden Häufigkeit von Diskussionen über NLG-Themen erkennen. In der Projektdiskussion führen wir eine lebhafte Diskussion darüber, wie grammatikalische Funktionen dargestellt werden, eine Diskussion, die auch im IRC-/Telegram-Chat weitergeführt wird. Dies ist auch ein großartiges erstes Diskussionsthema, ein Thema, das wir bereits einige Male in der NLG SIG diskutiert haben.
Letzte Änderungen an der Software


Diese Woche gab es einige Fehlerbehebungen, während wir auch an den längerfristigen Prioritäten für das Quartal arbeiten.
Wir haben die Eingaben des Funktionseditors optimiert, was die Interaktion mit gemischten Inhalten, die von rechts nach links und von links nach rechts geschrieben werden, verbessern sollte, insbesondere bei Aliassen (T373746). Wir haben das "Akkordeon" im Metadatendialog korrigiert, damit die unterschiedlichen Zeitdauern nicht addiert werden; die Orchestrierungszeit ist bereits die Gesamtzeit (T369788). Wir haben einen Fehler im Selektor für Objekte und Wikidata-Datenobjekte behoben, bei dem die erneute Auswahl desselben Werts den angezeigten Wert nicht aktualisierte (T382755).
Um die Sprache klarer zu machen, haben wir den Wortlaut der Bezeichnungen für die neue "renderbare" API, die wir für die Wikipedia-Integration erstellt haben, optimiert (T382140). Wir haben unsere ursprüngliche Version der Tabellenkomponente, die auf Funktionsseiten verwendet wird, durch die Version von Codex ersetzt, die es jetzt gibt (T373197). Wir haben alle unsere UX-Ereignisnamen überarbeitet, damit sie in der gesamten Anwendung einheitlich sind.
Aufzeichnung des Freiwilligentreffens
Die Aufzeichnung des Freiwilligentreffens vom Montag ist jetzt auf Wikimedia Commons verfügbar. Wir danken allen Freiwilligen, die dabei waren, und wünschen dir viel Spaß beim Anschauen!
Neuigkeiten zu Typen: Kleene
Um wieder mit der Erstellung weiterer Typen zu beginnen, haben wir das Jahr mit der Implementierung des Typvorschlags für Kleene-Werte begonnen. Dieser wird verwendet, um Werte für eine dreiwertige Logik darzustellen. Im Gegensatz zur booleschen Logik, die zwei Werte (Wahr und Falsch) hat, hat die Kleene-Logik drei Werte: Wahr, Falsch und Vielleicht.
Wir gehen davon aus, dass wir dieses Jahr noch viele weitere Typen erstellen werden, und freuen uns daher auf die Arbeit an den Typenvorschlägen. Wir danken allen, die in der Vergangenheit zu diesen Vorschlägen beigetragen haben und uns letztes Jahr geholfen haben, die ersten Typen zu erstellen!
Funktion der Woche: Kleenesches und
Die Funktion der Woche ist eine Kolumne, die von der Community geschrieben wird. Die Planung der Kolumne und die Einreichung von Beiträgen sind hier möglich. Der Eintrag dieser Woche wurde von 99of9 geschrieben, Bearbeitungen wurden von Feeglgeef vorgenommen.
Diese Woche diskutieren wir: und (Kleene), eine gute Demonstration des neuen Kleene-Typs, der Situationen logische Strenge verleiht, in denen manchmal Unsicherheit zwischen den Werten Wahr und Falsch besteht.
Die Funktion verwendet zwei kleenesche Eingaben und gibt einen kleeneschen Wert zurück. Sie verallgemeinert die Funktion boolesches und, um die Möglichkeit einzubeziehen, dass einer oder beide Werte unbekannt sind (Kleenescher Wert "Vielleicht").
Sechs Tests sind verfügbar. Die ersten drei sind so, wie man es von der booleschen Logik erwarten würde:
Außerdem gibt es drei Tests mit dem Wert "Vielleicht" für jede der Optionen.
- Wahr und Vielleicht ist Vielleicht
- Vielleicht und Falsch ist Falsch
- Vielleicht und Vielleicht ist Vielleicht
Es sind noch drei weitere Tests möglich, bei denen die Reihenfolge ungleicher Parameter vertauscht wird. Dies ist jedoch eine einigermaßen vollständige Demonstration dessen, was die Funktion "und" bei der dreiwertigen Logik leisten soll.
Fünf Implementierungen sind verfügbar:
- Mit der Python-Funktion min(), da unsere Werte im Code (Wahr=1, Vielleicht=0, Falsch=-1) so angeordnet sind, dass das kleinste Argument immer die Sicherheit ist, dass beide ("x und y") wahr sind.
- Die JavaScript-Version des obigen mit Math.min()
- Eine Komposition, die auf der Funktion N-wenn basiert, die einer Case-Anweisung am nächsten kommt. Sie durchläuft alle Möglichkeiten, prüft zuerst, ob ein Falsch vorliegt und gibt es zurück und prüft dann, ob ein Vielleicht vorliegt und gibt es zurück. Nur wenn es kein Falsch oder Vielleicht gibt, wird standardmäßig Wahr ausgegeben.
- nicht(oder(nicht(x),nicht(y))), eine boolesche Entsprechung, die auch für kleenesche Werte funktioniert, sobald wir sicherstellen, dass nicht(Vielleicht)=Vielleicht ist, und die Funktion oder(x,y) übersetzen, die in Python als max(x,y) dargestellt werden kann.
- Eine algebraische Formel in Python: x+y-x2-y2+xy+x2y2. Dies scheint eine sehr unwahrscheinliche Art zu sein, "und" auszuwerten. Die Formel ist spezifisch für die numerische Darstellung im Code (Optionen auf -1, 0 und 1 gesetzt). Solche Darstellungen und Transformationen werden in der dreiwertigen Logik untersucht. Obwohl der Code komplexer ist und viel mehr Operationen zu haben scheint als die anderen Implementierungen, ist es interessant festzustellen, dass die Leistung ähnlich oder besser ist, vielleicht weil die Operationen alle einfache Arithmetik ohne Verzweigungen sind.
Diese Funktion ist tatsächlich eine von 19.683 möglichen binären Funktionen für kleenesche Werte. Es ist noch nicht klar, wie nützlich dieser Datentyp im Wikifunctions-Ökosystem sein wird, wo Funktionen normalerweise klare und entscheidbare Ergebnisse haben. Aber wenn wir anfangen, mit echten Daten zu arbeiten, wird die Aussicht auf fehlende oder unbekannte Werte wahrscheinlich wichtiger werden. Und vielleicht wird es in unseren Antworten ein paar Vielleichts geben.
Wöchentliche neue Funktionen
Hier ist eine Liste der neuen Funktionen mit verbundenen Implementierungen und (überwiegend) bestandenen Tests, die seit letzter Woche erstellt wurden. Diese Woche hatten wir mehr Funktionen ohne Implementierungen oder Tests als sonst, aber es gab trotzdem eine ganze Reihe neuer Funktionen zu feiern.
- Z22220
- Z22214
- Z22207
- Z22202
- Z22193
- Z22179
- Z22168
- Z22162
- Z22155
- Z22143
- Z22137
- Z22131
- Z22126
- Z22120
- Z22107
- Z22097
- Z22049
- Z22044
- Z22027
- Z22007
- Z22002
Wir sehen eine große Vielfalt an Funktionen – und es gab noch mehr, die es nicht auf die Liste geschafft haben, weil sie keine Tests oder Implementierungen haben. Eine umfassende Liste aller Funktionen, sortiert nach Erstellungsdatum, findet sich im Wiki.