Simpli KB Audit
Knowledge base quality auditing for AI-readiness — deduplication, conflict detection, staleness scoring, quality grading, and coverage mapping.
KB Audit ensures your knowledge base is clean, consistent, and ready for AI agents. It finds duplicates, detects contradictions, scores staleness, grades article quality, and maps coverage gaps — so your AI tools work with reliable data.
Simpli KB Audit provides comprehensive knowledge base auditing through seven specialized endpoints plus a composite full-audit endpoint.
Configuration
| Variable | Default | Description |
|---|---|---|
APP_PORT | 8011 | Server port |
LITELLM_MODEL | openai/gpt-5-mini | LLM model for analysis |
SIMILARITY_THRESHOLD | 0.85 | Cosine similarity threshold for duplicate detection |
STALENESS_DAYS | 180 | Articles older than this are candidates for staleness review |
QUALITY_MIN_WORD_COUNT | 50 | Minimum word count for a "complete" article |
CORS_ORIGINS | * | Allowed CORS origins (comma-separated) |
Start the server
simpli-kbaudit serveAPI endpoints
All endpoints are under the /api/v1 prefix.
POST /api/v1/audit
Run a full composite audit across all dimensions.
Request:
{
"articles": [
{"id": "kb-1", "title": "Refund Policy", "content": "Refunds take 3-5 business days..."},
{"id": "kb-2", "title": "Returns & Refunds", "content": "Refunds are processed in 5-7 days..."}
],
"ticket_topics": ["password reset", "billing dispute"],
"known_deprecations": ["legacy portal", "v1 API"]
}Response:
{
"audit_id": "a-abc123",
"summary": {
"total_articles": 2,
"total_findings": 3,
"overall_health_score": 0.45,
"findings_by_severity": {"high": 1, "medium": 2}
},
"duplicates": { "..." },
"conflicts": { "..." },
"staleness": { "..." },
"quality": { "..." },
"coverage": { "..." },
"findings": [
{
"finding_id": "f-1",
"severity": "high",
"title": "Conflicting refund timelines",
"description": "kb-1 says 3-5 days, kb-2 says 5-7 days",
"affected_article_ids": ["kb-1", "kb-2"],
"recommended_action": "rewrite"
}
]
}POST /api/v1/duplicates
Find near-duplicate articles using semantic similarity.
POST /api/v1/conflicts
Detect articles that contradict each other.
POST /api/v1/staleness
Score articles for potential staleness with known deprecation matching.
POST /api/v1/quality
Grade articles on completeness, clarity, actionability, and formatting.
POST /api/v1/coverage
Cross-reference ticket topics against KB content to find blind spots.
POST /api/v1/article/review
Pre-publish check for a single article — quality and staleness scoring with a publish_ready flag.
GET /health
Health check.
Integration example
import httpx
client = httpx.Client(base_url="http://localhost:8011")
# Full audit
report = client.post("/api/v1/audit", json={
"articles": [
{"id": "kb-1", "title": "Password Reset", "content": "Go to Settings > Security..."},
{"id": "kb-2", "title": "Reset Your Password", "content": "Navigate to Settings > Security..."},
{"id": "kb-3", "title": "Billing FAQ", "content": "Refunds take 3-5 business days..."},
],
"ticket_topics": ["data export", "SSO setup"],
}).json()
print(f"Health score: {report['summary']['overall_health_score']}")
print(f"Findings: {report['summary']['total_findings']}")
# Pre-publish check
review = client.post("/api/v1/article/review", json={
"article": {"id": "kb-new", "title": "New Feature Guide", "content": "..."},
}).json()
if review["publish_ready"]:
print("Ready to publish!")Next steps
- Knowledge Loop — See how KB Audit fits into continuous knowledge improvement
- Integration Overview — Connect KB Audit to your CMS
- Model Selection — Choose the right model for analysis accuracy