Skip to main content

Convenient access to the NextBrain API from python

Project description

NextBrain AI

Convenient access to the NextBrain AI API from python

Installation

pip install nextbrain

If you want to use the async version you need to install asyncio and aiohttp:

pip install asyncio aiohttp

Normal usage

All steps in one.

from nextbrain import NextBrain
from typing import Any, List

def main():
    nb = NextBrain('<YOUR-ACCESS-TOKEN-HERE>')

    # You can create your custom table and predict table by your own from any source
    # It is a list of list, where the first row contains the header
    # Example:
    # [
    #   [ Column1, Column2, Column3 ],
    #   [       1,       2,       3 ],
    #   [       4,       5,       6 ]
    # ]
    table: List[List[Any]] = nb.load_csv('<PATH-TO-YOUR-TRAINING-CSV>')
    predict_table: List[List[Any]] = nb.load_csv('<PATH-TO-YOUR-PREDICTING-CSV>')

    model_id, response = nb.upload_and_predict(table, predict_table, '<YOUR-TARGET-COLUMN>')
    # model_id is also returned in order to predict multiple times against same model
    print(response)

if __name__ == '__main__':
    main()

Step by step

from nextbrain import NextBrain
from typing import Any, List

def main():
    nb = NextBrain('<YOUR-ACCESS-TOKEN-HERE>')

    # You can create your custom table and predict table by your own from any source
    table: List[List[Any]] = nb.load_csv('<PATH-TO-YOUR-TRAINING-CSV>')
    # Upload the model to NextBrain service
    model_id: str = nb.upload_model(table)
    # Train the model
    # You can re-train a previous model
    nb.train_model(model_id, '<YOUR-TARGET-COLUMN>')

    predict_table: List[List[Any]] = nb.load_csv('<PATH-TO-YOUR-PREDICTING-CSV>')
    # You can predict multiple using the same model (don't need to create a new model each time)
    response = nb.predict_model(model_id, predict_table)
    print(response)

if __name__ == '__main__':
    main()

Async usage

All steps in one.

from nextbrain import AsyncNextBrain
from typing import Any, List

async def main():
    nb = AsyncNextBrain('<YOUR-ACCESS-TOKEN-HERE>')

    # You can create your custom table and predict table by your own from any source
    table: List[List[Any]] = nb.load_csv('<PATH-TO-YOUR-TRAINING-CSV>')
    predict_table: List[List[Any]] = nb.load_csv('<PATH-TO-YOUR-PREDICTING-CSV>')

    model_id, response = await nb.upload_and_predict(table, predict_table, '<YOUR-TARGET-COLUMN>')
    # model_id is also returned in order to predict multiple times against same model
    print(response)

if __name__ == '__main__':
    import asyncio
    asyncio.run(main())

Step by step

from nextbrain import AsyncNextBrain
from typing import Any, List

async def main():
    nb = AsyncNextBrain('<YOUR-ACCESS-TOKEN-HERE>')

    # You can create your custom table and predict table by your own from any source
    table: List[List[Any]] = nb.load_csv('<PATH-TO-YOUR-TRAINING-CSV>')
    # Upload the model to NextBrain service
    model_id: str = await nb.upload_model(table)
    # Train the model
    # You can re-train a previous model
    await nb.train_model(model_id, '<YOUR-TARGET-COLUMN>')

    predict_table: List[List[Any]] = nb.load_csv('<PATH-TO-YOUR-PREDICTING-CSV>')
    # You can predict multiple using the same model (don't need to create a new model each time)
    response = await nb.predict_model(model_id, predict_table)
    print(response)

if __name__ == '__main__':
    import asyncio
    asyncio.run(main())

Extra notes

Everytime you train, you can select an option to create lightning models. is_lightning is an optional parameter that by default is set to False but can be overrided in train_model and upload_and_predict.

We also recommend that you investigate all the methods that the class provides you with to make the most of the functionalities we offer. For example, you can use the get_accuracy method to obtain all the information about the performance of your model.

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

nextbrain-1.1.0.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nextbrain-1.1.0-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file nextbrain-1.1.0.tar.gz.

File metadata

  • Download URL: nextbrain-1.1.0.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.2 CPython/3.10.6 Linux/5.19.0-32-generic

File hashes

Hashes for nextbrain-1.1.0.tar.gz
Algorithm Hash digest
SHA256 78168546f1c340fd02346563c0813c970add5ecc6847102c483977de089b93d5
MD5 e531bd6ffd22d6aaa57abf2f458e555b
BLAKE2b-256 f8bbec41e607c9e06923ec8c8c305c25f4bd2ff4bc40ad77d2678efa0711142f

See more details on using hashes here.

File details

Details for the file nextbrain-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: nextbrain-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.2 CPython/3.10.6 Linux/5.19.0-32-generic

File hashes

Hashes for nextbrain-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 08c8c63dc29e7402d29e006290d6954dbe2a4183908133738a9333c606319ffc
MD5 2fad269d204a3df08cab46f05683e88d
BLAKE2b-256 bb98983c05f6235f5ff5539dc960f9033b99e9ac014bd88eb46b2b780d554fd1

See more details on using hashes here.

Supported by

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