Normale Ansicht

Don’t Push To Production On Friday

25. September 2023 um 05:00

So stand es an einem Freitag auf Mastodon geschrieben. Nach einem Schmunzeln fragte ich mich: „Ja warum eigentlich nicht?“ Dieser Frage möchte ich heute nachgehen.

Der englischsprachige Satz aus dem Titel ist eine Aufforderung, an einem Freitag keine Änderungen an produktiven Systemen vorzunehmen, um das Wochenende nicht zu gefährden. Viele von euch kennen vermutlich berühmte letzte Worte wie:

  • Was soll schon schiefgehen?
  • Nur noch diese kleine Änderung, dann ist Feierabend.
  • Das wurde getestet, da kann nichts passieren.
  • Das geht ganz schnell, ich mache das noch eben.

Nicht selten hat sich der Feierabend oder das Wochenende nach diesen Sätzen erheblich verzögert oder sind ganz ausgefallen, weil eben doch etwas schiefgegangen ist. In der Folge waren wichtige Dienste nicht mehr verfügbar und Systemadministratoren haben das Abendessen mit ihrer Familie versäumt, weil sie den Klump wieder zum Laufen bringen mussten. Solche Erlebnisse führen zu Aussagen wie:

  • Never change a running system. Oder eben
  • Don’t push to production on Friday

Die Logik dahinter ist bestechend einfach. Wenn etwas funktioniert und man nichts daran ändert, wird wohl auch nichts kaputt gehen. Allerdings stehen diese Aussagen dem DevOps-Mantra von Continuous Integration and Continuous Delivery (CI/CD) entgegen, welches fordert, dass Änderungen zu jeder Zeit möglich sein müssen.

Und wer hat nun recht? Ich denke, die Wahrheit liegt wie so oft irgendwo in der Mitte.

Ob Änderungen durchgeführt werden können, hängt in meinen Augen nicht vom Wochentag ab, sondern vielmehr von den Antworten auf die folgenden Fragen:

  • Sind alle für die Abnahmetests erforderlichen Key-User nach der Änderungen verfügbar und können direkt im Anschluss testen?
  • Sind alle Verantwortlichen anwesend bzw. verfügbar, welche entscheiden, ob die Änderung bzw. das Deployment erfolgreich war oder nicht?
  • Liegt das Wartungsfenster in einem Zeitraum, in dem ggf. externe Supportdienstleister erreichbar und diese Zeiträume durch Service-Level-Agreements (SLA) abgedeckt sind?
  • Findet die Änderung in einem Zeitfenster statt, in dem Störungen toleriert werden können?

Sind zum Beispiel alle 37 Key-User, 8 Abteilungsleiterinnen und das 20-köpfige Betriebs-Team für die Personal- und Buchhaltungsanwendung Freitag nach 18:00 bis voraussichtlich 21:00 Uhr alle verfügbar und können im Fehlerfall mit offenem Ende verfügbar bleiben, steht einer Änderung bzw. einem Deployment nichts im Wege. Ist dies jedoch nicht der Fall und man stellt Fehler möglicherweise erst im Laufe des kommenden Montags fest, wo ein Rollback evtl. schon nicht mehr möglich ist, sollte man den Change vielleicht lieber Montagmorgen starten?

In einem anderen Fall ist das Team nicht sicher, ob sie das System im Fehlerfall ohne Hilfe des Herstellers wiederherstellen können. Der Support-Vertrag deckt jedoch nur die Zeiten Mo-Fr von jeweils 08:00-17:00 Uhr mit 4 Stunden Reaktionszeit ab. Hier ist es vielleicht ebenfalls besser, das Wartungsfenster in den frühen Morgen als in den Freitagabend zu legen.

Habe ich hingegen einen 24/7-Supportvertrag und meine IT-Betriebsabteilung darf auch am Wochenende arbeiten, bietet sich ein Change mit langer Dauer am Wochenende an, um die Betriebsabläufe möglichst wenig zu beeinträchtigen.

Sind Änderungen nur von kurzer Dauer und man möchte möglichst viele User verfügbar haben, die sofort testen und mögliche Fehler finden, ist vermutlich auch Dienstag Vormittag 10:00 Uhr eine gute Zeit.

Es hängt also nicht primär vom Wochentag, sondern vielmehr von einigen anderen Faktoren ab, wann Änderungen in Produktion ausgerollt werden sollten.

Wie seht ihr das? Nach welchen Kriterien werden bei euch Deployments geplant und durchgeführt?

PS: Ich finde jedoch absolut nichts Verwerfliches daran, wenn man sich den Freitag für die Pflege und Aktualisierung der Dokumentation reservieren kann und nicht mit aller Gewalt noch etwas kaputtfuckeln muss. ;-)

Linux Command Library App - Linux Befehle für die Hosentasche

21. September 2023 um 08:30

Linux Command Library App

Egal, ob du einen Einstieg in Debian, Ubuntu und Co suchst, für ein LPIC Zertifikat Wissen aneignen willst oder schlicht und einfach nur ein Nachschlagewerk benötigst, die Linux Command Library ist ein guter Begleiter für Linux Menschen.

Die Sammlung umfasst ca. 5000 Handbuchseiten, mehr als 22 grundlegende Kategorien und eine Reihe allgemeiner Tipps für Terminals. Die passende App dazu funktioniert zu 100 % offline, benötigt keine Internetverbindung und hat keine Tracking-Software.

Simon Schubert hat die Online-Lernplattform für Linux Kommandos ins Leben gerufen. Neben der App kann das Nachschlagewerk klassisch im Browser genutzt werden.

Linux-Command-Library

 

Folgende Kategorien stehen dir zum Abrufen von zig Kommandos zur Verfügung:

  1. One-liners
  2. System Information
  3. Systemkontrolle
  4. Nutzer und Gruppen
  5. Dateien und Nutzer
  6. Input
  7. Drucken
  8. JSON
  9. Netzwerk
  10. Suchen und Finden
  11. Git
  12. SSH
  13. Video & Audio
  14. Paketmanager
  15. Hacking Tools
  16. Terminal Games
  17. Kryptowährungen
  18. VIM Texteditor
  19. Emacs Texteditor
  20. Nano Texteditor
  21. Pico Texteditor
  22. Micro Texteditor

Ein Cheatsheet mit praktischen Befehlen kannst du ebenfalls abrufen.

Die Linux Command Library ist Open Source und auf GitHub verfügbar. Die passende App dazu bekommst du auf im Play Store oder auf F-Droid.

RHEL System Roles: rhc

11. September 2023 um 05:00

Im siebten Teil meiner losen Reihe über die RHEL System Roles stelle ich die Rolle rhc vor, mit welcher sich RHEL-Systeme (Version >= 8.6) in der Hybrid Cloud Console, Insights und dem RHSM registrieren lassen.

Das Tool rhc selbst habe ich bereits im Artikel Red Hat Remote Host Configuration ausführlich vorgestellt.

Anwendungsfall

Möchte man ein oder mehrere RHEL-Systeme in der Hybrid Cloud Console registrieren, kann man dazu die RHEL System Role rhc verwenden.

Die Rolle

Durch die Installation des Pakets rhel-system-roles existiert die Rolle rhc bereits auf meinem System und muss nur noch konfiguriert werden. Die Rolle selbst findet man im Pfad /usr/share/ansible/roles/rhel-system-roles.rhc/ und die Dokumentation in /usr/share/doc/rhel-system-roles/rhc/README.md.

Das Playbook

- name: Register systems
  hosts: all
  vars:
    rhc_auth:
      activation_keys:
        keys: ["key-1", ...]
    rhc_organization: "your-organization"
  roles:
    - rhel-system-roles.rhc
  • key-1 ist durch den eigenen Activation Key zu ersetzen
  • your-organization ist durch die eigene Org-ID zu ersetzen
  • Mit diesem Playbook werden die Hosts im RHSM und der Hybrid Cloud Console registriert
  • Die Systeme werden bei Insights registriert und laden regelmäßig aktuelle Daten hoch
  • Die Systeme werden für die Ausführung von Remediation Playbooks konfiguriert

Fazit

Mit dieser System Role ist es einfach möglich, eine große Anzahl Systeme in die Hybrid Cloud Console aufzunehmen. Dabei lässt sich konfigurieren, ob Funktionen wie Insights und Remediation Playbooks genutzt werden können.

Eine weitere tolle Rolle aus dem Paket rhel-system-roles, die sich einfach zur Anwendung bringen lässt.

Weiterführende Quellen und Links

  1. Red Hat Enterprise Linux (RHEL) System Roles {en}
  2. Ansible Documentation: Role Directory Structure {en}
  3. Red Hat Software and Download Center {en}
  4. Die Vorteile einer Red Hat Subskription
  5. RHEL System Roles: selinux
  6. RHEL System Roles: timesync
  7. RHEL System Roles: sshd
  8. RHEL System Roles: firewall
  9. RHEL System Roles: storage

Neue Services: Hat.sh & Wormhole

06. September 2023 um 10:02

