- Hochleistungsfähige einbettbare Python-3-Laufzeit für Java
- Python-Pakete können direkt aus Java geladen und verwendet werden
- Kompatibel mit aktuellen Python-Paketen für KI und Data Science
- Python kann über den Graal-JIT-Compiler mit nativer Codegeschwindigkeit ausgeführt werden
- Bietet einen Upgrade-Pfad für Jython-Nutzer
- Python-Skripte können in Java verwendet werden, um mit Java-Klassen und Frameworks zu interagieren
- Python-Anwendungen können mit GraalVM Native Image als einzelne Binärdatei paketiert werden
Zusammenfassung von GN⁺
- GraalPy bietet eine Laufzeit, mit der Python in Java mit hoher Performance ausgeführt werden kann
- Für Jython-Nutzer bietet es einen Upgrade-Pfad, um moderne Python-Funktionen zu verwenden
- Über die Polyglot-Schnittstelle von GraalVM lassen sich Python-Data-Science-Bibliotheken leicht in Java-Anwendungen integrieren
- Es erhöht die Interoperabilität zwischen Python und Java und bietet Entwicklern mehr Flexibilität
- Projekte mit ähnlichen Funktionen sind unter anderem Jython und Py4J
3 Kommentare
Hacker-News-Kommentare
Es werden Benchmark-Ergebnisse geteilt, die GraalPy mit JDK8 vergleichen
Es wurde versucht, ein großes Projekt mit GraalVM auszuführen, dabei traten jedoch einige Probleme auf
uvläuft nicht, und imos-Paket fehlenforkundexecveEs wird die Meinung geäußert, dass GraalVM für Programme mit Spark nützlich wäre, wenn es Java- (oder Scala-)Funktionen direkt ohne Bridge aufrufen könnte
Das Interessante an Python ist die Integration mit ML-Toolchains, CUDA, Metal/MLX, pytorch, tensorflow, LLM-Encodern/Decodern usw.
In Clojure gibt es bereits ein Beispiel für eine Java/Python-Integration
DuckDB wird derzeit nicht unterstützt, aber Pandas und matplotlib werden unterstützt
Es wurde festgestellt, dass GraalPy auf Python 3.11 abzielt
Es werden Fragen zu den Anwendungsfällen von GraalPy aufgeworfen
Frage, ob GraalPy nur auf GraalVM laufen muss oder auch auf anderen JVM-Implementierungen möglich ist
Das Projekt, an dem ich gerade arbeite, ist ein völlig absurdes Projekt: Etwas, das mit Python
numpyundpandasimplementiert wurde, soll in Java umgesetzt werden. Also bauen wir gerade alles von Grund auf neu. Völlig unsinnig. Wennpandasundnumpyin GraalPy ordentlich unterstützt würden, müsste man diese sinnlose Arbeit vielleicht nicht machen. Allerdings gibt es in der Windows-Umgebung eine Abhängigkeit von Visual Studio. Wegen der C++-Kompilierumgebung. Und die Idee ist zwar wirklich gut und nützlich, aber ich frage mich auch ein wenig, wie man dieses riesige Ökosystem ohne Fehlschläge vollständig umsetzen will. Ich mache mir etwas Sorgen. Und ich habe auch Zweifel, ob es am Ende stabil genug sein wird, um es vertrauensvoll produktiv einzusetzen. Wenn das alles klappt, wäre das natürlich großartig.Bei näherer Betrachtung habe ich wohl einen Teil falsch verstanden. Die Abhängigkeiten von gcc oder VS sind offenbar nur erforderlich, wenn man
native imageverwendet.