InfoWorld kündigt die beste Open-Source-Software des Jahres 2023 an

InfoWorld hat seine Liste der besten Open-Source-Software 2023 bekannt gegeben, die die führenden Open-Source-Tools des Jahres für Softwareentwicklung, Datenmanagement, Analyse, künstliche Intelligenz und maschinelles Lernen auszeichnet.

InfoWorld ist eine internationale Technologie-Medienmarke, die sich führenden IT-Entscheidungsträgern an der Spitze der Technologie widmet. Jedes Jahr wählt InfoWorld die „Beste Open-Source-Software“ des Jahres auf der Grundlage des Beitrags der Software zur Open-Source-Community und ihres Einflusses in der Branche aus . Source Software Awards, Bossies), der seit mehr als zehn Jahren verliehen wird.

Die 25 Software auf der Liste umfasst Programmiersprachen, Laufzeiten, Anwendungsframeworks, Datenbanken, Analyse-Engines, Bibliotheken für maschinelles Lernen, große Sprachmodelle (LLM), Tools für die Bereitstellung von LLM usw. Die Details lauten wie folgt (klicken Sie jeweils auf den Projektnamen) . kann zur Projekteinführungsseite springen):

Apache Hudi

Beim Aufbau eines offenen Datensees oder eines integrierten Sees und Lagers benötigen viele Branchen eine besser skalierbare und veränderbare Plattform. Bei Werbeplattformen für Publisher, Werbetreibende und Mediaeinkäufer reicht eine schnelle Analyse nicht aus. InfoWorld ist davon überzeugt, dass Apache Hudi nicht nur schnelle Datenformate, Tabellen und SQL bereitstellt, sondern ihnen auch die Durchführung von Echtzeitanalysen mit geringer Latenz ermöglicht. Es lässt sich in Apache Spark, Apache Flink und Tools wie Presto, StarRocks und Amazon Athena integrieren. Kurz gesagt: Wenn Sie Echtzeitanalysen für einen Datensee durchführen möchten, ist Hudi eine sehr gute Wahl.

Apache-Eisberg

HDFS und Hive sind zu langsam. Apache Iceberg funktioniert nicht nur mit Hive, sondern auch direkt mit Apache Spark und Apache Flink sowie anderen Systemen wie ClickHouse, Dremio und StarRocks. Iceberg bietet leistungsstarke Tabellenformate für alle diese Systeme und unterstützt gleichzeitig die vollständige Schemaentwicklung, Datenkomprimierung und Versions-Rollback. Iceberg ist eine Schlüsselkomponente vieler moderner offener Datenseen.

Apache-Superset

Apache Superset ist seit vielen Jahren führend in der Datenvisualisierung. Für diejenigen, die Self-Service-, kunden- oder benutzerorientierte Analysetools in großem Maßstab bereitstellen möchten, ist Superset so ziemlich die einzige Option. Superset bietet Visualisierungsfunktionen für praktisch jedes Analyseszenario, von Kreisdiagrammen bis hin zu komplexen Geodiagrammen. Es funktioniert mit den meisten SQL-Datenbanken und bietet einen Drag-and-Drop-Builder und eine SQL-IDE. Wenn Sie Daten visualisieren möchten, ist Superset einen Versuch wert.

Brötchen

Bun ist eine leistungsstarke „All-in-One-JavaScript-Laufzeit“, die in der Zig-Sprache geschrieben ist und offiziell als „ All-in-One-  JavaScript-Laufzeit“ bezeichnet wird. Bun bietet die Funktionen zum Packen, Übersetzen, Installieren und Ausführen von JavaScript- und TypeScript-Projekten mit integriertem nativen Bundler, Übersetzer, Task Runner, NPM-Client und Web-APIs  wie .fetchWebSocket

InfoWorld kommentierte, dass Bun gerade dann auftauchte, als man dachte, JavaScript sei in eine vorhersehbare Routine eingetreten. Der „frivole“ Name täuscht über sein ernstes Ziel hinweg: Alles, was Sie für serverseitiges JS benötigen – Laufzeit, Bundler, Paketmanager – in einem einzigen Tool zusammenzufassen. Damit ist es ein Drop-in-Ersatz für Node.js und NPM, aber viel schneller. Dieser einfache Vorschlag scheint Bun zum störendsten JavaScript-Tool zu machen, seit Node Applecart gestört hat.

Ein Teil von Buns Schnelligkeit ist Zig zu verdanken, der Rest ist der Leistungsbesessenheit von Gründer Jared Sumner zu verdanken. Neben der Leistung macht die Integration aller Tools in einem Paket Bun auch zu einer leistungsstarken Alternative zu Node und Deno.

