Skip to main content

Type

knowledge_api

Technology

Vector Search & Embeddings
Purpose: The Knowledge API skill enables agents to perform semantic search across your organization’s knowledge base using natural language, finding relevant information from documentation, policies, tickets, and more.

Common Use Cases

Searching documentationFind relevant guides, API docs, runbooks, and technical documentation

Finding relevant policiesDiscover compliance requirements, security policies, and procedures

Discovering similar issuesFind past tickets, incidents, and resolutions for similar problems

Context-aware retrievalRetrieve information based on meaning, not just keywords

How It Works

1

Content Ingestion

Knowledge sources are indexed: documentation sites, code repositories, ticketing systems, communication archives
2

Embedding Generation

Text is converted to vector embeddings that capture semantic meaning
3

Semantic Search

Queries are converted to embeddings, matched with similar content, and ranked by relevance
4

Reranking (Optional)

Results can be reranked using advanced models for better accuracy

Configuration

Example Configuration:
{
  "knowledge_sources": ["docs", "code"],
  "max_results": 10,
  "similarity_threshold": 0.7,
  "enable_reranking": true,
  "include_snippets": true
}
ParameterTypeDefaultDescription
knowledge_sourcesarray[]Which sources to search
max_resultsnumber10Maximum results to return
similarity_thresholdnumber0.7Minimum similarity score (0-1)
enable_rerankingbooleantrueUse reranking for better results
reranking_modelstring”cohere”Reranking model to use
filter_by_datebooleanfalseFilter to recent content only
days_lookbacknumber90How many days back to search
include_snippetsbooleantrueInclude content excerpts
snippet_lengthnumber200Characters per snippet
include_metadatabooleantrueInclude source, date, author

Quick Start

# Create skill
kubiya skill create --name "Knowledge Search" --type knowledge_api --enabled

# Associate with agent
kubiya skill associate agent <agent-id> <skill-id>

View Complete Examples

See full search patterns, incident response queries, and policy compliance examples

Query Examples

Technical Documentation

Query:
"How do I configure authentication in the API?"
Results:
{
  "results": [
    {
      "title": "API Authentication Guide",
      "source": "docs",
      "similarity_score": 0.92,
      "snippet": "To configure authentication, add the following to your API configuration: Set JWT_SECRET environment variable...",
      "url": "https://docs.company.com/api/auth"
    }
  ]
}

Past Incidents

Query:
"Database connection pool exhaustion causing API timeouts"
Results:
{
  "results": [
    {
      "title": "INC-4567: API Timeouts Due to Connection Pool",
      "source": "tickets",
      "similarity_score": 0.94,
      "snippet": "Root cause: Connection pool size set to 10, insufficient for traffic. Resolution: Increased pool size to 50..."
    }
  ]
}

Policy Compliance

Query:
"What are the data retention requirements for customer information?"
Results:
{
  "results": [
    {
      "title": "Data Retention Policy",
      "source": "policies",
      "similarity_score": 0.96,
      "snippet": "Customer personal data must be retained for 7 years after account closure per GDPR requirements..."
    }
  ]
}

Security Best Practices

Limit knowledge_sources to only necessary sources.
"knowledge_sources": ["docs", "policies"]  # Not all sources
Use appropriate similarity_threshold to ensure quality results.
"similarity_threshold": 0.75  # Higher threshold = more relevant results
Use metadata filters to exclude sensitive or restricted content.
metadata_filters:
  classification: ["public", "internal"]  # Exclude confidential
Best Practice: Enable reranking for customer-facing agents to ensure the most accurate results.

Solutions:
  • Lower similarity_threshold value
  • Check knowledge sources are indexed and syncing
  • Verify query isn’t too specific
Solutions:
  • Increase similarity_threshold for higher quality
  • Enable reranking for better relevance
  • Use more specific query phrasing
Solutions:
  • Reduce max_results value
  • Disable reranking if not needed
  • Limit knowledge_sources to fewer sources