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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
|