As someone who moved from Python to Clojure (professionally) a year ago, this is quite exciting. The Python ecosystem is so vast (and better in quality than the JS one ime), that this opens up a lot of new avenues in the Clojure world.
A bit off-topic: but PyTorch’s libtorch seems to have a nice API that can be supported relatively easily in other languages. E.g. I have used the tch-rs binding to port Hugging Face’s BERT model to Rust:
This was done pretty quickly (the commit dates are not representative, I split up the commits for code review), thanks to: 1.) PyTorch has a great, very usable API, even outside Python; 2.) the tch-rs binding; 3.) transformer models (as used by BERT) are pretty simple.
As someone who moved from Python to Clojure (professionally) a year ago, this is quite exciting. The Python ecosystem is so vast (and better in quality than the JS one ime), that this opens up a lot of new avenues in the Clojure world.
Clojure <-> Python interop looks really nice!
A bit off-topic: but PyTorch’s libtorch seems to have a nice API that can be supported relatively easily in other languages. E.g. I have used the tch-rs binding to port Hugging Face’s BERT model to Rust:
https://github.com/stickeritis/sticker-transformers/blob/master/src/bert_model.rs
This was done pretty quickly (the commit dates are not representative, I split up the commits for code review), thanks to: 1.) PyTorch has a great, very usable API, even outside Python; 2.) the
tch-rs
binding; 3.) transformer models (as used by BERT) are pretty simple.