Zwei neue adminForge Services können ab sofort genutzt werden. 1) Hat.sh ist eine Webanwendung, die eine sichere lokale Dateiverschlüsselung im Browser ermöglicht. Sie ist schnell, sicher und verwendet moderne kryptografische Algorithmen mit Chunked-AEAD-Stream-Verschlüsselung/Entschlüsselung. 2)...

by adminForge.

Wie ich mich 2023 vor Datenverlust schütze

04. September 2023 um 05:00

Auf Mobiltelefonen, Tablets, Laptops, Netzwerkspeichern und in diversen Anwendungen in unserem Heimnetzwerk befinden sich Daten, welche wir schmerzlich vermissen würden, wenn sie dauerhaft verloren gingen.

Im Folgenden beschreibe ich, wie ich z.B. Fotos, Videos, Zeugnisse, Verträge, Urkunden, Versicherungspolicen, etc. vor Verlust schütze.

Der Artikel behandelt nicht:

Daten von Mobiltelefonen und Tablets

Sie sind unsere ständigen Begleiter, verfügen über große Speicher und beinhalten häufig jede Menge an Fotos und Videos. Diese werden mit DS-Apps auf eine Synology Diskstation im heimischen Netzwerk gesichert.

Für Threema benutze ich Threema Safe. Ein Datenbackup führe ich nicht durch. Der Inhalt der Nachrichten ist mir nicht so wichtig, als dass mich ein Verlust schmerzen würde.

E-Mails, Kalender und Kontakte werden zwischen Mailbox.org und diversen Geräten synchronisiert, jedoch nicht gesichert. Wenn jemand z.B. das Adressbuch löscht, müsste ich das Netzwerk vom PC trennen, um das Adressbuch ohne Netzwerkverbindung zu starten, um den letzten Stand von dort wiederherstellen zu können. Für mich ist das ausreichend, da ich bei einem GAU meine wichtigsten Kontakte auch ohne Adressbuch zu erreichen weiß und sich Kontaktinformationen von Handwerkern und sonstigen Unternehmen wieder recherchieren lassen.

Sollte ich Zugriff auf die App Aegis Authenticater verlieren, muss ich auf die Backup-Codes zurückgreifen, welche in einer KeePass-Datenbank lagern.

Falls ihr einfache Lösungen kennt, um sämtliche Apps samt deren Inhalte sichern und auf abweichenden Telefonen wiederherstellen zu können, freue ich mich, wenn ihr mir davon berichtet.

Network Attached Storage (NAS)

Meine Synology Diskstation ist:

  • Das Ziel für automatisierte Datensicherungen von Mobiltelefonen und Tablets
  • Datensicherungsziel für die Backups meiner virtuellen Server im LAN und in der Cloud
  • Primärer Speicherort für Fotos, Videos, eine Musiksammlung, Git-Repos
  • Primärspeicher für archivierte Daten, die ich vermutlich nie wieder benötige

Ausgewählte Daten werden wöchentlich mit Hyper Backup (Backup-Anwendung der Diskstation) auf eine angeschlossene USB-Festplatte gesichert. Darüber hinaus habe ich mir ein Offsite-Backup gebastelt, welches ich in diesem Artikel beschrieben habe.

Über Erfolg und Misserfolg der Sicherungen werde ich per E-Mail benachrichtigt.

Die größte Herausforderung für mich ist es, die Wiederherstellbarkeit der gesicherten Daten zu kontrollieren. Dies mache ich bisher sporadisch und manuell. Und vermutlich viel zu selten.

Daten von Laptops

Daten meiner Laptops synchronisiere ich teilweise mit Nextcloud, welche ich auf einem virtuellen Server betreibe. Gehostet wird dieser bei Contabo in Deutschland.

Darüber hinaus nutze ich Déjà Dup Backups für eine wöchentliche Datensicherung meines HOME-Verzeichnisses in die Nextcloud mit 180 Tagen Vorhaltezeit. Auch hier teste dich die Wiederherstellbarkeit sporadisch.

Das HOME-Verzeichnis meines Dienstlaptops wird täglich mit Déjà Dup in das Google Drive meines Arbeitgebers gesichert.

Urkunden, Verträge, Zeugnisse und weiterer Papierkram

Auch wir haben jede Menge totes Holz im Schrank stehen, dessen Wiederbeschaffung bei Verlust mit viel Zeit und Mühe verbunden ist.

Meine Lösung für diese Herausforderung habe ich in Mein Paperless-NGX-Mini-Konzept niedergeschrieben.

Hier möchte ich die Wiederherstellung noch verbessern, indem ich auf meinem Laptop ein Ansible-Playbook ablege, welches die Paperless-NGX-Instanz auf meinem Laptop wiederherstellt. So teste ich die Wiederherstellbarkeit und habe immer eine relativ aktuelle Kopie auf der verschlüsselten Festplatte meines Laptops bei mir.

Auf einem virtuellen Server in der Cloud möchte ich diese Daten aktuell nicht so gerne hosten. Dazu muss ich mir zuvor in Ruhe Gedanken über mögliche Risiken für die Integrität und Vertraulichkeit der Daten machen.

Meine produktive Paperless-NGX-Instanz steht mit dem Papier im gleichen Haus. Das Backup beinhaltet alle PDF-Dateien und liegt verschlüsselt in der Cloud. Da die Dateinamen halbwegs sinnvoll benannt sind, scheint im Falle eines GAU die Suche im Heuhaufen nicht hoffnungslos.

Blog und Nextcloud

Für beide Dienste, welche auf einem virtuellen Server bei Contabo laufen, wird zur Datensicherung wöchentlich ein Datenbank-Dump und ein Archiv der Verzeichnisstruktur mit Ordnern und Dateien erstellt. Dieses Backup wird lokal auf dem Server abgelegt und für 30 Tage vorgehalten. Ich nutze dafür selbstgeschriebene Bash-Skripte, welche durch Cron ausgeführt werden.

Auf meinem NAS läuft ein Skript, welches die Backups vom Server auf das NAS synchronisiert.

Über Erfolg und Misserfolg der einzelnen Jobs werde ich per E-Mail benachrichtigt.

Die Wiederherstellbarkeit teste ich sporadisch und sollte dies mutmaßlich häufiger tun. Ein Automat dafür befindet sich aktuell in Arbeit. Den aktuellen Stand kann man in folgenden Artikeln nachlesen:

Virtuelle Server und Dienste in der Cloud

Ruhende Daten werden verschlüsselt, bevor sie in die Cloud hochgeladen werden. Das Restrisiko, dass der fremde Betreiber prinzipiell die Kontrolle über meinen virtuellen Server übernehmen kann, bleibt.

Betreibe ich Server oder Dienst nicht im eigenen Heimnetzwerk, nutze ich für den Betrieb deutsche Anbieter mit Standorten in Deutschland. Zu diesen habe ich einfach das größte Vertrauen, dass sie sich an geltende Gesetze halten, die Hoffnung, dass sie den Datenschutz ernst nehmen und meine Daten dort gut aufbewahrt sind.

Wie sichert ihr eure Daten außer Haus? Welche Dienste verwendet ihr dazu? Ich freue mich, wenn ihr eure Erfahrungen in den Kommentaren teilt.

Zusammenfassung

Ich habe mir zumindest mal Gedanken gemacht, welche Daten so wichtig sind, dass ich sie vor Verlust schützen möchte. Zum Schutz vor Verlust kommen verschiedene Verfahren zum Einsatz, die auf der Schaffung von Redundanz durch Synchronisierung oder der Datensicherung mit Versionierung beruhen.

Die Wiederherstellbarkeit wird zumindest sporadisch getestet. Dieser Punkt ist sicherlich ausbaufähig.

Wer die einzelnen Abschnitte gelesen hat, stellt jedoch auch fest, dass es schnell ein wenig unübersichtlich wird. Zumindest hilft dieser Artikel etwas, den Überblick zu behalten.

Für die Zukunft wünsche ich mir eine dedizierte Backup-Senke im Keller, in der sich ausschließlich Backups befinden und eine Offsite-Senke, auf welche die Daten der Backup-Senke gesichert werden. Bis ich da hinkomme, wird sicherlich noch etwas Zeit vergehen.

Wie installiere ich den Netzwerk-Drucker Brother MFC-J890DW in Fedora 38 und RHEL 9?

31. August 2023 um 07:24
  1. Schalte den Drucker ein, verbinde ihn mit dem LAN und notiere seine IP-Adresse
  2. Lade das RPM-Paket mit dem Linux-Treiber auf den RHEL 9 Computer herunter
  3. Führe in RHEL 9 folgende Schritte aus
  4. sudo dnf in <linux-treiber-name.rpm>
  5. Öffne in einem Webbrowser die URL http://localhost:631/printers
  6. Klicke unter Administration auf „Modify Printer“ und setze die folgenden Parameter
    • AppSocket/HP JetDirect für Device
    • ipp://<IP-Adresse-des-Druckers>/ipp/port1 für Device URI
    • Brother als Hersteller
    • IPP Everywhere als Treiber

Da es mich mal wieder tierisch genervt hat, bis das Höllengerät endlich druckte, habe ich die Installationsschritte kurz aufgeschrieben.

Quellen:

Debian feiert den 30. Geburtstag: Von einem schlanken Newcomer zu einem Open-Source-Schwergewicht

