---
title: "cherche vs semtools"
type: "comparison"
canonical_url: "https://www.graphcanon.com/compare/raphaelsty-cherche-vs-run-llama-semtools"
tools: ["raphaelsty-cherche", "run-llama-semtools"]
---

# cherche vs semtools

*GraphCanon updated Aug 23, 2026*

## Verdict

Pick cherche if cherche is a Python library for implementing neural search capabilities; pick semtools if semtools is a Rust-based tool that provides command-line capabilities for semantic searching and parsing documents. It leverages embeddings and static embedding techniques to offer robust data retrieval functionalities.

[cherche](https://github.com/raphaelsty/cherche) reports 332 GitHub stars, 14 forks, and 4 open issues, last pushed Jun 1, 2024. [semtools](https://github.com/run-llama/semtools) has 1.9k stars, 142 forks, and 6 open issues, last pushed Mar 11, 2026. Figures are from public GitHub metadata via [cherche's repository](https://github.com/raphaelsty/cherche) and [semtools's repository](https://github.com/run-llama/semtools).

| | [cherche](/tools/raphaelsty-cherche.md) | [semtools](/tools/run-llama-semtools.md) |
| --- | --- | --- |
| Tagline | Neural Search | Semantic search and document parsing tools for the command line |
| Stars | 332 | 1,855 |
| Forks | 14 | 142 |
| Open issues | 4 | 6 |
| Language | Python | Rust |
| Adopt for | Cherche is a Python library for implementing neural search capabilities. | semtools is a Rust-based tool that provides command-line capabilities for semantic searching and parsing documents. It leverages embeddings and static embedding techniques to offer robust data retrieval functionalities. |
| Persona | - | - |
| Runtime | - | - |
| License | MIT | MIT |
| Categories | Data & Retrieval, Evaluation & Observability, Vector Databases | Data & Retrieval, Vector Databases |

## Trust and health

_Sourced signals - not a safety guarantee. No winner column._

| | [cherche](/tools/raphaelsty-cherche.md) | [semtools](/tools/run-llama-semtools.md) |
| --- | --- | --- |
| Maintenance | Dormant (18%) | Slowing (36%) |
| Days since push | 812d | 163d |
| Open issues (now) | 4 | 6 |
| Stars delta | 0 (30d) | +17 (30d) |
| Owner type | User | Organization |
| Full report | [trust report](/tools/raphaelsty-cherche/trust.md) | [trust report](/tools/run-llama-semtools/trust.md) |

## Decision facts: cherche

- **Adopt for:** Cherche is a Python library for implementing neural search capabilities.

## Decision facts: semtools

- **Pricing:** freemium - Freely available under the MIT license, with possible premium features not covered by open-source.
- **Adopt for:** semtools is a Rust-based tool that provides command-line capabilities for semantic searching and parsing documents. It leverages embeddings and static embedding techniques to offer robust data retrieval functionalities.

## Choose when

### Choose cherche if…

- cherche is primarily Python; semtools is Rust.
- Tags unique to cherche: bm25, flashtext, information-retrieval, machine-learning.
- Also covers Evaluation & Observability.
- Cherche is a Python library for implementing neural search capabilities.

### Choose semtools if…

- semtools is primarily Rust; cherche is Python.
- Pricing: Freely available under the MIT license, with possible premium features not covered by open-source..
- Tags unique to semtools: cli, embeddings, parser, rust.
- - When you require fast, statically typed document and search functionality via the command line built in Rust.

## When NOT to use cherche

- Last GitHub push was 816 days ago (dormant maintenance, Jun 1, 2024). Validate activity before betting a new project on cherche.
- Data & Retrieval: Skip a heavy ingestion framework when your corpus is small and static; a script plus the embedding API is enough.
- Evaluation & Observability: Defer heavyweight eval infra only until you have real traffic - never skip it once users depend on answers.
- Vector Databases: Don't reach for a dedicated vector DB under ~100k vectors; pgvector on your existing Postgres is simpler to operate.

## When NOT to use semtools

- - If your workflow does not frequently involve command-line operations for managing search capabilities on documents, as semtools is explicitly designed for such usage.
- - When there's no plan or necessity to integrate with Rust-based ecosystems, since semtools might require additional effort in setting up a compatible environment.

## Common questions

### What is the difference between cherche and semtools?

cherche: Neural Search. semtools: Semantic search and document parsing tools for the command line. See the comparison table for live GitHub stats and shared categories.

### When should I choose cherche over semtools?

Choose cherche over semtools when cherche is primarily Python; semtools is Rust; Tags unique to cherche: bm25, flashtext, information-retrieval, machine-learning; Also covers Evaluation & Observability; Cherche is a Python library for implementing neural search capabilities.

### When should I choose semtools over cherche?

Choose semtools over cherche when semtools is primarily Rust; cherche is Python; Pricing: Freely available under the MIT license, with possible premium features not covered by open-source.; Tags unique to semtools: cli, embeddings, parser, rust; - When you require fast, statically typed document and search functionality via the command line built in Rust.

### When should I avoid cherche?

Last GitHub push was 816 days ago (dormant maintenance, Jun 1, 2024). Validate activity before betting a new project on cherche. Data & Retrieval: Skip a heavy ingestion framework when your corpus is small and static; a script plus the embedding API is enough. Evaluation & Observability: Defer heavyweight eval infra only until you have real traffic - never skip it once users depend on answers. Vector Databases: Don't reach for a dedicated vector DB under ~100k vectors; pgvector on your existing Postgres is simpler to operate.

### When should I avoid semtools?

- If your workflow does not frequently involve command-line operations for managing search capabilities on documents, as semtools is explicitly designed for such usage. - When there's no plan or necessity to integrate with Rust-based ecosystems, since semtools might require additional effort in setting up a compatible environment.

### Is cherche or semtools more popular on GitHub?

semtools has more GitHub stars (1,855 vs 332). Stars measure visibility, not whether either tool fits your constraints.

### Are cherche and semtools open source?

Yes - both are open-source projects on GitHub (cherche: MIT, semtools: MIT).

### Where can I find alternatives to cherche or semtools?

GraphCanon lists graph-backed alternatives at [cherche alternatives](/tools/raphaelsty-cherche/alternatives) and [semtools alternatives](/tools/run-llama-semtools/alternatives) ([cherche markdown twin](/tools/raphaelsty-cherche/alternatives.md), [semtools markdown twin](/tools/run-llama-semtools/alternatives.md)), ranked by typed relationship edges rather than popularity votes.

### Is there a machine-readable version of this comparison?

Yes. The markdown twin at [this comparison](/compare/raphaelsty-cherche-vs-run-llama-semtools.md) mirrors this page for agents and LLM crawlers, with the same stats table and FAQ answers.

### Which is better maintained, cherche or semtools?

cherche: Dormant. semtools: Slowing. Compare maintenance labels, days since push, and release cadence in the trust section below - stars alone do not measure maintenance.

### Where are the full trust reports for cherche and semtools?

GraphCanon publishes per-repo trust reports with dated maintenance, provenance, and scan summaries: [cherche trust report](/tools/raphaelsty-cherche/trust); [semtools trust report](/tools/run-llama-semtools/trust).

---

**Machine-readable endpoints**

- JSON: [`/api/graphcanon/graph?tool=raphaelsty-cherche`](/api/graphcanon/graph?tool=raphaelsty-cherche)
- LLM index: [/llms.txt](/llms.txt)
- Full corpus: [/llms-full.txt](/llms-full.txt)

_GraphCanon - The knowledge graph for AI development. https://www.graphcanon.com/_