Claude 2

Claude 2 von Anthropic kann bis zu 100.000 Token (~70.000 Wörter) in einer einzigen Eingabeaufforderung akzeptieren und Geschichten mit bis zu Tausenden von Token generieren. Claude kann Daten bearbeiten, umschreiben, zusammenfassen, klassifizieren, strukturierte Daten extrahieren, Fragen und Antworten basierend auf dem Inhalt durchführen usw. Die meisten Kurse werden auf Englisch unterrichtet, aber auch in einer Reihe anderer häufig verwendeter Sprachen ist es hervorragend. Claude verfügt außerdem über umfassende Kenntnisse gängiger Programmiersprachen.

Claude wurde von Anfang an zu einem  hilfsbereiten, ehrlichen und harmlosen  Roboter ausgebildet und wurde umfassend umgeschult, um harmloser zu werden und weniger aggressive oder gefährliche Ergebnisse zu erzeugen. Es trainiert nicht anhand Ihrer Daten und sucht nicht nach Antworten im Internet.

KakerlakeDB

CockroachDB ist eine verteilte SQL-Datenbank, die ACID-Transaktionen mit starker Konsistenz erreichen kann. Durch die Erzielung einer horizontalen Skalierbarkeit beim Lesen und Schreiben von Datenbanken werden die wichtigsten Skalierbarkeitsprobleme leistungsstarker, transaktionsintensiver Anwendungen gelöst. CockroachDB unterstützt auch Bereitstellungen in mehreren Regionen und in mehreren Clouds, um die Latenz zu reduzieren und Datenvorschriften einzuhalten. Zu den Beispielbereitstellungen gehört die Datenplattform von Netflix, die über mehr als 100 CockroachDB-Produktionscluster verfügt, die Medienanwendungen und Geräteverwaltung unterstützen. Zu den Hauptkunden zählen Hard Rock Sportsbook, JPMorgan Chase, Santander und DoorDash.

CPython

In den beiden Versionen von Python 3.11 und Python 3.12 hat das Python-Kernentwicklungsteam eine Reihe revolutionärer Upgrades an der Referenzimplementierung des Python-Interpreters CPython vorgenommen. Das Ergebnis ist eine massive Verbesserung der Python-Laufzeitleistung für alle, nicht nur für die wenigen, die sich für die Verwendung neuer Bibliotheken oder modernster Syntax entscheiden.

InfoWorld glaubt, dass die Global Interpreter Lock (Global Interpreter Lock) ein langfristiges Hindernis darstellt, das Python daran hindert, Multithread-Parallelität wirklich zu realisieren.

DuckDB

DuckDB ist eine analytische Datenbank im Sinne kleiner, aber leistungsstarker Projekte wie SQLite. DuckDB bietet alle bekannten RDBMS-Funktionen – SQL-Abfragen, ACID-Transaktionen, Sekundärindizes –, fügt jedoch analytische Funktionen wie Verknüpfungen und Aggregationen großer Datensätze hinzu. Es kann auch gängige Big-Data-Formate wie Parquet aufnehmen und direkt abfragen.

HTMX und Hyperscript 

HTMX nutzt das HTML, das Menschen kennen und lieben, und erweitert es um Verbesserungen, die das Schreiben moderner Webanwendungen erleichtern. HTMX eliminiert den Großteil des Standard-JavaScript, das zum Verbinden von Web-Frontends und Backends verwendet wird. Stattdessen werden intuitive HTML-Attribute verwendet, um Aufgaben wie das Senden von AJAX-Anfragen und das Auffüllen von Elementen mit Daten auszuführen.

Ein ähnliches Projekt, Hyperscript, führt eine HyperCard-ähnliche Syntax ein, die viele JavaScript-Aufgaben vereinfacht, einschließlich asynchroner Vorgänge und DOM-Manipulation. Alles in allem bieten HTMX und Hyperscript eine mutige Alternative zum aktuellen Trend reaktiver Frameworks.

Dazu

Istio ist ein Service Mesh, das die Vernetzung und Kommunikation für Container-basierte Mikrodienste vereinfacht, Verkehrsweiterleitung, Überwachung, Protokollierung und Beobachtbarkeit bietet und gleichzeitig die Sicherheit durch Verschlüsselungs-, Authentifizierungs- und Autorisierungsfunktionen erhöht.

