Wątek przeniesiony 2020-03-21 03:02 z Nietuzinkowe tematy przez somekind.

Czy tak się robi w środowisku programistycznym?

Odpowiedz Nowy wątek
2020-03-20 13:25

Rejestracja: 9 miesięcy temu

Ostatnio: 1 tydzień temu

0

Witam,
Chciałbym stworzyć aplikację wykorzystująca Java (Spring) oraz Sztuczna inteligencję.
Do sztucznej inteligencji chciałbym wykorzystać Pythona z biblioteką Tensorflow.

Czy w świecie IT łączy się dwa różnie języki?
Czy ma to sens?
Jak TAK
To w jaki prosty sposób to zrobi?

Pozostało 580 znaków

2020-03-20 13:39

Rejestracja: 7 miesięcy temu

Ostatnio: 10 godzin temu

2

Najpierw powinieneś poznać wiele tooli i robić w tych toolach to do czego zostały stworzone. Później mając problem powinieneś dobrać do problemu toole, nie odwrotnie.

Jeżeli ktoś ma młotek to wszędzie widzi gwoździe.

Pozostało 580 znaków

2020-03-20 14:34

Rejestracja: 3 lata temu

Ostatnio: 7 godzin temu

0

To niedorzeczne, jak dla mnie, ale rozumiem, Znasz Javę + Spring do backendu i tensorflow do sieci. Możesz poszukać, są rózne sposoby "deployowania" modeli, np.:
https://course.fast.ai/
Sekcja: Production.


edytowany 1x, ostatnio: lion137, 2020-03-20 14:34

Pozostało 580 znaków

2020-03-20 14:41

Rejestracja: 1 rok temu

Ostatnio: 18 minut temu

Lokalizacja: Silesia

5

Ja bym zadał sobie pytania:

  • Po co mi ten Spring? Czy to co chce zrobić w Javie nie można zrobić w Pythonie - czyli całą aplikację zrobić w Pythonie (sam nie wierzę że to mówię, jestem przeciwnikiem języków dynamicznie typowanych, no chyba ze to Scheme/Racket)
  • Czy Tensorflow nie ma Javowego api? Może wtedy całą aplikację da się zrobić w Javie?

Jeśli naprawdę chcesz użyć dwóch języków języków to są (co najmniej) dwie drogi:

  • Zbudować dwie niezależne aplikacje/mikroserwisy i Java będzie wywoływać (np. przez Resta) Pythona
  • Spróbować skompilować wszystko razem za pomocą GraalVM. Teoretycznie jednym z feature Graala jest to że można połączyć Javę i Pythona. Niestety na razie Spring (podobno) nie działa na Graalu. Więc wracamy do punktu Po co Ci ten Spring

edytowany 2x, ostatnio: KamilAdam, 2020-03-20 14:44
2020-03-20 14:43

Rejestracja: 1 rok temu

Ostatnio: 9 minut temu

0

To chcesz stworzyć aplikację wykorzystujące te technologie czy rozwiązująca jakiś problem? Jak to drugie to npaisz, jaki to problem wówczas można cos doradzać.

Pozostało 580 znaków

2020-03-20 15:13

Rejestracja: 6 lat temu

Ostatnio: 10 godzin temu

0

Nie wiem, jak się robi, ale jak próbowałem użyć czegoś w Pythonie do Machine Learning, to musiałem instalować oprócz bibliotek pythonowskich kompilator Fortrana, bo jakaś biblioteka tego używała.


((0b10*0b11*(0b10**0b101-0b10)**0b10+0b110)**0b10+(100-1)**0b10+0x10-1).toString(0b10**0b101+0b100);
edytowany 1x, ostatnio: LukeJL, 2020-03-20 15:14

Pozostało 580 znaków

2020-03-20 15:50

Rejestracja: 9 miesięcy temu

Ostatnio: 1 tydzień temu

0
Tomek Pycia napisał(a):

To chcesz stworzyć aplikację wykorzystujące te technologie czy rozwiązująca jakiś problem? Jak to drugie to npaisz, jaki to problem wówczas można cos doradzać.

Stworzenie aplikacji wykorzystującą obie technologie.

To co napisał @Kamil Żabiński jest najlepszym rozwiązaniem. - Tomek Pycia 2020-03-20 15:51

Pozostało 580 znaków

2020-03-20 18:17

Rejestracja: 1 rok temu

Ostatnio: 2 godziny temu

0

Powszechnym jest łączenie języków w projekcie. Mozna to robic w osobnych aplikacjach - baza to SQL, backend to Java a front JS. Można łączyć w ramach bibliotek - OpenCV to C++ a wykorzystuje się jego funkcje w Pythonie przez DLL. Można tez bezpośrednio w rakach języka - ja utrzymuje jeden system gdzie połowa hierarchii klas jest w Delphi a po nich dziedziczą klasy C++ No i w C++ mogę powoływać obiekty Delphi natywnie. Tylko wszystko ma swój cel wiec opisz dlaczego chcesz łączyć springa z pythonem bo to mi wyglada na XY problem.

Pozostało 580 znaków

2020-03-21 01:50
Moderator

Rejestracja: 16 lat temu

Ostatnio: 12 godzin temu

1
  1. Da się, są takie cuda jak jython czy https://github.com/kivy/pyjnius pytanie czy warto?
  2. W praktyce lepiej zrobić sobie dwa osobne serwisy, ten Pythonowy z ML i z jakimś flaskiem żeby wystawić RESTa a ten Springowy jako jakiś "frontend" do tego. Czyli realnie robisz dwie aplikacje które się ze sobą komunikują.

Masz problem? Pisz na forum, nie do mnie. Nie masz problemów? Kup komputer...

Pozostało 580 znaków

2020-03-21 03:03
Moderator

Rejestracja: 12 lat temu

Ostatnio: 6 godzin temu

Lokalizacja: Wrocław

3

Oczywiście, że tak się robi. Kiedyś np. połączono język Java z językiem Script i powstał JavaScript.
Ale sensu to nie miało.


"HUMAN BEINGS MAKE LIFE SO INTERESTING. DO YOU KNOW, THAT IN A UNIVERSE SO FULL OF WONDERS, THEY HAVE MANAGED TO INVENT BOREDOM."
Pokaż pozostałe 3 komentarze
No z tego, co mi się kojarzy, to MS to kupił po jakimś czasie. - somekind 2020-03-21 18:13
@somekind: źle się panu kojarzy, to dzieło Andersa Hejlsberga - boska_cebula 2020-03-21 18:24
Ok, w takim razie z czymś mi się pomyliło. - somekind 2020-03-21 19:27
@somekind: właśnie po tym jak Anders przeszedł do projektu TS, rozwój C# już nie był taki przemyślany :-) - Aryman1983 2020-03-21 19:45

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0