mbarchfe

mbarchfe

Vector Search with JavaScript: couchbaseQuery is always the empty string (page 181)

Hi @hummusonrails,

I have created a capella account version 7.6.6.

I have started the server with current main branch.

When running the following query

 curl http://localhost:4000/api/search -X POST \
   -H "Content-Type: application/json" \
   -H "Accept: application/json" \
   -d '{"query":"your search text here"}'

then the couchbaseQuery text generated from build() returns an empty string.

Digging into it, the query is missing a queryType and therefore the build does not perform any building but returns the empty string.

Any idea why this happens?
Thanks
Markus

First Post!

hummusonrails

hummusonrails

Author of Vector Search with JavaScript

Hey there,

In the original flow in the sample application in the repo, /api/search was wired to the Ottoman query builder example, which generates SQL++ and not vector or full-text queries. Without a queryType, .build() just returns an empty string, that’s expected for that path.

I updated the repository example to be more straightforward going forward though. The updated flow now routes /api/search through the performSearch service. This is the part of the repo that uses the Couchbase SDK’s scope.search() API with a VectorSearch request, which is the intended way to run vector searches in this sample.

For it to return meaningful results, you’ll still need:

  • Documents in your Capella bucket/scope with an embedding array field
  • A Capella Vector Search index on that field

This sample is meant to illustrate how vector search fits into an app’s flow, not to be a complete production setup. If you want to take it further, the Couchbase docs walk through the full Capella + Node.js SDK setup:

With the current controller in place, once your index and embeddings are ready, /api/search will execute a proper vector search against Capella and return ranked results.

All the best,

Ben

Where Next?

Popular Pragmatic Bookshelf topics Top

New
lirux
Hi Jamis, I think there’s an issue with a test on chapter 6. I own the ebook, version P1.0 Feb. 2019. This test doesn’t pass for me: ...
New
gilesdotcodes
In case this helps anyone, I’ve had issues setting up the rails source code. Here were the solutions: In Gemfile, change gem 'rails' t...
New
brunogirin
When installing Cards as an editable package, I get the following error: ERROR: File “setup.py” not found. Directory cannot be installe...
New
oaklandgit
Hi, I completed chapter 6 but am getting the following error when running: thread 'main' panicked at 'Failed to load texture: IoError(O...
New
adamwoolhether
Is there any place where we can discuss the solutions to some of the exercises? I can figure most of them out, but am having trouble with...
New
taguniversalmachine
Hi, I am getting an error I cannot figure out on my test. I have what I think is the exact code from the book, other than I changed “us...
New
creminology
Skimming ahead, much of the following is explained in Chapter 3, but new readers (like me!) will hit a roadblock in Chapter 2 with their ...
New
a.zampa
@mfazio23 I’m following the indications of the book and arriver ad chapter 10, but the app cannot be compiled due to an error in the Bas...
New
dtonhofer
@parrt In the context of Chapter 4.3, the grammar Java.g4, meant to parse Java 6 compilation units, no longer passes ANTLR (currently 4....
New

Other popular topics Top

PragmaticBookshelf
Instantly view the changes you make to an app with stateful hot reload, and define a declarative UI in the same language as the app logic...
New
PragmaticBookshelf
Free and open source software is the default choice for the technologies that run our world, and it’s built and maintained by people like...
New
PragmaticBookshelf
Ruby, Io, Prolog, Scala, Erlang, Clojure, Haskell. With Seven Languages in Seven Weeks, by Bruce A. Tate, you’ll go beyond the syntax—and...
New
PragmaticBookshelf
Rust is an exciting new programming language combining the power of C with memory safety, fearless concurrency, and productivity boosters...
New
PragmaticBookshelf
Tailwind CSS is an exciting new CSS framework that allows you to design your site by composing simple utility classes to create complex e...
New
Exadra37
Oh just spent so much time on this to discover now that RancherOS is in end of life but Rancher is refusing to mark the Github repo as su...
New
First poster: bot
zig/http.zig at 7cf2cbb33ef34c1d211135f56d30fe23b6cacd42 · ziglang/zig. General-purpose programming language and toolchain for maintaini...
New
First poster: AstonJ
Jan | Rethink the Computer. Jan turns your computer into an AI machine by running LLMs locally on your computer. It’s a privacy-focus, l...
New
AstonJ
Curious what kind of results others are getting, I think actually prefer the 7B model to the 32B model, not only is it faster but the qua...
New
CommunityNews
Open-source implementation of the classic GTA engine now running directly in your browser. Experience the reVC technology demo on DOS.Zon...
New

Sub Categories: