InsightSolver is a solution for advanced data insights powered by a centralized cloud-based rule-mining engine. It enables organizations to uncover hidden patterns, generate actionable insights, and make smarter data-driven decisions. This repository hosts the Python-based InsightSolver API client.
To get started, you need the following:
- The
insightsolverPython module installed. - A service key.
- Credits to use the API.
You can install the insightsolver Python module directly from PyPI:
pip install insightsolverOr for the latest development version from GitHub:
pip install git+https://github.com/insightsolver/insightsolver.git# Import dataimportpandasaspddf=pd.read_csv('kaggle_titanic_train.csv',index_col='PassengerId')
# Declare a solverfrominsightsolverimportInsightSolversolver=InsightSolver(
df=df,
target_name='Survived',
target_goal=1,
)
# Fit the solversolver.fit(
service_key='your_service_key.json',
)
# Print the resultsolver.print()
# Plot the resultsolver.plot()A demo can also be found in here
The API charges usage based on the size of the dataset you submit. The number of credits is calculated as:
credits=ceil(m*n/10000)where:
mis the number of rows (excluding the header),nis the number of feature columns (excluding the index column, the target column and other ignored columns),ceilis the mathematical ceiling function (rounds up to the next integer).
Here are some examples:
Rows (m) | Columns (n) | Computation | Credits Charged |
|---|---|---|---|
| 1000 | 10 | ceil(1000*10/10000) | 1 |
| 10000 | 25 | ceil(10000*25/10000) | 25 |
| 20000 | 100 | ceil(20000*100/10000) | 200 |
For reference, the Titanic training dataset from Kaggle has m=891 rows and n=9 feature columns (excluding
PassengerIdandSurvived), which results in:ceil(891*9/10000) =1creditSo you can think of 1 credit as roughly "one Titanic" in size.
Tips to reduce credit usage:
- Remove unused or irrelevant columns or set them to
'ignore', - Filter the rows of the dataset,
- Samples the rows of the dataset.
Comprehensive technical documentation for the insightsolver module is available here:
Here you'll find the changelog.
- Python 3.9 or higher
- pandas, numpy, requests, google-auth, cryptography, mpmath, etc..
The InsightSolver API client library is licensed under the Apache License 2.0:
- You can use, modify, and redistribute it freely in your projects, including commercial ones.
- This software is provided ‘as-is’, without warranty of any kind, express or implied, including but not limited to merchantability or fitness for a particular purpose.
See the full LICENSE file for details.
Note: The InsightSolver API server is proprietary and requires a valid subscription to use. The InsightSolver API client library provides a client interface only; usage of the server is subject to our terms of service.
The client-side API module (installable via pip) uses third-party open-source Python packages.
To ensure transparency and comply with licensing requirements, we provide a complete list of these dependencies in THIRD_PARTY_LICENSES.csv. The file includes:
- Package name and version
- License type
- Link to the package’s source or homepage
All third-party libraries are used unmodified and installed directly from PyPI.
This information is provided to help users and organizations verify compliance with open-source licenses when integrating the client library into their projects.
- Email support@insightsolver.com
- Official website: insightsolver.com
- GitHub website: insightsolver.github.io