This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-09-15
Channels
- # ai (35)
- # announcements (3)
- # babashka (16)
- # babashka-sci-dev (2)
- # beginners (37)
- # biff (16)
- # calva (5)
- # cider (2)
- # clj-commons (81)
- # clj-kondo (29)
- # cljfx (2)
- # cljs-dev (4)
- # clojars (4)
- # clojure (92)
- # clojure-europe (72)
- # clojure-losangeles (8)
- # clojure-nl (1)
- # clojure-norway (10)
- # clojure-uk (1)
- # clojurescript (20)
- # clojutre (2)
- # conjure (2)
- # data-science (18)
- # datomic (1)
- # emacs (10)
- # fulcro (49)
- # joyride (1)
- # kaocha (23)
- # leiningen (8)
- # lsp (14)
- # meander (5)
- # off-topic (93)
- # polylith (4)
- # re-frame (20)
- # reagent (9)
- # reitit (2)
- # remote-jobs (8)
- # sci (1)
- # shadow-cljs (21)
- # testing (3)
- # vim (27)
- # xtdb (35)
@danieltanfh95 Do you use Python as interop in Clojure or do you run Python scripts independent to calculate model?
Can you precise exact experience with deeplearning4j which make you to decide to use Python instead deeplearning4j ?
python interop with libpython
Deeplearning4j does work with Clojure - not all versions though. Certainly start off with an empty project first. You need to add the appropriate deeplearning4j depdendencies according to your platform (e.g. x86/arm etc). Both deeplearning4j and python interop have strengths in different areas depending on the usecase. Libpython interop works well and is fun - you still get to write clojure!
Deeplearning4j is written in Java, and Java interop is working perfectly in Clojure. So by definition all Java libraries work in Clojure the same as in Java, independent of the version.
All in all I understand you recommend to use Python instead of Deeplearning4j. It would be great to hear precise example why 🙂
I've used DL4J from Clojure and it's fine so long as you have CUDA & cuDNN installed
Docs and libraries are better in python land, I can use most hugging face models etc, it's alot easier to be productive. It doesnt help that data scientists dont usually document or code in a structured way.
oh yes. I have to use python libraries from libpython-clj for most ML work
ah so I have to use Python 🙂 just I don’t feel comfortable with Python tools and they documentations. It takes me a lot of time to figure out how things work and eve then I am not 100% sure I use them as intended.
Is there a way to make Intellij give me hints when I am typing for Python using libpython-clj?
use python-type
for now
im not sure if its a python issue tho, DL libraries are just hard to use kek, tho im also looking into dl especially for vision
You mean code completion, @kwladyka ?
which does have vision
I guess you're saying it doesn't? Are you using require-python
to do your imports?
actualy cursive does give you hints
not sure why it doesnt trigger for you
I set it up so code completion works for emacs, i thought I remembered it working for IntelliJ as well as long as you use require-python
to import your python code
If it doesn't We'll make an issue for it
sure. Intellij build list completion in static way while emasc dynamic. I will let you know.
so far code completion doesn’t work for me in Intellij / Cursive but I expected this.
@kwladyka I would encourage you to make an issue for it: https://github.com/clj-python/libpython-clj/issues
libpython-clj is supposed to be a fun REPL experience
I don’t think it can be done in libpython-clj, it is more job for Curisve. But I will confirm it later. This is not the first time when I experience it. In general all scicloj
doesn’t work with auto completion code.
Clojure has some feature which allow a very dynamic manipulation of namespaces. Cursive code completion is based on static code analysis, which is incompatible with this (wide spread use) of dynamic namespaces. Overall a dynamic language such as Clojure can never have a perfectly working code completion.