Skip to content

Free

Semantic Search

Search your own text by meaning, not keywords.

Gemini embeddingsSimilarity rankingBring your own textFree

Build the index first to enable search.

Frequently asked questions

How is this different from keyword search?

It matches meaning, not exact words. A query like "how do I get a refund" can surface a passage about "returning a purchase" even with no shared keywords.

How does it work under the hood?

Each line or paragraph becomes a row in a Pixeltable table with a Gemini embedding index. Your query is embedded and ranked with .similarity() — the same pattern that powers RAG.

Is my text stored?

Your corpus is scoped to your browser session and is not shared with other visitors.

Built with Pixeltable

Run this as tables and an API on Pixeltable Cloud.

Fact sheet

Last updated

Facts for Semantic Search
ModalityText
InputsYour notes plus a meaning query
OutputsPassages ranked by similarity
Computed columnGemini embed_content index; query with column.similarity(string=...)
What updatesA new or changed row recomputes only that row. Unchanged rows stay cached.
Canonical docgemini.embed_content

Runnable sample

import pixeltable as pxt
from pixeltable.functions.gemini import embed_content

TableModel = pxt.model_base()
text_embed = embed_content.using(model='gemini-embedding-001')

class Notes(TableModel, name='notes'):
    text: pxt.String

    __indexes__ = [
        pxt.EmbeddingIndex(text, embedding=text_embed),
    ]

# Query with Notes.text.similarity(string='how do I get a refund')
  • Chat with PDF

    Modality: Document

    Computed column: extract_document_text, then Groq chat_completions. No embedding index

    Docs
  • Document Summarizer

    Modality: Document

    Computed column: extract_document_text, then Groq chat_completions for the summary

    Docs

More free tools

Browse all 28 tools