-
For Go specifically, there are some libraries like Gorgonia (https://github.com/gorgonia/gorgonia) that can do inference.
Practically speaking though, the rate at which models change is so fast that if you opt to go this route, you'll perpetually be lagging behind the state of the art by just a bit. Either you'll be the one implementing the latest improvements or be waiting for the framework to catch up. This is the real value of the sidecar approach: when a new technique comes out (like speculative decoding, for example) you don't need to reimplement it in Go but instead can use the implementation that most other python users will use.
-
InfluxDB
InfluxDB high-performance time series database. Collect, organize, and act on massive volumes of high-resolution data to power real-time intelligent systems.
-
Perhaps check out GoMLX ("an Accelerated ML and Math Framework", there's a lot of scaffolding and it JITs to various backends. Related to that project, I sometimes use GoNB in VSCode, which is Golang notebooks [2].
[1] https://github.com/gomlx/gomlx
[2] https://github.com/janpfeifer/gonb
-
Perhaps check out GoMLX ("an Accelerated ML and Math Framework", there's a lot of scaffolding and it JITs to various backends. Related to that project, I sometimes use GoNB in VSCode, which is Golang notebooks [2].
[1] https://github.com/gomlx/gomlx
[2] https://github.com/janpfeifer/gonb
-
I wrote https://github.com/aunum/gold as an attempt to try ML with Go.
I came to the opinion that it’s just not worth it. This isn’t what Go was designed for and it will likely never be a good language to interface with ML.
The Go to C FFI is too slow for native Cuda ops and Go doesn’t have a good bridge to Python.
Rust is a much much better option in these scenarios
-
Last week I started this OllamaTea [1] BubbleTea component library which tries to leverage this idea of an Ollama sidecar.
I've really appreciated Ollama as a simple local inferencing service. I'll now sometimes ask Ollama something using its CLI, rather than going to a URL bar. Once Llama 3.2 Vision became available on Ollama this month [2], I got excited to try them with visual UI elements. I've also wanted to explore some kid-friendly TUIs, which need to be cheap and private.
OllamaTea is not intended to be a full-feature Chat program, but rather as scaffolding for adding Ollama to custom TUI apps.
Once I had the base OllamaTea library, I was able write the POC that inspired the whole thing.; I made a TUI that plots a terminal chart of some market data, converts that to an image, then prompts Ollama about it. Easy to achieve once all the pieces were in place. [3]
The direct Ollama Golang API [4] is very easy to use. OllamaTea just makes it easier to make TUIs. While most of the research action is in Python, I think there's room for ML applications/services/orchestrators written in Golang and working with the Ollama API surface [5].
[1] https://github.com/nimblemarkets/ollamatea
[2] https://ollama.com/blog/llama3.2-vision
[3] https://github.com/NimbleMarkets/ollamatea/blob/main/cmd/ot-...
[4] https://pkg.go.dev/github.com/ollama/ollama/api
[5] https://github.com/ollama/ollama/blob/main/docs/api.md
-
ollama
Get up and running with Llama 3.3, DeepSeek-R1, Phi-4, Gemma 3, Mistral Small 3.1 and other large language models.
Last week I started this OllamaTea [1] BubbleTea component library which tries to leverage this idea of an Ollama sidecar.
I've really appreciated Ollama as a simple local inferencing service. I'll now sometimes ask Ollama something using its CLI, rather than going to a URL bar. Once Llama 3.2 Vision became available on Ollama this month [2], I got excited to try them with visual UI elements. I've also wanted to explore some kid-friendly TUIs, which need to be cheap and private.
OllamaTea is not intended to be a full-feature Chat program, but rather as scaffolding for adding Ollama to custom TUI apps.
Once I had the base OllamaTea library, I was able write the POC that inspired the whole thing.; I made a TUI that plots a terminal chart of some market data, converts that to an image, then prompts Ollama about it. Easy to achieve once all the pieces were in place. [3]
The direct Ollama Golang API [4] is very easy to use. OllamaTea just makes it easier to make TUIs. While most of the research action is in Python, I think there's room for ML applications/services/orchestrators written in Golang and working with the Ollama API surface [5].
[1] https://github.com/nimblemarkets/ollamatea
[2] https://ollama.com/blog/llama3.2-vision
[3] https://github.com/NimbleMarkets/ollamatea/blob/main/cmd/ot-...
[4] https://pkg.go.dev/github.com/ollama/ollama/api
[5] https://github.com/ollama/ollama/blob/main/docs/api.md