بنقرة واحدة
bench
Run embedding benchmarks — R@5 code retrieval, timing, model comparison
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Run embedding benchmarks — R@5 code retrieval, timing, model comparison
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Weekly documentation refresh and maintenance - audit staleness, update docs, validate backlog
Smart verification — detects what changed and runs appropriate tests, lint, typecheck
Cut and verify a public release through publish remote, hosted CI, PyPI, and GitHub Release status
Scan codebase for AI-generated entropy — duplicated helpers, dead code, spreading anti-patterns. Use on a regular cleanup cadence or when noticing quality drift.
Pre-release docs sync — diff HEAD against the last v* tag on the publish remote, list feature additions, update README language/tool inventory, draft the CHANGELOG release entry, propose the version bump. Runs before /release. Prevents shipping with stale docs.
Automate the repository post-implementation hardening workflow, including optional Codex diff review with returned comments
| name | bench |
| description | Run embedding benchmarks — R@5 code retrieval, timing, model comparison |
| disable-model-invocation | false |
Run retrieval quality and performance benchmarks.
# Verify benchmark data exists
ls benchmarks/data/ 2>/dev/null || echo "No benchmark data"
# Verify current model
python -c "from mempalace.embeddings import get_embedder; e=get_embedder(); print(f'Model: {e.model_name}')"
Run the standard code retrieval benchmark:
python benchmarks/code_retrieval_bench.py --output benchmarks/results_$(date +%Y%m%d).json
Metrics collected:
If benchmark supports categories:
| Category | Description |
|---|---|
| architecture | High-level design questions |
| class_lookup | Find specific class definitions |
| cross_file | References spanning multiple files |
| function_lookup | Find specific functions |
If comparing multiple models:
# Test each candidate
for model in "all-MiniLM-L6-v2" "all-mpnet-base-v2"; do
MEMPALACE_EMBED_MODEL=$model python benchmarks/code_retrieval_bench.py --output benchmarks/results_${model}_$(date +%Y%m%d).json
done
Per project policy, any embedding model change must also pass text retrieval benchmarks:
python benchmarks/text_retrieval_bench.py --dataset longmemeval
Target: Match or beat current model on LongMemEval R@5.
## Benchmark Results
Model: all-MiniLM-L6-v2
Dataset: mempalace code retrieval (20 queries, N chunks)
| Metric | Value | Target | Status |
|--------|-------|--------|--------|
| R@5 | 0.950 | >= 0.95 | PASS |
| R@10 | 1.000 | 1.0 | PASS |
| Embed time | 15.2s | < 60s | PASS |
| Query time | 15.9ms | < 100ms | PASS |
| Index size | 17.0 MB | < 50 MB | PASS |
Category R@5:
- architecture: 0.800
- class_lookup: 1.000
- cross_file: 1.000
- function_lookup: 1.000
**Verdict: PASS** — Model meets all targets.
When comparing models, produce:
| Model | R@5 | R@10 | Embed(s) | Query(ms) | Index(MB) |
|-------|-----|------|----------|-----------|-----------|
| all-MiniLM-L6-v2 | 0.950 | 1.000 | 15.2 | 15.9 | 17.0 |
| all-mpnet-base-v2 | 0.900 | 1.000 | 47.5 | 30.5 | 17.7 |
**Recommendation:** minilm remains default (better R@5, 3x faster).