16. August 2023 um 21:22

30 Jahre Debian - 30 Jahre felsenfeste Entwicklung und noch kein Ende in Sicht.

An diesem Tag vor 30 Jahren, am 16.08.1993, erschien in der Newsgroup comp.os.linux.development eine Ankündigung, die den Anfang eines der größten und langlebigsten Projekte im Linux-Ökosystem markieren sollte. Lasst uns für einen kurzen Moment zurückblicken.

Es ist nicht nur ein gepimptes SLS, es ist das "Debian Linux Release". Ian Murdock, der selbst mit der vermutlich ersten Linux-Distribution unzufrieden war und beschlossen hat, die Sache selbst in die Hand zu nehmen, hätte sich womöglich nie erträumen können, dass sein "brand-new Linux release", wie er es damals nannte, irgendwann seinen 30. Geburtstag feiern würde.

Begründer eines Distributionszweiges

Im Laufe der Jahre hat Debian bewiesen, dass es mehr als nur ein übereifriger Rebell unter den Betriebssystemen ist. Es hat die Grundlage für viele andere Distributionen wie z. B. Ubuntu gelegt. Es hat die Freiheit und Offenheit verkörpert, die das Herzstück der Open-Source-Bewegung bilden. Es hat glaubhafte Alternativen zu proprietären Betriebssystemen aufgezeigt und Zweifler zum Schweigen gebracht. Auch, wenn der letzte Punkt in der öffentlichen Diskussion nicht ganz offensichtlich ist, sprechen die Zahlen für sich: Debian ist ein fester Bestandteil vieler produktiver Serversetups.

Mit der tief verwurzelten Philosophie, die sich im Debian-Gesellschaftsvertrag widerspiegelt, unterstreicht das Projekt seine kompromisslose Haltung zugunsten freier Software, auch wenn über die Jahre insgesamt eine gewisse Toleranz gegenüber nachinstallierbarer unfreier Software Einzug gehalten hat.

Debian ist heute wichtiger denn je, da die Distribution den Test of Time bestand und sich zu einer Alternative zu Enterprise-Distributionen gemausert hat. Stabilität und Kontinuität sind entscheidende Faktoren, denn Debian baut auf klassischen Releases auf, von denen - je nach Zählweise - bereits 20 erschienen sind. Die Release werden seit Version 1.1 nach Toy-Story-Charakteren bezeichnet. Debian ist ein Leuchtturm, ein einsamer Fels in der Brandung einer Welt, die zunehmend von Anbietern dominiert wird, welche Daten und Freiheiten der Nutzer nicht beachten und sie an ihre Plattformen binden.

In diesem Sinne, lasst uns auf 30 Jahre technologischer Alternativen anstoßen. Herzlichen Glückwunsch, Debian! Auf 30 weitere Jahre der Innovation und Unabhängigkeit.

BSL statt MPL: HashiCorp passt sich einer neuen Open-Source-Ära an

14. August 2023 um 16:00

Open-Source-Software nachhaltig zu entwickeln, wird immer schwieriger. Willkommen im Zeitalter von "Nur schauen, nicht anfassen" für kommerzielle Rivalen.

Das in San Francisco ansässige Softwareunternehmen HashiCorp, bekannt für seine Cloud-Tools wie Terraform, Vagrant oder Vault, ändert seine Lizenzbedingungen. In einer Ankündigung wird der Wechsel von der Mozilla Public License 2.0 zur Business Source License mit der Gewährleistung kontinuerlicher Investitionen des Unternehmens in seine Community begründet.

HashiCorp hält weiterhin daran fest, seinen Quellcode frei verfügbar zu machen. Allerdings gibt die BSL dem Unternehmen mehr Kontrolle darüber, wer den Code kommerziell nutzen darf. Mit anderen Worten, wer Software von HashiCorp produktiv nutzt und sie für ein Konkurrenzprodukt einsetzen möchte, ist von nun an nicht nur bösen Blicken, sondern auch rechtlichen Hürden ausgesetzt.

In guter Gesellschaft

Einige Unternehmen haben diesen Schritt bereits vollzogen und sind auf unfreie Lizenzmodelle umgestiegen. Couchbase, Sentry und MariaDB MaxScale sind einige Beispiele dafür. Dies wirft natürlich die Frage auf, ob wir uns von der Idee freier Open-Source-Software verabschieden müssen. Die Omnipräsenz der Cloud-Industrie, die seit den 2010er-Jahren sich großer Beliebtheit erfreut, droht ernsthaft, die FOSS-Welt zu destabilisieren.

Stellt dir vor, du hast einen reichen Obstgarten erschaffen, in dem jeder sich frei der Früchte bedienen kann. Größzügig lädst du alle ein, sich nach Belieben zu bedienen und empfiehlst ihnen, selber Bäume zu pflanzen oder die Saaten weiterzuverbreiten. Eines Tages bemerkt ihr jedoch, dass einige Gäste die Früchte einsacken, sie auf eigenen Märkten verkaufen und die Profite einsacken, ohne selbst an die Ursprungscommunity etwas zurückzugegeben. Klingt unfair? Genau das passiert momentan in der Open-Source-Welt.

Damit wird Open Source zwar nicht von Tisch gewischt, sondern in eine Richtung gelenkt, die den freien ungehinderten Austausch unabhängig von gewerblichen Interessen einschränkt. Konkret wackelt dabei das 6. Kriterium der Open-Source-Definition (OSD), das eine Unterscheidung nach Einsatzfeldern ausschließt.

HashiCorp betont, dass es sich weiterhin seiner Community, seinen Partnern und Kunden verpflichtet sieht. Nur die Zeit wird zeigen, ob diese Lizenzänderungen die richtigen Schritte auf dem Weg dorthin sind. Einerseits werden Möglichkeiten von Forks eingeschränkt, andererseits ist niemandem geholfen, wenn die Weiterentwicklung durch HashiCorp auf dem Spiel steht, nur, weil externe Akteure bezogen auf die Einnahmen sinnbildlich das Wasser abgraben. Die Leute, die Software entwickeln, müssen auch von etwas bezahlt werden.

Edit (20:25 Uhr): MariaDB setzt die BSL für MaxScale ein, nicht jedoch für die Datenbank MariaDB Server. Danke für den Hinweis, Jens.

Update (20:30 Uhr): Ggfs. werde ich mich mit der BSL noch einmal in einem gesonderten Artikel beschäftigen, aber ein kleines Detail ist hierbei vllt. noch erwähnenswert, um den Blick auf die Sache zu ändern. Die von HashiCorp verwendete Form der BSL setzt auf eine Art Embargozeit. Nach 4 Jahren der Veröffentlichung eines nach BSL lizenzierten Werkes in einer spezifischen Version, greift folgender Passus:

Effective on the Change Date, or the fourth anniversary of the first publicly available distribution of a specific version of the Licensed Work under this License, whichever comes first, the Licensor hereby grants you rights under the terms of the Change License, and the rights granted in the paragraph above terminate.

Als Change License wurde die MPL 2.0 festgelegt.

KI-Wochenrückblick KW 32/2023

13. August 2023 um 20:15

Auch in der Sommerpause gibt es vereinzelte Neuigkeiten aus der Welt der künstlichen Intelligenz. Heute möchte ich mich dabei wieder einmal den Agenten widmen.

MetaGPT

Beim Einsatz von ChatGPT und ähnlichen LLMs stellt sich schnell die Frage, ob da nicht auch mehr geht. Ob das System nicht zur Abbildung alltäglicher Arbeit herangezogen werden kann. Insbesondere mit Anfang des Jahres aus dem Winterschlaf erwachten Konzept der Agenten wurde die Zusammenarbeit unterschiedlicher KI-Instanzen wieder relevant und spannend. Umso interessanter ist es, diese Konzepte zusammenzuführen.

AutoGPT und Co. sind diesem Ziel gefolgt und konnten schon lustige Ergebnisse demonstrieren, wenn man die LLMs sinnbildlich an den eigenen Computer anschließt und z. B. die Ausgaben des LLMs als Eingabe für die eigene Shell verwendet (nicht nachmachen, ist eine dumme Idee). Doch auch hier gab es einige Schwächen, ganz rund lief alles bei weitem noch nicht.

Die Autoren hinter MetaGPT (hier im Bezug auf griechisch meta = über) haben systematisch verschiedene Rollen inkl. ihrer Interaktionen ausgearbeitet und stellen ihre Ergebnisse als Preprint und ihr Framework auf GitHub bereit. Dabei wird eine einzeilige Aufgabe, z. B. die Entwicklung eines Spiels, vom System eingelesen und dann auf ein hierarchisches Team aus Agenten verteilt. Diese Agenten haben verschiedene Rollen, die sich auf die System-Prompts abbilden, d. h. beispielhaft "Du bist ein Entwickler für Python..." oder "Du bist ein Requirements-Engineer...". Am Ende des Tages fällt ein Ergebnis raus, das dann ausprobiert werden kann.

