Bring your own key for tracking AI search with this MIT library

PromptCube Intermediate 1h ago 397 views 9 likes 2 min read

Building a custom AI search tool usually means fighting with fragmented API logs to figure out why a specific query failed or how much a certain user is costing you in tokens. Most people just dump everything into a database and pray the schema holds up, but having a dedicated Bring Your Own Key (BYOK) architecture simplifies the deployment significantly because it shifts the API quota management to the end user while keeping the tracking logic centralized.

If you are building an LLM agent or a RAG-based search engine, the biggest hurdle isn't the retrieval—it's the observability. When users provide their own keys, you need a way to intercept those requests to monitor latency, token usage, and response quality without compromising the security of the key itself. This MIT-licensed library handles that plumbing, allowing you to implement a professional AI workflow where the infrastructure is decoupled from the API costs.

Getting started with the implementation

To integrate this into a production environment, you generally need to wrap your LLM calls in a tracking layer. Instead of calling the OpenAI or Anthropic SDK directly, you route the request through the library's handler.

1. Installation and Setup: Ensure your environment is configured to handle environment variables for your tracking database.
2. Key Injection: Create a middleware that captures the user's API key from the request header and passes it to the library.
3. Request Wrapping: Wrap your search logic. For example, if you're using a Python-based backend:

from byok_tracker import SearchTracker

# Initialize tracker with your project configuration
tracker = SearchTracker(project_id="ai-search-01")

def perform_ai_search(user_key, query):
    # The library tracks the start time and request parameters
    with tracker.track(api_key=user_key):
        response = call_llm_api(user_key, query)
        return response

4. Data Analysis: The library logs the metadata (tokens, time-to-first-token, and model version) into your specified storage, giving you a real-world look at how your search prompts are performing across different user keys.

Why this beats standard logging

Using a specialized library for BYOK search tracking offers a few technical advantages over a generic logger.info() approach:

  • Token Accuracy: It calculates exact token counts based on the specific model's tokenizer rather than estimating based on character count.
  • Latency Breakdown: It separates network overhead from model inference time, which is critical for debugging slow AI search results.
  • Cost Attribution: Since it's tied to the BYOK model, you can generate reports on which specific users are hitting the most expensive models.

For anyone doing a deep dive into prompt engineering for search, this is a practical tutorial in observability. You stop guessing if a prompt change improved the search quality and start seeing the actual delta in response times and token consumption across your entire user base.
typescriptBYOKMIT License

All Replies (3)

P
PatFounder Advanced 1h ago
Having a way to track brand visibility through your own AI setup is a total game changer. The fact that it's open source makes it even better. Really appreciate you sharing this with everyone!
0 Reply
C
Cameron9 Advanced 1h ago
Love that it's MIT licensed. Most "free" tools these days are just trials or have hidden strings attached, so having a BYOK open source option is a huge win for privacy. I'll definitely give this a spin.
0 Reply
J
Jamie67 Novice 1h ago
I’ve found using a proxy for this helps keep the keys secure across different environments.
0 Reply

Write a Reply

Markdown supported