A ML model serving library
Project description
Krypton ML
Krypton ML is a simple ML model serving framework with an emphasis on a config-driven approach. It's designed to make deploying machine learning models as API endpoints quick and easy.
Note: This project is currently in the experimental stage and only supports LangChain invocation.
Author: Varun Kruthiventi
Website: kryptonhq.com
PyPI Package: krypton-ml
GitHub Repository: krypton-ml
Features
- Config-driven approach to model deployment
- Easy integration with LangChain. More ML frameworks coming soon!
- Support for text completion and chat-based chains currently for LangChain
- Simple API deployment from configuration files
Installation
You can install Krypton ML using pip:
pip install krypton-ml
Usage
- Crate a LangChain model(chain) and save it as a Python file (e.g.,
langchain_example/app.py
). - The app.py should have a valid chain callable that can be invoked by Krypton framework.
- Create a configuration file (e.g.,
config.yaml
) for your model:
krypton:
models:
- name: langchain-example # Name of the model
type: langchain # Currently only LangChain is supported
module_path: ./examples # Path to the directory containing the parent module
callable: langchain_example.completion.chain # <parent_module>.<module>.<callable>
endpoint: /langchain-example # API endpoint for the model
server:
host: 0.0.0.0 # Host to run the server on
port: 8000 # Port to run the server on
- Run the Krypton ML server with your config file:
krypton config.yaml
This will start a server on http://0.0.0.0:8000
with the specified model endpoint.
Examples
Check out the examples
folder in the repository for LangChain and Ollama based examples:
- Text completion chain
- Chat-based chain
These examples demonstrate how to deploy LangChain models as API endpoints using Krypton ML's config-driven approach.
Contributing
We welcome contributions to Krypton ML! Please feel free to submit issues, fork the repository and send pull requests.
License
This project is licensed under the Apache License 2.0 License - see the LICENSE file for details.
Disclaimer
Krypton ML is currently in an experimental stage. Use in production environments is not recommended without thorough testing and validation.
For more information, visit kryptonhq.com or check out the GitHub repository.
Project details
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
File details
Details for the file krypton_ml-0.1.6.tar.gz
.
File metadata
- Download URL: krypton_ml-0.1.6.tar.gz
- Upload date:
- Size: 9.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.3 Linux/6.8.0-45-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 45dae4b0814ab786d0d6dd0ac98778058f86c148056567f936c938183556cd60 |
|
MD5 | 1ebf361f34b6b649cf3f8a0784b2afc1 |
|
BLAKE2b-256 | 4958dfecf0ace1a74b5b25a773f5058dfb8eb6bcbd48a4a67eeb9307b9b54ead |
File details
Details for the file krypton_ml-0.1.6-py3-none-any.whl
.
File metadata
- Download URL: krypton_ml-0.1.6-py3-none-any.whl
- Upload date:
- Size: 12.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.3 Linux/6.8.0-45-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 505ac5a75b024c73547db11a0ee5cadb3f064813c6302762e71d67216211adaa |
|
MD5 | fd0e3d672c3d20bbf9a150e29c76b8e2 |
|
BLAKE2b-256 | 380b08de5b36dc34a5faa2ac55178ff30fd095fb1a29411f285212a22f327707 |