Skip to Content
CompanySpec
Concepts

Semantic search

Describe the companies you want in plain language, including who they sell to.

Put a description in semantic_query and we match it against what each company does and who it sells to.

{ "semantic_query": "practice management software for independent dental practices" }

Writing good queries

  • Say who the customers are. "Software for independent dental practices" finds vendors that sell to dental practices, not the practices themselves.
  • Name the product. "Practice management software" is better than "software".
  • Keep hard constraints in filters. Country, size, customer_types and customer_segments work as strict yes/no filters; put them in filters rather than in the sentence.
  • One idea per query. For two different products, run two searches.

Scores

Each result includes match.score (0–1) and a short AI-written match.reason explaining the match. Results are sorted by score.

  • Above 0.8: strong matches.
  • 0.6–0.8: usually relevant; check the reason.
  • Below 0.6: loosely related.

Use min_score to drop weaker matches. Even without it, very weak matches are never returned, so a search for something rare returns few results rather than unrelated companies. Pass the same min_score to /companies/count to see how many you'll get; semantic counts stop at 1,000 (total_capped: true means there are more).

Weighting

semantic_weight (0–1, default 0.7) balances relevance against company size and web traffic. Lower it to favour larger, better-known companies among good matches.

On this page