Istio entkoppelt die Kommunikation und ihre Sicherheitsfunktionen von Anwendungen und Infrastruktur und ermöglicht so sicherere und konsistentere Konfigurationen. Die Architektur besteht aus einer in einem Kubernetes-Cluster bereitgestellten Steuerungsebene und einer Datenebene zur Steuerung von Kommunikationsrichtlinien. Im Jahr 2023 schloss Istio das CNCF-Inkubationsprojekt ab und erhielt Unterstützung und Beiträge von Unternehmen wie Google, IBM, Red Hat, Solo.io und anderen Unternehmen der Cloud-Native-Community.

Container sagten

Kata Containers kombiniert die Geschwindigkeit von Containern mit der Isolierung virtueller Maschinen und ist eine sichere Container-Laufzeitumgebung, die Intel Clear Containers und Hyper.sh runV verwendet. Kata Containers funktioniert mit Kubernetes und Docker und unterstützt mehrere Hardwarearchitekturen, darunter x86_64, AMD64, Arm, IBM p-Series und IBM z-Series.

Es wurde von Google Cloud, Microsoft, AWS, Alibaba Cloud, Cisco, Dell, Intel, Red Hat, SUSE und Ubuntu gesponsert.

LangChain

LangChain ist ein modulares Framework, das die Entwicklung sprachmodellgesteuerter Anwendungen vereinfacht. LangChain ermöglicht es Sprachmodellen, eine Verbindung zu Datenquellen herzustellen und mit ihrer Umgebung zu interagieren. LangChain-Komponenten sind Sammlungen modularer Abstraktionen und abstrakter Implementierungen.

LangChain-Standardketten sind strukturierte Kombinationen von Komponenten, die zur Erfüllung spezifischer Aufgaben auf hoher Ebene verwendet werden. Sie können Komponenten verwenden, um bestehende Ketten anzupassen oder neue zu erstellen. LangChain verfügt derzeit über drei Versionen: eine ist die Python-Version, eine ist die TypeScript/JavaScript-Version und eine ist die Go-Version. Derzeit gibt es etwa 160 LangChain-Integrationen.

Geschirr zur Bewertung des Sprachmodells

Wenn ein neues großes Sprachmodell (LLM) veröffentlicht wird, wird es normalerweise evaluiert, um das Modell mit ChatGPT in einem Benchmark zu vergleichen. Viele Unternehmen verwenden möglicherweise lm-eval-harness, um Bewertungsergebnisse zu generieren. lm-eval-harness wurde von EleutherAI, einem verteilten Forschungsinstitut für künstliche Intelligenz, entwickelt und enthält mehr als 200 Benchmarks und ist leicht erweiterbar. Das Tool wurde sogar verwendet, um Mängel in bestehenden Benchmarks zu finden und die offenen LLM-Rankings von Hugging Face zu verbessern.

Lama 2

Llama 2 ist das große Sprachmodell der nächsten Generation von Meta AI. Im Vergleich zu Llama 1 ist das Trainingsdatenvolumen um 40 % gestiegen (2 Billionen Token aus öffentlichen Quellen) und die Kontextlänge hat sich verdoppelt (4096).

Llama 2 ist ein autoregressives Sprachmodell , das eine optimierte Transformer-Architektur verwendet . Die angepasste Version nutzt Supervised Fine-Tuning (SFT) und Reinforcement Learning with Human Feedback (RLHF), um menschliche Präferenzen hinsichtlich Nützlichkeit und Sicherheit anzupassen. Code Llama wird durch die Feinabstimmung von Llama 2 an codespezifischen Datensätzen trainiert und kann Code und natürliche Sprache über Code basierend auf Code oder Eingabeaufforderungen in natürlicher Sprache generieren.

Zu sein

Ollama ist ein Befehlszeilentool, das Llama 2, Code Llama und andere Modelle nativ auf macOS und Linux ausführt, wobei Unterstützung für Windows geplant ist. Ollama unterstützt derzeit fast zwei Dutzend Sprachmodellfamilien, von denen jede über viele verfügbare „Tags“ verfügt. Tags sind Variationen von Modellen, die auf unterschiedlichen Maßstäben mit unterschiedlichen Feinabstimmungsmethoden trainiert und auf unterschiedlichen Ebenen quantisiert werden, um lokal eine gute Leistung zu erzielen. Je höher die Quantisierungsstufe, desto genauer ist das Modell, aber es läuft langsamer und benötigt mehr Speicher.

Polar-

