Automated telemetry and monitoring for ML & LLM Frameworks
Project description
Welcome to xpuls.ai 👋
xpuls-ml-sdk
Roadmap 🚀
Framework | Status |
---|---|
Langchain | ✅ |
LLamaIndex | Planned |
PyTorch | Planned |
SKLearn | Planned |
Transformers | Planned |
Stable Diffusion | Next |
💡 If support of any framework/feature is useful for you, please feel free to reach out to us via Discord or Github Discussions
🔗 Installation
- Install from PyPI
pip install xpuls-ml-sdk
🧩 Usage Example
from xpuls.mlmonitor.langchain.instrument import LangchainTelemetry
import os
import xpuls
from xpuls.prompt_hub import PromptClient
# Enable this for advance tracking with our xpuls-ml platform
xpuls.host_url = "https://api.xpuls.ai"
xpuls.api_key = "********************" # Get from https://platform.xpuls.ai
xpuls.adv_tracing_enabled = "true" # Enable this for automated insights and log tracing via xpulsAI platform
# Add default labels that will be added to all captured metrics
default_labels = {"service": "ml-project-service", "k8s_cluster": "app0", "namespace": "dev", "agent_name": "fallback_value"}
# Enable the auto-telemetry
LangchainTelemetry(default_labels=default_labels,).auto_instrument()
prompt_client = PromptClient(
prompt_id="clrfm4v70jnlb1kph240", # Get prompt_id from the platform
environment_name="dev" # Deployed environment name
)
## [Optional] Override labels for scope of decorator [Useful if you have multiple scopes where you need to override the default label values]
@TelemetryOverrideLabels(agent_name="chat_agent_alpha")
@MapXpulsProject(project_slug="defaultoPIt9USSR") # Get Project Slug from platform
def get_response_using_agent_alpha(prompt, query):
agent = initialize_agent(llm=chat_model,
verbose=True,
agent=CONVERSATIONAL_REACT_DESCRIPTION,
memory=memory)
data = prompt_client.get_prompt({"variable-1": "I'm the first variable"}) # Substitute any variables in prompt
res = agent.run(data) # Pass the entire `XPPrompt` object to run or invoke method
ℹ️ Complete Usage Guides
🧾 License
This project is licensed under the Apache License 2.0. See the LICENSE file for more details.
📢 Contributing
We welcome contributions to xpuls-ml-sdk! If you're interested in contributing.
If you encounter any issues or have feature requests, please file an issue on our GitHub repository.
💬 Get in touch
🐦 Follow the latest from xpuls.ai team on Twitter @xpulsai
📮 Write to us at hello@xpuls.ai
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
xpuls-ml-sdk-0.3.0.tar.gz
(22.5 kB
view details)
Built Distribution
File details
Details for the file xpuls-ml-sdk-0.3.0.tar.gz
.
File metadata
- Download URL: xpuls-ml-sdk-0.3.0.tar.gz
- Upload date:
- Size: 22.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5fb3c028135a97515ac1e63e93beb6192eb255ab5d04860456604c6499bd2b97 |
|
MD5 | 66fff2c8fdfd3d60d2894ea4ac94b548 |
|
BLAKE2b-256 | 70a3a8a1496db712ee7476da4c21059e6b14a3a0105ea6f8618640b821aba56b |
File details
Details for the file xpuls_ml_sdk-0.3.0-py3-none-any.whl
.
File metadata
- Download URL: xpuls_ml_sdk-0.3.0-py3-none-any.whl
- Upload date:
- Size: 30.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b5fe6957d2887cbf444fa92d1fd3357eeea508cd886eeec280786ab22ced3a8 |
|
MD5 | f9f3b3e8fe2c5c197d67761be29ec7d5 |
|
BLAKE2b-256 | 68987ca497d2e34e89b004c05145ea7b4f1636c87cb3f922968e590f035100a6 |