| Package | Primary Use | Real‑Time Features | Typical Use‑Case | |---------|-------------|--------------------|-----------------| | | High‑level NN definition, training, inference | GPU/CPU transparent; works with CUDA.jl ; easy to embed in HTTP.jl servers | Prototyping, research, production APIs | | Knet.jl | Low‑level, performance‑tuned training loops | Supports asynchronous data pipelines via DataLoaders.jl | Large‑scale training, custom back‑prop | | CUDA.jl | Direct GPU kernel programming | Allows explicit stream management for overlapping data transfer & compute | Ultra‑low‑latency inference | | ONNX.jl | Model interchange | Import/export models from PyTorch/TensorFlow for deployment | Deploying pre‑trained models | | MLJ.jl | Model selection & evaluation | Wraps any Flux/Knet model as an MLJ model, enabling pipelines with MLJFlux | Automated experimentation | | HTTP.jl + Genie.jl | Web server framework | WebSockets support for bi‑directional live data streams | Real‑time web dashboards, chat‑bots | | Revise.jl | Hot‑reloading of code | No server restarts required when tweaking layers | Rapid prototyping in live demos | | Distributed.jl | Multi‑process parallelism | Enables model parallelism across nodes for high‑throughput streams | Large‑scale inference farms |
using Flux, CUDA, JSON, WebSockets, HTTP, Revise julia ann live com
# ---------------------------------------------------- # 1. Define a simple model (GPU‑aware) # ---------------------------------------------------- model = Chain( Dense(128, 64, relu), Dense(64, 10), # 10‑class output ) |> gpu # move parameters to the GPU | Package | Primary Use | Real‑Time Features