{"id":13389,"date":"2025-06-21T16:34:28","date_gmt":"2025-06-21T11:04:28","guid":{"rendered":"https:\/\/gtm360.com\/blog\/?p=13389"},"modified":"2025-06-21T16:34:28","modified_gmt":"2025-06-21T11:04:28","slug":"how-my-quest-for-semantic-search-ended-with-chatgpt","status":"publish","type":"post","link":"https:\/\/gtm360.com\/blog\/2025\/06\/21\/how-my-quest-for-semantic-search-ended-with-chatgpt\/","title":{"rendered":"How My Quest For Semantic Search Ended With ChatGPT"},"content":{"rendered":"<figure id=\"attachment_13414\" aria-describedby=\"caption-attachment-13414\" style=\"width: 190px\" class=\"wp-caption alignright\"><a href=\"https:\/\/gtm360.com\/blog\/wp-content\/uploads\/2025\/04\/wp-search-skr-blog.jpg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-13414 size-full\" src=\"https:\/\/gtm360.com\/blog\/wp-content\/uploads\/2025\/04\/wp-search-skr-blog.jpg\" alt=\"\" width=\"200\" height=\"214\" \/><\/a><figcaption id=\"caption-attachment-13414\" class=\"wp-caption-text\">WP Search<\/figcaption><\/figure>\n<p>For a long time, I&#8217;d been using the standard SEARCH function supported by WordPress to find my posts on this blog. Like all search engines, it works by matching keywords i.e. if my search query is &#8220;price early late&#8221;, it will find all blog posts that contain these words; if there aren&#8217;t any, it will report &#8220;Nothing Found&#8221;.<\/p>\n<p>This sufficed in the early days of <em>GTM360 Blog<\/em>. But, over time &#8211; this blog is over 15 years old! &#8211; it posed a serious challenge. While I can remember that I&#8217;ve written a post on a certain topic, I can&#8217;t always remember the exact words in the post. As a result, WP Search started bombing regularly for this task.<\/p>\n<p>I turned to <a href=\"https:\/\/chatgpt.com\/share\/66fd5bdd-7388-8003-83fe-1e6e05851114\" target=\"_blank\" rel=\"noopener\"><strong>ChatGPT<\/strong><\/a> for help.<br \/>\n<!--BLOCKQUOTE, NO LHS LINE, GREEN--><\/p>\n<blockquote class=\"skr-bq-noline\">\n<div style=\"background-color: #00c89640; padding: 15px 30px;\">I have a WordPress blog. To find my past posts, I use the standard WordPress Search feature. However, it does only keyword search. Is there any GenAI tool like ChatGPT available that will enable searches based on my vague recollection of what the post contained without getting the keywords right?<\/div>\n<\/blockquote>\n<p><!----------END----------><\/p>\n<p>In short, I was searching for a <em><strong>Semantic Search<\/strong><\/em>. For the uninitiated, <em>Semantic Search<\/em> is what allows a search like:<\/p>\n<p><em>Query: \u201cWhen should I talk about pricing in sales?\u201d<\/em><\/p>\n<p>to surface the blog post: <em>\u201cShould Sales Dodge The Price Question Or Answer It Upfront?\u201d<\/em><\/p>\n<p>even though the said post does not contain the said words.<\/p>\n<figure id=\"attachment_13415\" aria-describedby=\"caption-attachment-13415\" style=\"width: 200px\" class=\"wp-caption alignright\"><a href=\"https:\/\/gtm360.com\/blog\/wp-content\/uploads\/2025\/04\/wp-search-gtm360-blog-tr.jpg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-13415\" src=\"https:\/\/gtm360.com\/blog\/wp-content\/uploads\/2025\/04\/wp-search-gtm360-blog-tr.jpg\" alt=\"Algolia Search\" width=\"210\" height=\"200\" \/><\/a><figcaption id=\"caption-attachment-13415\" class=\"wp-caption-text\">Algolia Search<\/figcaption><\/figure>\n<p>Semantic search goes by meaning. Its guiding principle is that, <strong>even though the words aren\u2019t the same, the meaning is<\/strong>.<\/p>\n<p>Chat gave me several options from which I selected ALGOLIA.<\/p>\n<p>Unlike WP SEARCH, which displays only the links to the blog posts in the hit list, Algolia also shows the sections of the post where the keywords appear. While this is quite helpful, it&#8217;s a far cry from the magic of semantic search that I&#8217;d coveted.<\/p>\n<p>I then stumbled upon the following search box on an article in <em>CIO<\/em> magazine.<\/p>\n<p><a href=\"https:\/\/gtm360.com\/blog\/wp-content\/uploads\/2025\/04\/cio-smart-answers-miso-fi-2.jpg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-13418 size-full\" src=\"https:\/\/gtm360.com\/blog\/wp-content\/uploads\/2025\/04\/cio-smart-answers-miso-fi-2.jpg\" alt=\"\" width=\"630\" height=\"328\" srcset=\"https:\/\/gtm360.com\/blog\/wp-content\/uploads\/2025\/04\/cio-smart-answers-miso-fi-2.jpg 630w, https:\/\/gtm360.com\/blog\/wp-content\/uploads\/2025\/04\/cio-smart-answers-miso-fi-2-500x260.jpg 500w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a><\/p>\n<p>As you can see, <strong><em>CIO Smart Answers<\/em><\/strong> features several questions related to the article and invites readers to explore them in greater detail. It also lets users ask their own questions. I tried it and was quite impressed with the results. It looked like the semantic search I was looking for, so I clicked the <a href=\"https:\/\/www.cio.com\/smart-answers\" target=\"_blank\" rel=\"noopener\">Learn more<\/a> link on the top right of the box. The next page explained that <em>CIO Smart Answers<\/em> was based on AI semantic search technology provided by one <strong>miso.ai<\/strong>. I immediately headed over to miso&#8217;s website and registered GTM360 Blog. It said it would index my blog and get back with the code that I&#8217;d need to add to my blogsite after 2-3 days. It&#8217;s now over two months and I&#8217;ve not heard back from miso.<\/p>\n<p>To recap, as of this point, my problem had not been solved by WP Search, Algolia or miso.ai.<\/p>\n<hr style=\"width: 70%;\" \/>\n<p>We&#8217;ve been providing <em><a href=\"https:\/\/gtm360.com\/campaign\/\" target=\"_blank\" rel=\"noopener\">campaign oversight services<\/a><\/em> for one of our customers. Recently, one of their SDRs got on a call with a prospective customer. Even before he could demo his company&#8217;s product, the prospect asked for his pricing. The SDR was not sure whether he should reveal his prices forthwith or wait until the demo got over (or postpone it to an even later stage in the sales cycle). He turned to us for guidance.<\/p>\n<p>I remembered that I&#8217;d written a post on this topic. I searched for it by using the keywords &#8220;price early late sales cycle&#8221; but neither WP Search nor Algolia could find it.<\/p>\n<p>On an off chance, I thought of asking ChatGPT:<br \/>\n<!--BLOCKQUOTE, NO LHS LINE, GREEN--><\/p>\n<blockquote class=\"skr-bq-noline\">\n<div style=\"background-color: #00c89640; padding: 15px 30px;\">In www.gtm360.com\/blog, can you find the post where I&#8217;ve written about whether to broach the topic of price early or late in the sales cycle?<\/div>\n<\/blockquote>\n<p><!----------END---------->I was half expecting Chat to tell me to install some plugin or otherwise get lost but, lo and behold, it gave me the correct answer!<br \/>\n<!--BLOCKQUOTE, NO LHS LINE, GRAY--><\/p>\n<blockquote class=\"skr-bq-noline\">\n<div style=\"background-color: #fafafa; padding: 15px 30px;\">Yes, the blog post you&#8217;re referring to is titled &#8220;Should Sales Dodge The Price Question Or Answer It Upfront?&#8221;. It was published on October 21, 2016.<\/div>\n<\/blockquote>\n<p><!----------END----------><\/p>\n<p>Whoa! In a few seconds, ChatGPT found a post that the standard WP Search and the purpose-built Algolia Search could not find even after indexing my blog for years.<\/p>\n<hr style=\"width: 70%;\" \/>\n<p>I asked Chat how it managed the feat. It replied as follows:<br \/>\n<!--BLOCKQUOTE, NO LHS LINE, GRAY--><\/p>\n<blockquote class=\"skr-bq-noline\">\n<div style=\"background-color: #fafafa; padding: 15px 30px;\">Algolia is excellent for fast keyword-based search, and it&#8217;s super customizable \u2014 but at the end of the day, it&#8217;s still primarily a lexical search engine unless you bolt on a semantic layer (like natural language embeddings or AI-based re-ranking). So a query like &#8220;price early late&#8221; would likely not match your post unless those exact words were close together in the content or metadata. <strong>What I did was infer your intent \u2014 that you were referring to the classic sales dilemma of when to bring up pricing in the sales cycle \u2014 and searched accordingly<\/strong>.<\/div>\n<\/blockquote>\n<p><!----------END----------><\/p>\n<p>ChatGPT also made a reference to generating embedding vectors, which went over me. But I understood enough of its workflow to wonder how Chat was able to ingest, train, embed and search through the entire blog (over 600,000 words) in a few seconds.<br \/>\n<!--BLOCKQUOTE, NO LHS LINE, GREEN--><\/p>\n<blockquote class=\"skr-bq-noline\">\n<div style=\"background-color: #00c89640; padding: 15px 30px;\">In order to answer my question, you must have generated embedding vectors for each blog post on my blog.<\/div>\n<\/blockquote>\n<p><!----------END----------><\/p>\n<p>Turns out it didn&#8217;t have to. ChatGPT followed a different process.<br \/>\n<!--BLOCKQUOTE, NO LHS LINE, GRAY--><\/p>\n<blockquote class=\"skr-bq-noline\">\n<div style=\"background-color: #fafafa; padding: 15px 30px;\">\n<p>I Don\u2019t Actually Store Your Blog\u2019s Embeddings. Here\u2019s the twist: I (ChatGPT) don\u2019t have persistent memory of embeddings or a vector database for your blog. What I did earlier was:<\/p>\n<ul>\n<li>Interpret your question using language understanding.<\/li>\n<li>Run a keyword-based semantic search through web browsing (on your live blog).<\/li>\n<li>Find the post that was most likely to match the intent of your query.<\/li>\n<\/ul>\n<p>I didn\u2019t actually precompute or store any vector embeddings from your blog.<\/p>\n<\/div>\n<\/blockquote>\n<p><!----------END----------><\/p>\n<p>If you&#8217;re interested in knowing about <em>vector embedding<\/em> and other techniques used by ChatGPT, click <a href=\"https:\/\/chatgpt.com\/share\/67fce55d-6cac-8003-ae0e-f19278ce20ca\" target=\"_blank\" rel=\"noopener\"><strong>here<\/strong><\/a>.<\/p>\n<hr style=\"width: 70%;\" \/>\n<p>This was an <strong>AHA moment <\/strong>for me!<\/p>\n<p>By providing pleasant surprises that significantly improve the user experience, \u201caha\u201d moments raise the appeal of software. As a part of our <a href=\"https:\/\/www.gtm360.com\/product\/\" target=\"_blank\" rel=\"noopener\"><em>outsourced product management<\/em><\/a> service, we&#8217;ve created AHA moments for many software products. See <a href=\"https:\/\/gtm360.com\/blog\/2019\/11\/15\/outflanking-incumbent-products-with-aha-moments\/\" target=\"_blank\" rel=\"noopener\">Outflanking Incumbent Products With AHA Moments<\/a> for a few examples.<\/p>\n<p>On a side note, ChatGPT is a good enough solution for me, but I&#8217;m looking for something like CIO Smart Answers to make it easy for visitors of this blog to find my posts on various topics. I was tipped off to <em>Google Gemini<\/em> but, as of writing, it does not have a plugin for WordPress. If you know of a suitable WP plugin for semantic search, kindly share in the comments below. Thanks in advance.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>For a long time, I&#8217;d been using the standard SEARCH function supported by WordPress to find my posts on this blog. Like all search engines, it works by matching keywords i.e. if my search query is &#8220;price early late&#8221;, it will find all blog posts that contain these words; if there aren&#8217;t any, it will &#8230; <a title=\"How My Quest For Semantic Search Ended With ChatGPT\" class=\"read-more\" href=\"https:\/\/gtm360.com\/blog\/2025\/06\/21\/how-my-quest-for-semantic-search-ended-with-chatgpt\/\" aria-label=\"Read more about How My Quest For Semantic Search Ended With ChatGPT\">Read more<\/a><\/p>\n","protected":false},"author":4,"featured_media":13418,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[18,13,1],"tags":[],"class_list":["post-13389","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-b2-product-v-services","category-product","category-mandatory-category"],"_links":{"self":[{"href":"https:\/\/gtm360.com\/blog\/wp-json\/wp\/v2\/posts\/13389","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gtm360.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gtm360.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gtm360.com\/blog\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/gtm360.com\/blog\/wp-json\/wp\/v2\/comments?post=13389"}],"version-history":[{"count":11,"href":"https:\/\/gtm360.com\/blog\/wp-json\/wp\/v2\/posts\/13389\/revisions"}],"predecessor-version":[{"id":13552,"href":"https:\/\/gtm360.com\/blog\/wp-json\/wp\/v2\/posts\/13389\/revisions\/13552"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/gtm360.com\/blog\/wp-json\/wp\/v2\/media\/13418"}],"wp:attachment":[{"href":"https:\/\/gtm360.com\/blog\/wp-json\/wp\/v2\/media?parent=13389"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gtm360.com\/blog\/wp-json\/wp\/v2\/categories?post=13389"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gtm360.com\/blog\/wp-json\/wp\/v2\/tags?post=13389"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}