Das Konzept sieht in meinen Augen sehr spannend aus und entwickelt sich stets weiter. Dabei wird deutlich, dass eine simple Prompt für hochwertiges Prompt-Engineering nicht reicht, vielmehr können Effekte ähnlich wie beim Ensemble-Learning genutzt werden, durch die mehrere Instanzen von LLMs, die gemeinsam ein Problem bearbeiten, deutlich effektiver arbeiten.

Was LLMs von Cyc lernen können

Irgendwie habe ich die ganzen letzten Monate schon darauf gewartet, dass sich die Autoren klassischer Expertensysteme beim LLM-Thema zu Wort melden. Immerhin prallen hier zwei komplett unterschiedliche Welten aufeinander, die beide versuchen, die Welt zu erklären.

Klassische Expertensysteme versuchen mit Logik die Welt in Regeln zu fassen. Das typische Beispiel ist "Wenn es regnet, dann wird die Straße nass". Eine klare Implikation, die in eine Richtung geht: ist das Kriterium auf der "wenn"-Seite erfüllt, gilt die Aussage auf der "dann"-Seite. Wird das System gefragt, was mit der Straße passiert, wenn es regnet, antwortet es immer, dass sie nass wird. Immer. Dass es nicht zwangsläufig der Regen sein muss, wenn die Straße nass ist, wird ebenfalls durch Logik ermöglicht, da die obige Regel eine Implikation ist und keine Äquivalenz, denn da würde es heißen "Immer wenn es regnet, dann wird die Straße nass".

Problematischer wird es zu modellieren, dass die Straße selbst bei Regen da nicht nass wird, wo gerade ein Auto parkt. Hieran erkennt man, dass es sich um ein schwieriges Unterfangen handelt, wenn Expertensysteme die echte Welt modellieren sollen. Das Cyc-Projekt hat die Mühe aber auf sich genommen und über die letzten knapp 40 Jahre über eine Million solcher Regeln zusammengetragen. Viele einfache Expertensysteme gelten grundsätzlich aber als veraltet und konnten die Erwartungen für "generelle Intelligenz" schon vor 30 Jahren nicht erfüllen.

Anders funktionieren LLMs, die nicht mit klassischer Logik, sondern Wahrscheinlichkeiten arbeiten, um das "am ehesten passende" nächste Wort für die Antwort zu finden. Zusammengefasst sind Expertensysteme für ihre Präzision zulasten der Vielseitigkeit bekannt und LLMs einfach anders herum.

Doug Lenat von Cyc und Gary Marcus von der NYU haben in ihrem Preprint nun 16 Anforderungen zusammengetragen, die eine "vertrauenswürdige KI" haben sollte, darunter Erklärung, Herleitung oder Kontext. Anschließend gehen die Autoren noch ein, wie ihr (kommerzielles) Cyc das umsetzen kann.

Ich bin tatsächlich überzeugt, dass man untersuchen sollte, wie sich diese beiden Ansätze verheiraten lassen. Dabei sprechen auch die Ergebnisse von AutoGPT, MetaGPT & Co. dafür, dass das Vorhaben auf neuronaler Ebene angegangen werden muss, da einfache Varianten wie System-Prompts á la "Du bist LogikGPT. Gib mir die Entscheidungsregeln in Prädikatenlogik aus." immer noch auf Token-/Wortvorhersagen basieren und zu viel Halluzination zulassen.

Dennoch bin ich sicher, dass es auch hier Fortschritte geben wird, die wir dann früher oder später in einem Wochenrückblick diskutieren können. Bis dahin!

KI-Wochenrückblick KW 31/2023

06. August 2023 um 20:32

In der heutigen Ausgabe des Wochenrückblicks blicken wir auf ein neues Modell von IBM und einen Ausblick auf neue Features in der ChatGPT-Oberfläche von OpenAI.

IBM und NASA veröffentlichen Foundation-Model für Geodaten

Wie ich an der einen und anderen Stelle im Wochenrückblick schon einmal erwähnt habe, beschränkt sich die Transformer-Architektur mittlerweile nicht mehr nur auf Textaufgaben. Mit Vision Transformers lässt sich dies auch auf die grafische Ebene erweitern.

In einer Kooperation zwischen IBM und der NASA wurden nun die Prithvi-Modelle auf Hugging Face veröffentlicht. Sie ermöglichen es, ein Satellitenbild einzugeben und z. B. vorhersagen zu lassen, welche Gebiete am ehesten Fluten ausgesetzt sein könnten.

Um diese Vorhersagen zu ermöglichen, hat IBM Daten aus dem Harmonized Landsat Sentinel-2-Projekt (HLS) herangezogen, um ein Foundation Modell zu trainieren. Im HLS-Datensatz befinden Satellitendaten, die mit je 30 Metern pro Pixel aufgelöst sind. Auf der technischen Seite wird ein Vision Transformer mit Masked Autoencoder eingesetzt. Das Foundation Modell kann nun von weiteren Forschern feingetuned werden, um die jeweiligen Vorhersagen weiter zu verbessern. Durch IBMs Arbeit sollen nun mehr als 250.000 TB an Missionsdaten von der NASA besser zugänglich gemacht werden. Weitere Details zum Projekt können im Blogartikel und in der Pressemitteilung von IBM abgerufen werden.

Neue ChatGPT-Features

Wie SimilarWeb schon vor wenigen Wochen beobachten konnte, ebbt der Hype um ChatGPT langsam ab. Auffällig beim Release von ChatGPT war auch, wie puristisch die ganze Oberfläche war. Dabei ist es vermutlich das Backend, was OpenAI gemeistert hat, denn sie haben es geschafft, das System in den ersten Wochen unter ziemlich hoher Last aufrecht zu erhalten.

Im Frontend wurden aber zwischenzeitlich auch Änderungen und Verbesserungen umgesetzt, insbesondere die Einführung des kostenpflichtigen Dienstes ChatGPT Plus hat einige Anpassungen erfordert. Logan Kilpatrick, zuständig für "Developer Relations" bei OpenAI, gab nun einen Ausblick, was demnächst zu erwarten ist.

So wird es unter anderem vorgeschlagene Einstiegs- und Folgefragen und die Möglichkeit des Uploads mehrerer Dateien im Code Interpreter geben. Zudem soll die Zwangsabmeldung nach 14 Tagen abgeschafft werden.

Während ein Teil der Änderungen hilfreiche Detailverbesserungen beisteuert, werden die "vorgeschlagenen Folgefragen" am lustigsten sein. Nun schreibt also ChatGPT nicht nur die Antworten, sondern auch die Fragen. Es bleibt spannend.

Awesome NetBox - Sammlung für das DCIM und IPAM Tool

06. August 2023 um 12:05

Awesome NetBox

NetBox ist ein praktisches Tool, um Netzwerke zu inventarisieren und abzubilden. Quasi ein Wiki für die Hardware und deren Einstellungen. Es unterstützt IPAM (IP Address Management) und kann als Data Center Infrastructure Management  (DCIM) verwendet werden. Daneben bietet es natürlich weitere Features, die der Dokumentation entnommen werden können.

netboxDas System lässt sich nicht nur mit Plug-ins erweitern, sondern auch mit Ansible automatisieren, zum Erzeugen von QR Labels nutzen oder dem Abbilden der Netzwerktopologie. 

Awesome NetBox hat diese und weitere Features gesammelt und stellt sie via Linkliste zur Verfügung. Das erspart das Suchen nach weiteren Funktionen und bietet einen guten Startpunkt. Eine praktische Sammlung.

Koordinierungsstelle Digitale Souveränität und Open Source erneut ausgeschrieben

04. August 2023 um 15:04

Bewerbungen wieder möglich

FOSS-Koordinierungsstelle

Bild: FOSS-Koordinierungsstelle

Die Stadt Dortmund nimmt einen zweiten Anlauf die Koordinierungsstelle Digitale Souveränität und Open Source zu besetzen und hat heute eine entsprechende Stellenausschreibung veröffentlicht. Ihr brennt für Freie Software? Hier habt ihr die Möglichkeit Freie Software gestalterisch nach vorne zu bringen! Die Stadt Dortmund sucht weiterhin zum nächstmöglichen Zeitpunkt Unterstützung für die Entwicklung einer passgenauen Open-Source-Strategie für die Stadtverwaltung. Neben der Strategieentwicklung steht die Sicherstellung einer institutionalisierten Schnittstelle zwischen dem Dortmunder Systemhaus (dosys.), dem Datenschutz, der Politik sowie gesellschaftlichen Initiativen im Fokus.

Zur weiteren Einordnung der Stellenausschreibung verweist Do-FOSS auf den zuletzt veröffentlichten Blogbeitrag zum ersten Anlauf der Stellenbesetzung.

Die Mitarbeiter*innen der Stadt Dortmund und Do-FOSS stehen für Rückfragen gerne zur Verfügung.

Dortmund und Open Source – ein Überblick

Warum es sich lohnt das städtische Open-Source-Engagement zu unterstützen, kann anhand des folgenden chronologischen Auszugs der Open-Source-Leistungen der Stadt Dortmund selbst bewertet werden.

Dokument zum Herunterladen

Die aktuelle Stellenausschreibung der Stadt Dortmund kann hier heruntergeladen werden.

