Chain.jl
Transformers.jl
Chain.jl | Transformers.jl | |
---|---|---|
8 | 7 | |
348 | 504 | |
- | - | |
4.2 | 6.9 | |
2 months ago | 3 months ago | |
Julia | Julia | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Chain.jl
-
Pains of Julia compared to python
The [Chain.jl package](https://github.com/jkrumbiegel/Chain.jl) is becoming idiomatic for these kind of pipelines.
-
Transition from R Tidyverse to Julia (VS Code)
If you do have tabular data in a dataframe you have a few options for data manipulation, the most popular packages are probably DataFramesMeta and Query, although in my opinion the best way to manipulate dataframes is with the functions built in to DataFrames.jl and using a package like Chain.jl or Pipe.jl to pipe the functions into each other like magrittr in R.
-
The (updated) history of the pipe operator in R
The Julia community built a better piping method than any other language has AFAIK: Chain.jl.
-
What are some of your favourite macros?
@chain and @match.
-
Why is piping so well-accepted in the R community compared to those in Julia and Python?
Have you ever tried Infiltrator.jl and Chain.jl?
-
https://np.reddit.com/r/Julia/comments/nnu6if/julia_object_oriented_programming_with_dot/h0anaru/
You are right. However, sometimes well used is very useful, and readable. One suggestion, in Julia I suggest Chain.jl, because it allows intercalate easily the output for debugging:
-
Julia Update: Adoption Keeps Climbing; Is It a Python Challenger?
I also like pipe syntax and I've found there is nice support for it in Julia. There are some nice packages to improve it over base [1].
Have you checked queryverse [2]?
[1] https://github.com/jkrumbiegel/Chain.jl
Transformers.jl
-
Julia 1.10 Released
Flux is quite a nice lower level library:
https://github.com/FluxML/Flux.jl
On top of that there are many higher level libraries such as Transformers.jl
https://github.com/chengchingwen/Transformers.jl
- How is Julia Performance with GPUs (for LLMs)?
-
Load a transformer model with julia
Check out Transformers.jl. It’s a library that implements transformer based models in Julia using Flux.jl. They have support for some of the huggingface transformers.
-
Ask HN: Why hasn't the Deep Learning community embraced Julia yet?
https://github.com/chengchingwen/Transformers.jl but I have not had any personal experience with.
All of this is build by the community and your mileage may vary.
In my rather biased opinion the strengths of Julia are that the various ML libraries can share implementations, e.g. Pytorch and Tensorflow contain separate Numpy derivatives. One could say that you can write an ML framework in Julia, instead of writting a DSL in Python as part of your C++ ML library. As an example Julia has a GPU compiler so you can write your own layer directly in Julia and integrate it into your pipeline.
-
Help on Differentiable Programming
I think you might have some luck with looking at a transformers implementation in flux, e.g: https://github.com/chengchingwen/Transformers.jl/tree/master/src/basic
-
Fastai.jl: Fastai for Julia
Having tried fastai for a "serious" research project and helped (just a bit) towards FastAI.jl development, here's my take:
> motivation behind this is unclear.
Julia currently has two main DL libraries. Flux, which is somewhere between PyTorch and (tf.)Keras abstraction wise, and Knet, which is a little lower level (think just below PyTorch/around where MXNet Gluon sits). Frameworks like fastai, PyTorch Lightning and Keras demonstrate that there's a desire for higher-level, more batteries included libraries. FastAI.jl is looking to fill that gap in Julia.
> Since FastAI.jl uses Flux, and not PyTorch, functionality has to be reimplemented. FastAI.jl has vision support but no text support yet.
This is correct. That said, FastAI.jl is not and does not plan to be a copy of the Python API (hence "inspired by"). One consequence of this is that integration with other libraries is much easier, e.g. https://github.com/chengchingwen/Transformers.jl for NLP tasks.
> What is the timeline for FastAI.jl to achieve parity?
-
Julia Update: Adoption Keeps Climbing; Is It a Python Challenger?
If NLP primitives are all that's keeping you from testing the waters, have a look at https://github.com/chengchingwen/Transformers.jl.
What are some alternatives?
Pipe.jl - An enhancement to julia piping syntax
Flux.jl - Relax! Flux is the ML library that doesn't make you tensor
Genie.jl - 🧞The highly productive Julia web framework
PackageCompiler.jl - Compile your Julia Package
Revise.jl - Automatically update function definitions in a running Julia session
model-zoo - Please do not feed the models
JLD2.jl - HDF5-compatible file format in pure Julia
DataLoaders.jl - A parallel iterator for large machine learning datasets that don't fit into memory inspired by PyTorch's `DataLoader` class.
PaddedViews.jl - Add virtual padding to the edges of an array
StatsPlots.jl - Statistical plotting recipes for Plots.jl
Infiltrator.jl - No-overhead breakpoints in Julia
org-mode - This is a MIRROR only, do not send PR.