Was Pandas kann, kann Polars nicht unbedingt, aber was es kann, kann es sehr schnell – zehnmal schneller als Pandas und benötigt nur die Hälfte des Speichers von Pandas. Entwickler von PySpark werden feststellen, dass die Polars-API einfacher zu verwenden ist als die in Pandas. Wenn Sie mit großen Datenmengen arbeiten, beschleunigt Polars Ihre Arbeit.

PostgreSQL

PostgreSQL ist 35 Jahre alt, hat mehr als 700 Mitwirkende und hält einen geschätzten Marktanteil von 16,4 % unter relationalen Datenbankverwaltungssystemen. Eine aktuelle Umfrage ergab, dass 45 % von 90.000 Entwicklern PostgreSQL bevorzugten.

PostgreSQL 16, das im September veröffentlicht wurde, verbessert die Leistung beim Aggregieren und Auswählen unterschiedlicher Abfragen, erhöht die Abfrageparallelität, bringt neue I/O-Überwachungsfunktionen und fügt detailliertere Sicherheitszugriffskontrollen hinzu. Ebenfalls im Jahr 2023 fügte Amazon Aurora PostgreSQL pgvector hinzu, um die generative KI-Einbettung zu unterstützen, und Google Cloud veröffentlichte ähnliche Funktionen für AlloyDB PostgreSQL.

QLoRA

QLoRA ist eine von der University of Washington vorgeschlagene effektive Feinabstimmungsmethode, die den Speicherverbrauch so weit reduzieren kann, dass ein 65-B-Parametermodell auf einer einzelnen 48-GB-GPU feinabgestimmt werden kann, während die volle 16-Bit-Feinabstimmungsaufgabenleistung erhalten bleibt. QLoRA überträgt Gradienten über ein eingefrorenes, quantisiertes, vorab trainiertes 4-Bit-Sprachmodell an einen Low-Order-Adapter (LoRA).

Die Verwendung von QLoRA bedeutet, dass Sie ein umfangreiches parametrisches Modell mit mehr als 30 Milliarden auf Ihrem Desktop mit sehr geringem Genauigkeitsverlust im Vergleich zur vollständigen Optimierung auf mehreren GPUs optimieren können. Tatsächlich schneidet QLoRA manchmal sogar noch besser ab. InfoWorld kommentierte: „Inferenz und Schulung auf niedrigem Niveau bedeuten, dass mehr Menschen LLM nutzen können – geht es bei Open Source nicht darum?“

Stromschnellen

RAPIDS ist eine Sammlung GPU-beschleunigter Bibliotheken für allgemeine Datenwissenschafts- und Analyseaufgaben. Jede Bibliothek übernimmt eine bestimmte Aufgabe, z. B. cuDF für die Datenrahmenverarbeitung, cuGraph für die Diagrammanalyse und cuML für maschinelles Lernen.

Andere Bibliotheken decken Bildverarbeitung, Signalverarbeitung und räumliche Analyse ab, während Integrationen RAPIDS für Apache Spark, SQL und andere Workloads bereitstellen. Wenn keine der vorhandenen Bibliotheken für Sie geeignet ist, enthält RAPIDS auch RAFT, eine Sammlung GPU-beschleunigter Grundelemente zum Erstellen eigener Lösungen. RRAPIDS arbeitet auch mit Dask zusammen, um über mehrere Knoten hinweg zu skalieren, und mit Slurm, um in Hochleistungs-Computing-Umgebungen ausgeführt zu werden.

Spark NLP

Spark NLP ist eine Bibliothek zur Verarbeitung natürlicher Sprache, die auf Apache Spark läuft und Python, Scala und Java unterstützt. Diese Bibliothek hilft Entwicklern und Datenwissenschaftlern, mit großen Sprachmodellen zu experimentieren, darunter Transformer-Modelle von Google, Meta, OpenAI und mehr.

Im Model Center von Spark NLP stehen mehr als 20.000 Modelle und Pipelines zum Herunterladen für Sprachübersetzung, Erkennung benannter Entitäten, Textklassifizierung, Beantwortung von Fragen, Stimmungsanalyse und andere Anwendungsfälle zur Verfügung. Im Jahr 2023 veröffentlichte Spark NLP eine Reihe von LLM-Integrationen, einen neuen Bild-zu-Text-Annotator, Unterstützung für alle wichtigen öffentlichen Cloud-Speichersysteme und Unterstützung für ONNX (Open Neural Network Exchange).

StarRocks