CC0
Soweit im gesetzlichen Rahmen möglich verzichtet der Autor auf alle Urheber- und damit verwandten Rechte an diesem Werk.
Es kann beliebig genutzt, kopiert, verändert und veröffentlicht werden.
Für weitere Informationen zur Lizenz, siehe hier.

The post Koordinierungsstelle Digitale Souveränität und Open Source erneut ausgeschrieben appeared first on Do-FOSS.

KI-Wochenrückblick KW 30/2023

30. Juli 2023 um 19:24

In diesem Wochenrückblick kann ich euch wieder drei spannende Nachrichten präsentieren, die abbilden, was in den letzten Tagen besondere Aufmerksamkeit in der AI-Community erhalten hat.

SDXL 1.0 erschienen

Wie in fast jeder Woche kann ich euch auch dieses Mal wieder von einem neuen Modell berichten. Das Team rund um Stability AI hat am 26. Juli SDXL 1.0 veröffentlicht. SDXL baut auf Stable Diffusion auf. In der kürzlich erschienenen Version 0.9 konnten viele Eindrücke bereits gesammelt werden.

Dabei handelt es sich um ein Text-zu-Bild-Modell, welches Eingaben in 1024x1024 Pixel große Bilder konvertiert. Das Modell wurde weiter für Fotorealismus optimiert und kann nun besser die Farben, Kontraste und Schatten abbilden, so die Pressemitteilung.

Auf technischer Ebene besteht SDXL 1.0 aus zwei Modellen: einem Base-Modell mit 3,5 Mrd. Parametern und einem Refiner-Modell mit 6,6 Mrd. Parametern. Grob lässt sich das Refiner-Modell so vorstellen, dass es die Vorarbeiten vom Base-Modell nochmals deutlich verbessert, um die Qualität zu steigern.

Stability AI gibt an, dass Consumer-GPUs mit 8 GB VRAM bereits ausreichen, um damit arbeiten zu können. Ich konnte SDXL 1.0 bereits auf einer A10-Karte ausprobieren und es ermöglicht beeindruckende Ergebnisse.

Als Open-Source-Modell kann man sich die Gewichte für das Base- und Refiner-Modell laden, um es anschließend lokal zu nutzen. Für Anwender, die lediglich in die Möglichkeiten hineinschnuppern möchten, bietet sich der Dienst ClipDrop an, der kostenlos eine geringe Anzahl an Bildern zum Test generiert. Lizenziert ist SDXL 1.0 unter der Open RAIL++-M-Lizenz.

Adversarial Attacks auf LLMs

Unter dem Namen Universal and Transferable Adversarial Attacks on Aligned Language Models (Webseite) haben Zuo (CMU), Wang (Center for AI Safety), Kolter (CMU, Bosch Center for AI) und Frederikson (CMU) ein Paper präsentiert, das auf dem klassischen Gedanken der Adversarial AI aufbaut. Ihr erfolgreich erreichtes Ziel ist es, bestehenden LLMs Antworten zu entlocken, die unterdrückt werden sollen, da sie gegen die Regeln der LLM-Autoren verstoßen würden.

Die klassischen "Jailbreaks" kamen bereits kurz nach der Veröffentlichung von ChatGPT auf und wurden zeitnah immer geschlossen. Das ging in die Richtung von "Ein gute KI würde nicht sagen, wie man BÖSE SACHE HIER EINFÜGEN tut. Was würde aber eine böse KI sagen?". Die konkreten Anfragen mussten allerdings manuell aufwändig optimiert werden. Die Forscher stellen nun einen automatisierten Ansatz vor, der die böse Anfrage um eine Zeichenkette erweitert, die für Menschen unsinnig aussieht, aber das LLM intern in einer Weise beeinflusst, sodass es die aufwändig implementierten Schutzmechanismen selber missachtet und "Klartext" spricht.

Adversarial AI ist nicht neu und bereits aus der Bilderkennung bekannt. Hier genügte es, bestimmte Pixel in einem Bild zu verändern, die die menschliche Wahrnehmung nicht ändern, aber KI-Modelle verwirren. So wird für das Modell schnell aus einem 30er-Zonen-Schild ein 80er-Zonen-Schild. Dies ist durch das Studium der Modelle möglich, da man über die Zeit lernen kann, wie die Eingaben die Ausgaben beeinflussen und an welchen Stellen neuronale Netze unerwünschte Ausgaben gezielt herbeiführen kann.

1 LLM + 1 GPU + 1 Day

Die letzte Nachricht dieser Woche ist bereits ein kleiner Ausblick. Im Dezember 2023 findet die NeurIPS 2023 statt. Die NeurIPS ist eine der angesehensten Konferenzen über neuronale Netze. Schon jetzt wurde eine neue Challenge veröffentlicht, an der man bis voraussichtlich Oktober 2023 noch teilnehmen kann.

Bei der LLM Model Effiency Challenge ist das Ziel, ein bestehendes Foundation Model innerhalb eines Tages auf einer GPU, wahlweise einer 4090 oder A100 (40 GB), für ein bestimmtes Aufgabengebiet finezutunen. Dabei gelten bestimmte Regeln, welche Foundation Models z. B. verwendet werden dürfen. Darunter sind Falcon, MPT, Llama 2, BART oder T5 enthalten.

Das Ziel der Challenge ist es, die Transparenz in der Forschung der LLMs zu verbessern, da u.a. bisher ein besonders hoher Ressourcenaufwand nötig war, um das Training erfolgreich umzusetzen. Diese Challenges dienen auch, innovative Ansätze zu fördern, da durch die künstlichen Beschränkungen die Teilnehmer angehalten werden, Wege zu finden, eben 1 LLM mit 1 GPU innerhalb 1 Tages zu trainieren. Die Besten der Besten lassen sich auf einem Leaderboard tracken, um zu sehen, wer den "Highscore" knackt. Die beiden besten Teams dürfen dann auf der NeurIPS jeweils einen 30-minütigen Talk halten.

Es bleibt also weiterhin spannend. Blicken wir auch in eine neue Woche mit spannenden Neuerungen und Entwicklungen!

KI-Wochenrückblick KW 29/2023

23. Juli 2023 um 21:50

In dieser Woche gab es spannende Neuigkeiten von Meta AI und aus der Welt der Regulierung.

Llama 2

Einen Paukenschlag gab es in dieser Woche von Meta AI: Llama 2 wurde veröffentlicht mit einer Lizenz, die explizit auch die kommerzielle Nutzung erlaubt. Die Gewichte können auf Antrag gemäß den Nutzungsbestimmungen heruntergeladen werden. Verfügbar ist das Modell mit 7, 13 oder 70 Mrd. Parametern. Es wird eine Kontextlänge von bis zu 4096 Token unterstützt. Trainiert wurde das Modell auf über 2 Billionen Tokens. Das Finetuning wurde einerseits überwacht (SFT) und andererseits auf menschlichen Präferenzen (RLHF) vorgenommen.

Im Wettbewerb der LLMs geht es weiter um die Stellung der Vorherrschaft. Wer das beste Modell möglichst frei zur Verfügung stellt, bildet einen wichtigen Ankerpunkt, auf dem Forscher ihre Arbeiten aufbauen. Das ist auch bei kommerziellen Interessen sinnvoll, da eine große Nutzerbasis erreicht werden kann, die innovative Forscher und Entwickler hervorbringt, die wiederum den Ruf und die Marktposition des Unternehmens stärken.

Meta Platforms erhält nun die Möglichkeit, vom einstiegen Social-Media-Riesen zum Multimedia-Konzern aufzusteigen, der die Möglichkeiten hat, alle Medien zu bedienen. Die AI-Abteilung hat sich einen guten Ruf gemacht und versucht diesen nun im stark umkämpften Feld der LLM-Foundation-Models zu verteidigen. Dass Meta AI sich dieser Situation bewusst ist zeigt auch der Vergleich zwischen Llama 2 und MPT-7B, Vicuna-13B oder Falcon-40B im eigenen Paper zu Llama 2.

WormGPT

Dass LLMs auch für zweifelhafte Zwecke eingesetzt werden können, sollte jedem von Anfang an klar gewesen sein. In meinen Augen kann so etwas auch gar nicht durch Embargos verhindert werden, da es bei Technologien immer Akteure gibt, die sich nicht an die Regeln halten. Vielmehr sollten Gegenmaßnahmen eingesetzt werden, die auf die Ursache abzielen und nicht nur die Symptome bekämpfen.

SlashNext gibt in einem Blogeintrag einen interessanten Einblick in ein LLM-System mit dem Namen "WormGPT". Es soll auf dem 2021 erschienenen GPT-J aufbauen, um BEC-Tasks aufzuführen, also Business E-Mail Compromise. Da LLMs besonders dazu in der Lage sind, Texte nach bestimmten Stilen oder Gattungen zu entwerfen, kann ohne entsprechende Sicherheits-Checks ein System auf bösartige Aufgaben trainiert werden, um zum Beispiel eine Nachricht im Stil des eigenen Chefs oder Kunden zu schreiben.

