diff --git a/src/backend/backend.jl b/src/backend/backend.jl index ec64cc23..6f8f9d33 100644 --- a/src/backend/backend.jl +++ b/src/backend/backend.jl @@ -1,5 +1,14 @@ export tf, mxnet +# We use a lazy-loading trick to load the backend code as needed; this avoids +# the need for a hard dependency on both backends. + +# This is effectively equivalent to: +# include("tensorflow/tensorflow.jl") +# using .TF +# export tf +# but instead of loading immediately, we wait until `tf` is first called. + function loadtf() isdefined(Flux, :TF) && return @eval include(joinpath(dirname($@__FILE__), "tensorflow/tensorflow.jl"))