https://github.com/surrealdb/surrealml is the current rust repo for ML aspects to do with Surreal and what I presume is the Vector based DB aspects provided by Surreal DB.
ML ( machine learning ) as distinct from DL ( deep learning ) is very possible with golang, and the SurrealML team seems to have decided to focus on developers embracing scikit-learn as the developer framework for any ML projects.
Thankfully there are golang implementations of scikit-learn at decent levels of maturity.
There are some advantages of a golang implementation that come to mind:
Deploying machine learning at the edge is way harder with python because it needs python under it, where as golang needs nothing under it.
Putting python into production, in general, is much harder because of the many dependencies required, where as golang is much easier to manage, version and upgrade IMHO.
Golang has a huge set of ancillary packages for language and image transformation also, many of them without any CGO and decent runtime performance.
Also, I do not know if the surrealDB golang driver provides enough API coverage to reach into surreal ML API yet. Would be very useful to know this if anyone can comment ?
Alternative methods
none
SurrealDB version
latest
Contact Details
gedw99@gmail.com
Is there an existing issue for this?
[X] I have searched the existing issues
Code of Conduct
[X] I agree to follow this project's Code of Conduct
Is your feature request related to a problem?
https://github.com/surrealdb/surrealml is the current rust repo for ML aspects to do with Surreal and what I presume is the Vector based DB aspects provided by Surreal DB.
ML ( machine learning ) as distinct from DL ( deep learning ) is very possible with golang, and the SurrealML team seems to have decided to focus on developers embracing scikit-learn as the developer framework for any ML projects.
https://surrealdb.com/blog/what-is-surrealml-a-getting-started-guide explained the basis for training is scikit-learn
Thankfully there are golang implementations of scikit-learn at decent levels of maturity.
There are some advantages of a golang implementation that come to mind:
Deploying machine learning at the edge is way harder with python because it needs python under it, where as golang needs nothing under it.
Putting python into production, in general, is much harder because of the many dependencies required, where as golang is much easier to manage, version and upgrade IMHO.
Golang has a huge set of ancillary packages for language and image transformation also, many of them without any CGO and decent runtime performance.
Describe the solution
https://github.com/ksaid39/sklearn has most of what is needed from what I can see. Its a fork of https://github.com/pa-m/sklearn.
There are many golang projects using this btw. See https://github.com/pa-m/sklearn/network/dependents?dependent_type=PACKAGE
sklearn is a thin layer on top of gonum.org/v1/gonum, which is a widely used and supported golang package for ML.
https://github.com/mattn/go-sklearn-example is a decent basis of base examples.
Also, I do not know if the surrealDB golang driver provides enough API coverage to reach into surreal ML API yet. Would be very useful to know this if anyone can comment ?
Alternative methods
none
SurrealDB version
latest
Contact Details
gedw99@gmail.com
Is there an existing issue for this?
Code of Conduct