Ratschläge, besonders auf die Rechtschreibung von eingehenden, echt aussehenden E-Mails zu achten, laufen mit der aktuellen Entwicklung somit zunehmend ins Leere. Bleibt also nur noch die Ursachenbekämpfung, der mit z. B. einem Konzept, das auf digitale Signaturen aufbaut, oder weiteren innerbetrieblichen Abläufen begegnet werden kann, damit nicht auf einfache Anweisung riesige Summen ins Ausland überwiesen werden.

Selbstverpflichtung

Der Wunsch der Politik, mit der Regulierung dem technischen Wandel Schritt halten zu können, wurde auch in dieser Woche spürbar. Sieben große AI-Organisationen, darunter Google, OpenAI und Anthropic, haben sich gegenüber der US-Regierung zu Risikomanagement verpflichtet. Dieses soll auch Tests und den Austausch mit Behörden und Gesellschaft einschließen.

Damit lässt sich in westlichen Ländern der Trend beobachten, die Gefahren, die sich aus der Entwicklung ergeben, möglich schnell eindämmen zu können. Andererseits - und auch das ist Bemerkenswert - verpflichten sich die Unternehmen zur Entwicklung von Systemen, um Herausforderungen in der Gesellschaft anzugehen. Statt also nur KI einzuschränken, soll die Entwicklung aktiv forciert werden.

Besonders die Kennzeichnung von KI-Inhalten wird diskutiert. In meinen Augen gibt es hier Vorteile wie Nachteile. Einerseits ist es sinnvoll, zu wissen, auf welcher Basis bestimmte Texte entstanden sind (ich schreibe diese Zeilen gerade zum Beispiel selber), andererseits werden Lösungen damit gefördert, die in einer weiteren Ausbaustufe jeden Datensatz personifiziert zuordenbar machen, was zunehmend den Datenschutz aushölt.

Diese Woche zeigt nichtsdestotrotz, dass es im hohen Tempo weitergeht und jede Woche einige Überraschungen bereithält - wie diese Woche Llama 2. Schauen wir also, was uns auch die nächste Woche bringt!

KI-Wochenrückblick KW 28/2023

16. Juli 2023 um 19:55

Heute habe ich die Timeline aktualisiert, die einen Überblick über aktuelle und wichtige Modelle gibt. Es wird schnell ersichtlich, dass wir uns in der KI-Welt mittlerweile wieder in der Detailarbeit befinden und der große Schub an neuen LLMs immer weiter abnimmt. Aber was hat uns diese Woche beschert?

"Low Ressource" Text Classification

Diese Woche wurde ein Paper diskutiert, das recht unscheinbar daherkommt: "Low Resource" Text Classification: A Parameter-Free Classification Method with Compressors. Kurz gefasst wollen die Forscher die Tatsache feiern, dass ihr Modell weniger ressourcenintensiv ist.

Dafür haben sie eine reizend unaufwändige KI-Methode für Textklassifikation vorgestellt, die eine vergnügliche Kreuzung aus einem simplen Kompressor - ähnlich wie gzip - und einem k-Nearest-Neightbor-Klassifikator ist. Und das spannendste an der Sache? Sie kommt komplett ohne Trainingsparameter aus. Was für eine erfrischende Neuheit, denn das Modell spielt etablierte Konkurrenten wie BERT auf allen fünf OOD-Datensätzen gnadenlos aus.

Was uns das Paper zeigt, ist, dass nicht alles nur durch Deep Neural Networks beherrscht wird. Wer eine clevere, einfache Methode entwickelt, kann trotzdem erstaunliche Ergebnisse erreichen. Der Quellcode für das Verfahren ist beachtenswert kurz und unter GitHub abrufbar.

x.AI

Wer sich noch an den Anfang von OpenAI erinnern kann, wird um die Rolle von Elon Musk wissen. Er hat sich für OpenAI eingesetzt und viele Ressourcen bereitgestellt. Später kam der Rückzug aus OpenAI und eine auf Twitter propagierte kritischere Haltung gegenüber dem Start-up.

Mittlerweile baut Elon Musk fleißig die Infrastruktur rund um Twitter um, welches zunehmend einfach nur noch als "X" bezeichnet wird. Im April kam die Nachricht über eine große Bestellung von Grafikkarten durch Twitter. Jetzt dürfte klar sein, welche Richtung eingeschlagen wird.

xAI soll ein Unternehmen werden, das die wahre Natur des Universums verstehen möchte, wie auf der Landing Page auf x.ai bekannt gegeben wird. Neben der Zielsetzung werden auf der Seite noch einige Informationen über das Team bereitgestellt, wobei schnell klar wird, dass viele Leute, die zuvor bei DeepMind, OpenAI und in den Research-Abteilungen von Microsoft und Google gearbeitet haben, am Start-up mitarbeiten. xAI ist zwar ein getrenntes Unternehmen, soll aber eng mit Twitter und Tesla zusammenarbeiten. Noch gibt es keine genauen Informationen, was geplant ist, wir können aber mehr hierzu in den nächsten Wochen erwarten.

OpenOrca

Vor einigen Wochen habe ich bereits berichtet, dass Microsoft eine Methode veröffentlicht hat, mit der sehr leistungsstarke LLMs mit wenigen Parametern trainiert werden können. Das Team von OpenOrca hat bereits vor einigen Tagen das gleichnamige Dataset auf Hugging Face gezeigt, nun folgte in dieser Woche die Veröffentlichung des ersten eigenen richtigen Modells, OpenOrca-Preview1-13B.

Das Team von OpenOrca nutzt das Dataset, um in dem Modell ein LLaMA-13B entsprechend finezutunen. Dabei wurden bisher weniger als 6% des Datensatzes zum Training eingesetzt und dieser Release soll nur als Vorschau einen Einblick in den aktuellen Entwicklungsstand geben.

Es bleibt also weiterhin spannend. Neue Methoden und Techniken ermöglichen hochwertige und leistungsstarke Modelle, die es auch mit ihrer proprietären Konkurrenz aufnehmen können. Schauen wir, was uns auch nächste Woche erwartet!

KI-Wochenrückblick KW 27/2023

09. Juli 2023 um 20:00

Langsam kündigt sich, wie wir heute in den Nachrichten sehen werden, in der KI-Welt eine kleine Sommerpause an, sodass es etwas ruhiger wird. In dieser Woche hat OpenAI wieder für die eine oder andere Schlagzeile gesorgt, weswegen sich der Wochenrückblick speziell darauf konzentrieren wird.

Vermuteter ChatGPT-Traffic geht zurück

Traffic von fremden Webseiten zu messen ist eine gar nicht so einfache Angelegenheit. Am Ende des Tages weiß nur der Betreiber der Webseite, wie viele Inhalte er an wie viele IP-Adressen ausgeliefert hat, woraus man eine Nutzerzahl abschätzen kann. SimilarWeb ist ein Dienstleister, der sich auf Schätzungen über den Traffic externer Webseiten spezialisiert hat und nimmt dafür Ersatzmetriken zur Hilfe.

Über ChatGPT berichtet SimilarWeb nun, dass der Traffic von Mai zum Juni hin um etwa 10 Prozent gesunken sein soll. Die Anzahl der einzigartigen Nutzer soll um etwas über 5 Prozent, die auf der Webseite verbrachte Zeit um etwa 8 Prozent gesunken sein.

Unabhängig von den Zahlen kann ich den Trend nachvollziehen. Einerseits zeichnet sich die Sommerpause ab, in der viele im Urlaub sind und den Dienst weniger beruflich "ausprobieren". Andererseits weiß der beträchtlich große Nutzerkreis von ChatGPT mittlerweile um die Funktionen des LLM, weshalb die Neugier der Nutzer vermutlich abnimmt. ChatGPT kommt nun langsam als klassisches Werkzeug im Mainstream an.

GPT-4 API für alle

Passend dazu hat OpenAI die API für GPT-4 nun von der Warteliste befreit und stellt den Dienst für alle Nutzer bereit. Ob es einen Zusammenhang zur vorherigen Nachricht mit den dadurch frei werdenden Ressourcen gibt, werden wir sicherlich nie erfahren, aber schon bei früheren Diensten wie DALL-E hat OpenAI nach einer anfänglichen Startphase die künstliche Verknappung über die Warteliste auslaufen lassen.

In der dazugehörigen Blognachricht wurde gleichzeitig angekündigt, die Completions-API Anfang 2024 aufzugeben. An dieser Stelle wird wieder deutlich, wie sehr OpenAI auch weiterhin ein Start-up ist. War das bisherige API-Konzept mit GPT-3 auf die Vervollständigung von Anfragen ausgelegt, hat sich dies durch den plötzlichen Erfolg von ChatGPT stark verändert. LLMs agieren interaktiv und können auf Folgefragen antworten. Dies wird offenbar durch die Chat-API am besten repräsentiert, weswegen OpenAI sich hierauf jetzt konzentriert. Die Änderungen wurden schon im OpenAI Playground wirksam.

ChatGPT Code Interpreter