Die Analysetechnologie hat sich verändert. Heutige Unternehmen müssen komplexe Daten häufig in Echtzeit für Millionen gleichzeitiger Benutzer bereitstellen, und selbst Abfragen im Petabyte-Bereich müssen innerhalb von Sekunden abgeschlossen sein. StarRocks ist eine Abfrage-Engine, die nativen Code (C++), einen effizienten kostenbasierten Optimierer, Vektorverarbeitung mithilfe des SIMD-Befehlssatzes, Caching und materialisierte Ansichten kombiniert, um umfangreiche Joins effizient zu verarbeiten.

StarRocks kann sogar eine nahezu native Leistung bieten, wenn Data Lakes und Lake Warehouses, einschließlich Apache Hudi und Apache Iceberg, direkt abgefragt werden. InfoWorld ist davon überzeugt, dass StarRocks einen Versuch wert ist, egal ob Sie Echtzeitanalysen durchführen, kundenorientierte Analysedienste bereitstellen oder einfach nur einen Data Lake abfragen möchten, ohne die Daten zu verschieben.

TensorFlow.js

TensorFlow.js bündelt die leistungsstarken Funktionen des TensorFlow-Frameworks für maschinelles Lernen von Google in einem JavaScript-Paket und bietet JavaScript-Entwicklern außergewöhnliche Funktionalität bei geringsten Lernkosten. Sie können TensorFlow.js im Browser, einen reinen JavaScript-Stack mit WebGL-Beschleunigung oder die tfjs-node-Bibliothek auf dem Server ausführen. Die Node-Bibliothek bietet Ihnen die gleiche JavaScript-API, läuft jedoch auf C-Binärdateien, um Geschwindigkeit und CPU-/GPU-Auslastung zu maximieren.

„TensorFlow.js ist eindeutig eine gute Wahl für JS-Entwickler, die sich für maschinelles Lernen interessieren. Es leistet einen willkommenen Beitrag zum JS-Ökosystem und macht künstliche Intelligenz für Entwickler zugänglicher.“

vLLM

Die Eile, große Sprachmodelle in der Produktion einzusetzen, hat zur Entstehung einer großen Anzahl von Frameworks geführt, die sich darauf konzentrieren, so schnell wie möglich Inferenzen durchzuführen. vLLM ist eines der vielversprechendsten Frameworks, das das Hugging Face-Modell, die OpenAI-kompatible API und den PagedAttention-Algorithmus unterstützt.

Es ist jetzt die offensichtliche Wahl für die Bereitstellung von LLMs in der Produktion, und neue Funktionen wie die Unterstützung von FlashAttention 2 werden schnell hinzugefügt.

Weben

Der Boom der generativen KI hat den Bedarf an neuen Arten von Datenbanken erhöht, die riesige Mengen komplexer unstrukturierter Daten unterstützen können. Es entstanden Vektordatenbanken.

Weaviate bietet Entwicklern viel Flexibilität in Bezug auf Bereitstellungsmodelle, Ökosystemintegration und Datenschutz. Weaviate kombiniert die Schlüsselwortsuche mit der Vektorsuche für eine schnelle, skalierbare Entdeckung multimodaler Daten (Text, Bilder, Audio, Video). Es verfügt außerdem über sofort einsatzbereite Module für Retrieval Augmented Generation (RAG), die Chatbots und anderen generativen KI-Anwendungen domänenspezifische Daten bereitstellen und sie so nützlicher machen.

Zig

Laut InfoWorld ist Zig heute möglicherweise das wichtigste aller Open-Source-Projekte.

Zig ist bestrebt, eine universelle Programmiersprache mit Speichersteuerung auf Programmebene zu entwickeln, die eine bessere Leistung als C bietet und gleichzeitig eine leistungsfähigere, weniger fehleranfällige Syntax bietet. Ihr Ziel ist es, die C-Sprache zu ersetzen und zur Benchmark-Sprache im Programmier-Ökosystem zu werden. Da die Sprache C allgegenwärtig ist (dh die häufigste Komponente in Systemen und Geräten), könnte der Erfolg von Zig weitreichende Verbesserungen bei Leistung und Stabilität bedeuten.

„Darauf sollten wir uns alle freuen. Außerdem ist Zig ein gutes, altmodisches Basisprojekt mit großem Ehrgeiz und einem Open-Source-Geist.“


Oben sind die Projekte der InfoWorld Bossie Awards 2023 aufgeführt. Ausführliche Informationen wie spezifische Auswahlkommentare für jedes Projekt finden Sie im Originaltext der Website .

Je suppose que tu aimes

Origine www.oschina.net/news/263384/2023-infoworld-bossie-awards
conseillé
Classement