Skip to main content

A library for training and using risk & impactability models on Curia

Project description

PyPI version

Python 3.6 Python 3.7 Python 3.8

Quality Gate Status Bugs Coverage Maintainability Rating Reliability Rating Security Rating Vulnerabilities

Release

Curia Python SDK

Curia Python SDK is a library for training and using risk & impactability models on Curia.

For detailed documentation, including the API reference, see our docs at https://foundryai.github.io/curia-python-sdk/.

Installing the Curia Python SDK

The Curia Python SDK is built to PyPi and can be installed with pip as follows:

pip install curia

You can install from source by cloning this repository and running a pip install command in the root directory of the repository:

git clone https://github.com/FoundryAI/curia-python-sdk.git
cd curia-python-sdk
pip install .
Supported Operating Systems

Curia Python SDK supports Unix/Linux and Mac.

Supported Python Versions

Curia Python SDK is tested on:

  • Python 3.7
  • Python 3.8
Curia Permissions

Curia Python SDK will utilize the Curia Platform when training models and generating predictions. You will need access to the platform with appropriate permissions to fully utilize the SDK.

Running tests

Curia Python SDK has unit tests. To run the tests:

python setup.py pytest
Building Sphinx docs

Curia Python SDK has Sphinx docs. To build the docs run:

cd doc
make html

To preview the site with a Python web server:

cd docs/_build/html
python -m http.server 8000

View the docs by visiting http://localhost:8080

Curia API Token

To use the Curia Python SDK you will need a Curia API Token. To access your API Token visit https://app.curia.ai/settings.

Use gnu-sed

Visit https://medium.com/@bramblexu/install-gnu-sed-on-mac-os-and-set-it-as-default-7c17ef1b8f64 to see how to install gnu-sed for consistency in fixing swagger imports export PATH="/usr/local/opt/gnu-sed/libexec/gnubin:$PATH"

Using the Curia Python SDK

from curia.session import Session
from curia.risk import RiskModel
from curia.synthetic_data import generate_data

# Create synthetic data (demo/testing purposes only)
(X_train, X_test, _, _, y_train, y_test, _, _, _, _) = generate_data(binary_outcome=True)

# Create a session
curia_session = Session(api_token="YOUR_API_TOKEN")

# Instantiate a model
model = RiskModel(
    session=curia_session, 
    name="your-model-name",
    project_id="YOUR_PROJECT_ID",
    environment_id="YOUR ENVIRONMENT_ID"
)

# Train a model on the Curia Platform
model.train(features=X_train, label=y_train)

# Get predictions from your model on the Curia Platform
predictions = model.predict(features=X_test)

Cut your own release (not recommended)

Sometimes we may have updates that are currently in the development environment, but not accessible in production yet. When this happens, the SDK will not reflect the latest changes in develop. To be able to use new features of the API, you can cut a new release of the SDK and use the latest version.

BE CAREFUL - MAKE SURE YOU KNOW WHY YOU ARE DOING THIS

To cut a new release based on the Dev API, run make build-api-dev. In order to get some sed commands to work on Mac, you may need to install and use Gnu-Sed

First, update the version in src/curia/__init__.py Then build the source distribution: python setup.py sdist bdist_wheel Finally, upload the new distribution to pypi: python -m twine upload dist/* You will be prompted for a username and password.

  • Your username is __token__
  • Your password is stored in 1Password in the Curia vault in the PyPi Curia Project secure document

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

curia-0.0.73.tar.gz (85.7 kB view details)

Uploaded Source

Built Distribution

curia-0.0.73-py2.py3-none-any.whl (255.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file curia-0.0.73.tar.gz.

File metadata

  • Download URL: curia-0.0.73.tar.gz
  • Upload date:
  • Size: 85.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.10

File hashes

Hashes for curia-0.0.73.tar.gz
Algorithm Hash digest
SHA256 450b078e44b74c602b21f4beaf66635a36eee8c6973aa89a00d2aa1e8a8c6abf
MD5 5510e09b0d5a81a38633797492fca1e8
BLAKE2b-256 d4976882dcd0cb69562a4869849fa17c4a5852707b7463e0143a99e23301236d

See more details on using hashes here.

File details

Details for the file curia-0.0.73-py2.py3-none-any.whl.

File metadata

  • Download URL: curia-0.0.73-py2.py3-none-any.whl
  • Upload date:
  • Size: 255.4 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.10

File hashes

Hashes for curia-0.0.73-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 734f3ad6a3165e49addd6bd485e1c34fc01ed2e16d6e71db5a7195ae62e71aeb
MD5 4f210dc664ddaad5c94526f7d683deed
BLAKE2b-256 590fa8d82e898b851b6e589d7fec7a3b67b4a88c7ce25b3a78bd428135718d53

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page