Here's the system prompt used for anyone that's curious:
You are routing natural-language queries to the most relevant web destination.
Your goal: return ONE and only ONE of the following categories, based on the user’s query.
CATEGORIES:
- YOUTUBE → Tutorials, visual "how to", music, memes, viral/famous videos, or known YouTube creators/channels
- AMAZON → Physical products, books, or items typically purchased online
- LLM → Tasks requiring reasoning, creativity, writing, coding, analysis, or multi-step assistance
- WIKIPEDIA → Encyclopedic knowledge: historical events, specific well-known people, specific scientific concepts
- GOOGLE_MAP → Places (restaurants, parks, landmarks, neighborhoods, venues, etc.)
- GOOGLE_FIRST → A query with one clear canonical page (company websites, known essays, memes, catchphrases, branded terms)
- GOOGLE_MANY → Broad or ambiguous web searches, recent/current events, buying guides, lists, or general exploration
ROUTING RULES:
1. Queries that are instructions, questions, creative tasks, or longer than ~20 words → LLM
2. Action verbs at the start (eg "tell" "write" "create" "explain" "generate" "help") → LLM
3. Exact book titles or product names → AMAZON
4. "How to" or tutorial queries → YOUTUBE if best shown visually; otherwise LLM
5. If you are ABSOLUTELY CERTAIN that a Wikipedia page exists with a title that EXACTLY matches this query → WIKIPEDIA
6. If it feels like the user expects a single canonical site/page → GOOGLE_FIRST
7. If it’s a place someone might want directions, ratings, or a map → GOOGLE_MAP
8. "Best ___" or buying guides → GOOGLE_MANY
9. News, time-sensitive topics, local info → GOOGLE_MANY
OUTPUT FORMAT:
Return only the category name (no explanation).
EXAMPLES:
- "best wireless headphones under $100" → GOOGLE_MANY
- "wireless headphones" → AMAZON
- "explain quantum computing" → LLM
- "World War 2" → WIKIPEDIA
- "how to tie a tie" → YOUTUBE
- "write a poem about spring" → LLM
- "facebook" → GOOGLE_FIRST
- "founder mode" → GOOGLE_FIRST
- "weather in SF today" → GOOGLE_MANY
- "dolores park" → GOOGLE_MAP
- "charlie bit my finger" → YOUTUBE
QUERY: ${query}
I can guess why you do it, but feels a bit restrictive to list some specific companies here. You say LLM, but not like generic “MAP” site or generic “SHOPPING” site. I’m curious if you tried generics or if you just went straight to the big sites?
I wanted to hate this but... I can't, it's pretty cool.
Yes, it's a fancy "I'm feeling lucky" (which they address) and I probably won't use these links just because of the non-deterministic nature (maybe that's the joke? It's just a cool demo/poc?) but I spent way longer than I'll admit trying things and being delighted (and sometimes frustrated).
It's a fun experiment and THANK YOU for posting the prompt. I wonder how a sort of "LLM-decided 'I'm feeling lucky'" search would feel, as in using an LLM to decide if it should show the results or go to the first/best result right away. That's pretty much what this is I guess.
It would cool if I could configure Kagi to bounce me to a result right away if it thinks the destination is obvious but to leave the search results in my history so I can "back" to the results if it guessed wrong. I guess I could just try setting `https://vb.lk/%s` as my search engine.
Sounds like a good use case is using this as placeholder links while writing a blog post to avoid stopping and looking for links, then doing an automatic replacement of the vibe links with what they resolve to and fixing any incorrect ones.
I really appreciate this kind of simple out-of-the-box thinking, leveraging innovation to reinvent basic primitives. This feels significant. I can already see some dystopian 'Dead Internet Theory' use cases for this but also could help to further decentralize the web in a positive way. This could be a game-changer for personalization. My gut is telling me this idea is more important than it seems.
I think combining this tech with vector embeddings with similarity matching for personalization could be a real game-changer and can be done cheaply.
Some of the example links visibly takes me through 4 redirects. I’m wondering if it’d be useful to actually store the redirect results and jump directly to the resolved page. If it’s stored long term the link even becomes deterministic, but maybe that’s not what you are going for.
thanks for flagging! the model is overly eager to choose a wikipedia redirect. I've updated the system prompt to encourage less use of wikipedia redirect and this query now takes you to chatGPT
Can I use this to generate links to news stories that I stumbled across many years ago, but that Google is unable to find for me anymore? Because that would be really useful.
Another small idea - in case there is no website or route that is statistically strong related to the requested link (based on whatever the model outputs as "strength") then vibe-code a small website
35 comments
[ 6.1 ms ] story [ 56.2 ms ] threadAlso, please please please prompt your model to use DDG (or Brave Search) for the fallback search engine instead of Google.
I think gemini-1.5-flash is EOL'd from tomorrow (Sep 25th) https://cloud.google.com/vertex-ai/generative-ai/docs/learn/...
RIP gemini-1.5
what's cost like rn with the lightweight model?
Yes, it's a fancy "I'm feeling lucky" (which they address) and I probably won't use these links just because of the non-deterministic nature (maybe that's the joke? It's just a cool demo/poc?) but I spent way longer than I'll admit trying things and being delighted (and sometimes frustrated).
It's a fun experiment and THANK YOU for posting the prompt. I wonder how a sort of "LLM-decided 'I'm feeling lucky'" search would feel, as in using an LLM to decide if it should show the results or go to the first/best result right away. That's pretty much what this is I guess.
It would cool if I could configure Kagi to bounce me to a result right away if it thinks the destination is obvious but to leave the search results in my history so I can "back" to the results if it guessed wrong. I guess I could just try setting `https://vb.lk/%s` as my search engine.
I think combining this tech with vector embeddings with similarity matching for personalization could be a real game-changer and can be done cheaply.
And I'm triggered. Good troll.
Some of the example links visibly takes me through 4 redirects. I’m wondering if it’d be useful to actually store the redirect results and jump directly to the resolved page. If it’s stored long term the link even becomes deterministic, but maybe that’s not what you are going for.