diff --git a/src/DerekoVecs.jl b/src/DerekoVecs.jl
index e368413..b31eb2d 100644
--- a/src/DerekoVecs.jl
+++ b/src/DerekoVecs.jl
@@ -97,6 +97,34 @@
     if (occursin(r".vecs$", modelfn) && isfile(vecsfn))
         M = Mmap.mmap(vecsfn, Matrix{Float32}, (d, n))
         d2vmodel(M, d, n, vocabdict, vocab, freqs, total, cdb, modelfn, basefn)
+    elseif (occursin(r".vecs$", modelfn) && isfile(modelfn))
+        M = Matrix{Float32}(undef, d, n)
+        open(modelfn) do io
+            readline(io) # skip header
+            float_buf = Vector{Float32}(undef, d)
+            for i in 1:n
+                # Skip word
+                while true
+                    b = read(io, UInt8)
+                    if b == UInt8(' ')
+                        break
+                    end
+                end
+                # Read floats
+                read!(io, float_buf)
+                nrm = norm(float_buf)
+                if nrm > 0
+                    float_buf ./= nrm
+                end
+                M[:, i] .= float_buf
+                # Skip trailing newline if present
+                b = peek(io)
+                if b == UInt8('\n')
+                    read(io, UInt8)
+                end
+            end
+        end
+        d2vmodel(M, d, n, vocabdict, vocab, freqs, total, cdb, modelfn, basefn)
     else
         d2vmodel(Matrix{Float32}(undef, 2, 0), 0, n, vocabdict, vocab, freqs, total, cdb, modelfn, basefn)
     end
