Skip to content

A new package that processes text input to monitor and analyze the health and performance of a message bus system. It uses natural language queries to return structured insights about message throughp

Notifications You must be signed in to change notification settings

chigwell/buslytics

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

Buslytics

PyPI version License: MIT Downloads LinkedIn

Buslytics is a Python package designed to process natural language user input to monitor and analyze the health and performance of message bus systems. It leverages language models to interpret queries related to message throughput, error rates, queue statuses, and system alerts, delivering structured insights that help developers and operators maintain system reliability without requiring deep technical expertise.

Installation

Install the package via pip:

pip install buslytics

Usage

Here's a basic example of how to use Buslytics:

from buslytics import buslytics

response = buslytics(user_input="What is the current error rate?", api_key="your_api_key")
print(response)

Parameters:

  • user_input (str): The text query input by the user for system analysis.
  • llm (Optional[BaseChatModel]): An optional LangChain LLM instance. If not provided, the default ChatLLM7 from langchain_llm7 will be used.
  • api_key (Optional[str]): Your LLM7 API key. If not provided, it will be fetched from the environment variable LLM7_API_KEY.

Custom LLM Usage:

You can pass your own language model instance to suit your preferred provider:

from langchain_openai import ChatOpenAI
from buslytics import buslytics

llm = ChatOpenAI()
response = buslytics(user_input="Check message throughput", llm=llm)

Other supported models include:

from langchain_anthropic import ChatAnthropic
llm = ChatAnthropic()
response = buslytics(user_input="Check queue status", llm=llm)
from langchain_google_genai import ChatGoogleGenerativeAI
llm = ChatGoogleGenerativeAI()
response = buslytics(user_input="Identify system alerts", llm=llm)

Notes:

  • The package uses ChatLLM7 from langchain_llm7 by default.
  • The default rate limits for the free tier of LLM7 are usually sufficient. For higher limits, supply your API key via the environment variable LLM7_API_KEY or directly as a parameter.
  • Obtain a free API key at https://token.llm7.io/.

Support and Issues

Please report issues or feature requests at: https://github.com/chigwell/buslytics/issues

Author

Eugene Evstafev
Email: [email protected]
GitHub: chigwell

License

This project is licensed under the MIT License.