From 2006f585e1a04c9c43ab44acef375a3208ac9d80 Mon Sep 17 00:00:00 2001 From: Jeff McFadden Date: Fri, 14 Feb 2025 16:10:16 -0700 Subject: [PATCH] Update ruby.md documentation Fix typo, add example for users of ActiveRecord --- site/using/ruby.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/site/using/ruby.md b/site/using/ruby.md index 4c6b7c0e..58aa622d 100644 --- a/site/using/ruby.md +++ b/site/using/ruby.md @@ -35,6 +35,11 @@ If your embeddings are provided as a list of numbers, use `.pack("f*")` to conve ```ruby embedding = [0.1, 0.2, 0.3, 0.4] -result = db.execute("SELECT vec_length(?)", [query.pack("f*")]]) +result = db.execute("SELECT vec_length(?)", [query.pack("f*")]) puts result.first.first # 4 + +# Or, if using Active Record: +embedding_blob = embedding.pack("f*").unpack1('H*') # Hex string representation +result = ActiveRecord::Base.connection.execute("SELECT vec_length(x'#{embedding_blob}')") +result.first.first.last ```