Ich kann mich noch gut an den Dezember 2022 erinnern, als ein Artikel über eine [imaginäre virtuelle Maschine innerhalb des neuen LLMs ChatGPT] die Runde machte. Daraufhin habe ich mir ChatGPT erstmals genauer angesehen. Damals hat sich ChatGPT eine VM halluziniert, ein Verhalten, das zeitnah leider schon eingedämmt wurde. Mittlerweile wurde aber aus der Fiktion Realität: ChatGPT Plus verfügt Berichten und einem Tweet zufolge nun über ein Plugin, dass es ermöglicht, Code innerhalb einer Sandbox auszuführen.

Damit wird ChatGPT noch leistungsfähiger und kann für immer mehr Aufgaben eingesetzt werden. Das war bisher eine Herausforderung, aber auch ein Forschungsthema, das bezogen auf Tools auch mit dem Toolformer oder Visual ChatGPT zu interessanten Ergebnissen führte. Auf diese Weise kann ChatGPT auch deterministischer werden: so braucht ChatGPT ggfs. für eine komplexe Aufgabe nur den benötigten Code generieren - die Berechnung wird dann in der Sandbox vorgenommen und kommt zu den Ergebnissen mit der nötigen Präzision.

Schauen wir auch in der nächsten Woche, mit was für Fortschritten und spannenden Nachrichten wir rechnen können.

Das Red Hat Linux Closed Source Drama - Sind Firmen schädlich für Linux und Open Source?

04. Juli 2023 um 14:52

💾

In diesem Video geht es um aktuelle Neuigkeiten über Red Hat. Wird RHEL nun tatsächlich ein Linux Closed Source Produkt? Und wenn ja, warum machen die das. Außerdem soll es darum gehen, ob Firmenbeteiligungen tatsächlich schädlich für das Linux Eco-System sind.

Linux Bücher für Einsteiger von mir (Ebook und Taschenbuch):
▶️ https://www.amazon.de/~/e/B001K73R84

Brandneu:
Debian 12 - Schnellanleitung für Einsteiger
▶️ https://www.amazon.de/dp/B0C91RFXXJ
Linux Mint 21 - Schnellanleitung für Einsteiger
▶️ https://www.amazon.de/dp/B0BB9LGMPG

0:00 Red Hat Linux ab jetzt Closed Source?
9:45 Sind Firmen schädlich für Linux und Open Source?
Weitere Videos zu Linux Distributionen findet Ihr in dieser Playlist:
▶️ https://www.youtube.com/watch?v=sdYcdG4mn98&list=PLl0zRfPkQ7Xu86XQgKbUhVRSBbHpUzxxM

Andere Kanäle von mir:
Joe loves Linux ▶️ https://www.youtube.com/channel/UCdI8plWGpNHwN1oswHi3iWA
Raketenheftleser ▶️ https://www.youtube.com/channel/UCyPNZr7yK8278QXQDMFnQag
Joe's Musik Check ▶️ https://www.youtube.com/channel/UCuB7gdAs73msDRUnlRRKv5Q
JJ Fotoshow ▶️ https://www.youtube.com/c/JoeTravels

Web:
▶️ www.linuxumsteiger.net
▶️ www.josef-moser.de

Abonniere den Kanal:

▶️ https://www.youtube.com/channel/UCnKExIc8hWK5yS6VwVerqaA?sub_confirmation=1

Mit Superthanks kannst Du den Kanal unterstützen, wenn Du das möchtest.


#linux #ubuntu

KI-Wochenrückblick KW 26/2023

02. Juli 2023 um 18:30

Im heutigen Wochenrückblick schauen wir auf einen spannenden Essay, ein interessantes Tool für Code-Migrationen und ein neues Open-Source-LLM für große Sequenzlängen.

The Rise of the AI Engineer

Beginnen wir den heutigen Wochenrückblick mit einem Artikel, der in der Woche disktutiert wurde. swyx hat auf Latent Space den Artikel The Rise of the AI Engineer veröffentlicht. Im Artikel geht es um die Entstehung eines komplett neuen Berufszweiges: dem AI Engineer. Dabei ist der AI Engineer die Weiterentwicklung des Prompt Engineers und wird im Essay auf einer Skala eingeordnet. Der AI Engineer beschäftigt sich wenig mit der genauen Funktionsweise von ML-Modellen, vielmehr versteckt ihm die API wie z. B. von OpenAI die technischen Details und ermöglicht ihm, sich auf das Wesentliche zu konzentrieren: sein Produkt.

War es vor zehn Jahren noch ein forschungsnahes Vorhaben, ein Produktempfehlungssystem zu entwerfen, ist es durch die Verfügbarkeit von schnell einsetzbaren Diensten heutzutage möglich, die gewünschte Funktionalität zu integrieren. Integration, das ist es, was den AI Engineer ausmacht. Er muss nicht wissen, wie ein LLM genau funktioniert, er muss nur wissen, was es tut. Insbesondere erwähnt der Autor des Essays, dass die Few-Shot-Modelle dazu geführt haben, dass ML-Forscher selber nicht mehr das Modell wie GPT-4 auf den Einsatzzweck abstimmen, sondern diese Aufgabe von Anwendern übernommen wird, die Zeit mit dem Modell und der Schnittstelle verbringen und ausprobieren, was man damit tun kann.

Das alles wird nicht einfach sein, vor allem, da klassische ML-Forscher über lange Zeit hinweg dieses Feld noch belächeln werden. Behält man diesen Wandel allerdings im Hinterkopf, kann man sich schon jetzt darauf einstellen und wird nicht überrascht, wenn in fünf Jahren Menschen, deren Vollzeitjob die Integration von ML-Systemen ist, hohe Gehälter und einen substantiellen Einfluss auf den Geschäftsbetrieb vieler Firmen erhalten.

GPT-Migrate

Wie so eine konkrete Anwendung aussehen kann, zeigt bereits GPT-Migrate. Hier handelt es sich um ein interessantes Produkt, das eine Codebase von einer Programmiersprache in eine andere umwandelt.

Das Projekt selber setzt auch nur auf bestehende LLMs, nutzt sie aber in einer besonders abgestimmten Art und Weise. Der Code soll nicht nur starr umgewandelt, sondern auch idiomatisch sinnvoll ausgegeben werden. Wandelt man beispielsweise ein Python-Projekt in eine Node.js-Application um, besteht die Arbeit aus mehr als nur einer 1:1-Umwandlung der Statements. Vielmehr müssen die Frameworks beachtet werden mit ihrer individuellen Weise, Lösungen abzubilden.

Betrachten wir ein solches Projekt aus der akademischen Sicht, ist so ein Projekt ein Himmelfahrtskommando: Wir können nicht mit hinreichender Sicherheit sagen, ob es immer zuverlässig funktioniert. In der Praxis hat dieser Umstand für den durchschnittlichen Anwender allerdings eine untergeordnete Rolle: wenn es auch nur regelmäßig funktioniert, bringt es viele Entwickler für ihre Durchschnittsprojekte schon weiter. So sind Informatiker heutzutage auch nicht durchgängig mehr damit beschäftigt, richtige Algorithmen für z. B. Sortierung zu entwerfen, sondern reihen eher fertige Programmfragmente und -prozeduren aneinander. Eine unbeaufsichtigte Dienstleistung für Codeumwandlung sollte dennoch nicht auf so einem einfachen System aufgebaut werden. Die Abstimmung, die feinen Anpassungen und die Risikoanalyse - auch das werden in meinen Augen Aufgaben des AI Engineers sein.

Salesforce XGen

Neue Modelle sollen auch in diesem Wochenrückblick nicht fehlen. In dieser Woche haben wir diesbezüglich wieder einen alten Bekannten dabei: Salesforce, bekannt von BLIP2 oder CodeT5. Diesmal hat sich das Forschungsteam rund um Nijkamp, Xie, Hayashi, Pang und Xia mit Open-Source-LLMs für besonders hohe Sequenzen beschäftigt.

Die Sequenzlänge als maximale Länge einer Eingabe für das LLM ist neben der Parameterzahl einer der wichtigsten numerischen Einflussfaktoren für die Leistungsfähigkeit von LLMs. Soll ein solches Modell beispielhaft einen Text zusammenfassen, kann ein LLM mit 8 Tsd. Tokens Sequenzlänge deutlich mehr Text in einem Zug verarbeiten als ein LLM mit 2 Tsd. Tokens Sequenzlänge. Dass die Sequenzlänge in Tokens statt Wörtern gemessen wird, ist auf die mathematische Darstellung der Eingaben für LLMs zurückzuführen. Im Wochenrückblick der vergangenen Woche habe ich für diese Thematik Lehrmaterial vorgestellt.

Salesforce hat unter dem Namen XGen-7B Modelle mit einer Sequenzlänge von 8 Tsd. Tokens und einer Parameterzahl von 7 Mrd. trainiert, die den bisherigen Open-Source-Modellen mit nur 2 Tsd. Tokens wie LLaMA, MPT oder Falcon in standardisierten Benchmarks wie MMLU oder SCROLLS mindestens gleichauf sind. Die kommerzielle Konkurrenz kommt mit GPT-4 auf 32 Tsd. Tokens oder mit Claude auf 100 Tsd. Tokens. Das Training wurde mit 1,5 Billionen Tokens (hier nicht Sequenzlänge, sondern Anzahl der Tokens, auf deren Basis trainiert wurde) durchgeführt und hat über 150.000 US-Dollar gekostet.

Weitere Informationen zu XGen sind im Blogartikel von Salesforce Research zu finden. Die XGen-7B-Modelle sind in verschiedenen Varianten auf HuggingFace unter der Apache-2.0-Lizenz verfügbar, der zugrundeliegende Code kann unter GitHub abgerufen werden.

Und so geht wieder eine spannende Woche zu Ende, in der wir beobachten konnten, wie einerseits weiterhin neue Open-Source-Modelle mit Verbesserungen veröffentlicht werden und andererseits die Anwendung solcher Modelle zunehmend in den Vordergrund tritt. Schauen wir, was uns auch in den nächsten Tagen wieder erwartet!

KI-Wochenrückblick KW 25/2023

25. Juni 2023 um 20:22

Und wieder ist eine Woche um! Im heutigen Wochenrückblick geht es um drei Nachrichten und einen Lesetipp.

MPT-30B

In fast jeder Woche erscheinen neue KI-Modelle. Seien es komplett neue Modelle wie Falcon oder Vertreter bestehender Modellfamilien wie das diese Woche veröffentlichte MPT-30B.

Konkurrenz belebt das Geschäft. Während Falcon-40B als eines der leistungsstärksten Open-Source-LLMs viele Benchmarks für sich entscheidet, ist das Deployment aufgrund der hohen Parameteranzahl teilweise mitunter herausfordernd. MPT-30B stellt sich hier als Alternative auf und gibt an, dass es auf einer A100-80G mit 16-Bit-Präsizion oder einer A100-40GB mit 8-Bit-Präsizion bereitgestellt werden kann. Ansonsten baut das Modell auf dem bereits vor einigen Wochen vorgestellten MPT-7B auf und wird durch seine Programmierfähigkeiten charaketerisiert, die durch die Auswahl der Trainingsdaten angelernt werden konnten. Das Modell ist wieder in verschiedenen Facetten verfügbar: als Basismodell, für Instruktionen optimiert oder für Chat optimiert.

SDXL 0.9

Stable Diffusion XL (SDXL) ist eine Weiterentwicklung aus dem Hause Stability AI. Deren erstes Produkt Stable Diffusion hat schon überzeugt, weil es eine Alternative zu OpenAI DALL-E war. Bei Stability AI werden öffentlichkeitswirksam die Entwicklungen im Blog vorgestellt und so war bereits SDXL Beta interessant, weil es nochmals die Fähigkeiten des Bildgenerators erweitert.

SDXL 0.9 ist nun der Nachfolger von SDXL Beta. Im Blogeintrag kann im direkten Vergleich nachvollzogen werden, dass SDXL 0.9 Bilder generiert, die deutlich besser zu den Bildbeschreibungen passen. Technisch wurde der Fortschritt durch eine Erhöhung der Parameterzahl erreicht. Mit 3.5 Mrd. Parametern als Basismodell und einer 6.6 Mrd. Parameter starken Ensemble-Pipeline handelt es sich dabei um das nach eigenen Angaben parameterstärkste Open-Source-Bildmodell. SDXL 0.9 ist bereits auf ClipDrop für den Einsatz verfügbar und kann über HuggingFace direkt bezogen werden.

Mercedes-Benz testet ChatGPT

Die Entwicklung der LLMs macht momentan vor den Systemen halt, bei denen man Sprachfähigkeiten am ehesten erwartet: Sprachassistenten auf Smartphones. Hier müssen wir uns bei den verbreiteten Systemen weiterhin noch auf die voreingestellten Fähigkeiten beschränken, die einprogrammiert wurden. Konkurrenz kommt nun von ungewohnter Seite: Mercedes-Benz hat in den letzten Tagen für die US-Kunden bekanntgegeben, in einer frühen Betaversion ChatGPT für die Sprachassistenz in ausgewählten Automodellen mit MBUX zu unterstützen.

Die Teilnahme an dem Programm ist optional. In der Pressemitteilung wird insbesondere der Datenschutz und die Hoheit über IT-Prozesse hervorgehoben. Technisch wird dieses Vorhaben über eine Kooperation mit Microsoft und dem Azure OpenAI Service umgesetzt.

Embeddings

KI ist ein sehr komplexes Thema, das viele Disziplinen umfasst. Umso wichtiger ist es, hochwertige Lernmaterialien zu beziehen. Vicki Boykis hat mit What are embeddings ein umfangreiches Handbuch ausgearbeitet, das sich mit einem wichtigen Kernelement beschäftigt, das LLMs heutzutage erst möglich macht. Konkret geht es dabei um Verfahren, natursprachliche Texte in Zahlen zu verwandeln, um sie mathematisch verarbeitbar zu machen.

Das Handbuch umfasst neben Erklärungen und mathematischen Hintergründen auch Codebeispiele, um selber einmal am Beispiel auszuprobieren, wie Embeddings konkret funktionieren.

Bis zur nächsten Woche!

KI-Wochenrückblick KW 24/2023

18. Juni 2023 um 20:22

Während der letzte KI-Wochenrückblick etwas kürzer ausfiel, da die gefühlt gesamte Tech-Welt nach Cupertino geschaut hat, gibt es in dieser Woche etwas mehr zu berichten. Starten wir also rein!

AI und Compliance

Üblicherweise steht bei Tech-Themen die Technologie im Vordergrund. Nicht so bei KI. Man kann es vielleicht dem Zeitgeist oder den Erfahrungen mit dem Internet zuschreiben, aber bei rechtlichen oder gesellschaftlichen Auswirkungen wird bei KI ein strenger Maßstab angelegt. So hat in dieser Woche das EU-Parlament den lange diskutierten AI Act eine Stufe weitergeschoben. Im wesentlichen bedeutet der AI Act, dass man nicht mehr jede beliebige KI-Anwendung auf den Markt werfen kann. Erfüllt eine Anwendung bestimmte Kriterien, müssen zusätzliche, bürokratische Schritte zur Qualitätssicherung und Folgenabschätzung vorgenommen werden. Welche Kriterien das sind und was daraus folgt, ist im aktuellen Prozess schwer zu verfolgen, reicht(e) aber von "ChatGPT wird praktisch verboten" bis "Es wird sehr aufwändig".

Besonders schwierig ist es, die Auswirkungen eines solchen Regelwerks anhand konkreter Beispiele nachzuvollziehen. Risihi Bommasani vom Stanford CRFM hat diese Woche auf Twitter demonstriert, wie das aussehen könnte. Er und sein Team haben für 10 verschiedene KI-Anbieter in einer Punktematrix dargelegt, wo welche Anbieter punkten und wo noch Nachbesserungsbedarf ist. Besonders gut kam BigScience (BLOOM) an, hier wurden 36 von 48 möglichen Punkten geholt, besonders bei "Data sources", "Data governance" und "Downstream documentation" konnte BigScience punkten.

Sehen, was der andere sieht

Typische Ermittlerdokus sind der KI schon seit Jahrzehnten voraus und können die Regeln von Raum und Zeit auf Überwachungsvideos außer Kraft setzen. Aktuelle Entwicklungen in der KI ziehen aber langsam nach. Mit Seeing the World through Your Eyes haben Alzayer et al. von der University of Maryland, College Park gezeigt, dass die Reflexion der Pupillen eines Menschen in Bildsequenzen genutzt werden kann, um das Gesehene aus seiner Perspektive als 3D-Modell abzubilden.

So wird "Point of View" real und kann benutzt werden, um Gegenstände, die die Person sieht, wiederzuerkennen. Natürlich ist die Technologie nicht perfekt und verfügt über eine geringe Auflösung, zeigt aber, dass in den verschiedensten Bereichen der Musterverarbeitung Entwicklung stattfindet. Dieses Paper setzt auch neuronale Netze lediglich am Rande ein, was noch einmal verdeutlicht, dass KI nicht nur aus LLMs und Transformers besteht.

LLMs und Secret Sauce

Nichtdestotrotz bleiben die LLMs ein Thema. Galine Alperovich hat im letzten Monat eine Zusammenstellung von Tricks veröffentlicht, um 100K Context Windows zu ermöglichen. Mit Claude haben wir bereits ein System gesehen, was so ein enormes Kontextfenster umsetzt, auch MPT weist mittlerweile Kontextfenster um die 65.000 Token auf.

Ihre dargelegten Hinweise können genutzt werden, um das Training von eigenen Modellen zu optimieren, denn das stellt heutzutage die große Kunst dar. Dass das Training generell möglich ist, haben wir gesehen. Es aber auch aufwandsarm umzusetzen, kann einerseits die Kosten senken, aber auch das Training für kleinere Akteure generell erst möglich machen.

Abschließend für den heutigen Wochenrückblick können wir auch nochmal auf OpenLLaMA schauen. Viele Teams haben sich in der Zwischenzeit rangesetzt, um Meta AIs Arbeit zumindest zu reproduzieren. Die Ergebnisse trudeln Woche für Woche ein. Seit dieser Woche sind nun auch die Gewichte für OpenLLaMA-13B auf HuggingFace verfügbar.

Bleiben wir gespannt, was uns auch die nächste Woche wieder an Neuigkeiten bringt!

❌