Skip to main content

SDK for using KBRaiN tools

Project description

KBRaiN SDK API

The KBRaiN SDK API is a Python library that provides a simple interface to interact with the KBRaiN services. It includes methods for account creation, key generation, and interacting with the OpenAI chat service.

Installation

To install the KBRaiN SDK API, use pip:

pip install kbrainsdk

Usage

See the kbrainsdk/examples/example.ipynb Jupyter notebook for more examples.

Here are a few:

First, import the library and create an instance of the API client:

from kbrainsdk.api import KBRaiNAPI

kbrain = KBRaiNAPI(account_id='your_account_id', api_key='your_api_key', base_url="kbrain_base_url")

We recommend using environment variables or a tool like Azure Key Vault to inject your api key, do not commit your api key to any source control for security reasons.

You can also skip passing in values to the constructor and KBRaiN will reference your environment variables if they are defined with the following names:

KBRAIN_BASE_URL
KBRAIN_ACCOUNT_ID
KBRAIN_API_KEY

OpenAI Chat

To interact with the OpenAI chat API, use the openai_chat method. This method takes the same arguments as the OpenAI API as of version 1.3.3. You can see the API documentation at OpenAI for details.

Here is an example:

messages = [{
    'role': 'system',
    'content': 'You are a helpful assistant.'
}, {
    'role': 'user',
    'content': 'What is the air speed velocity of an unladen swallow?'
}]

model_name = 'gpt-3.5-turbo'  # Replace with the model name in the targeted Azure OpenAI Resource. This should be chat for gpt-3x and chat-4 for gpt4. 
model_type = 'openai'  # Replace with your model type
deployment_id = 'chat'

response = kbrain.llms.openai_chat(messages, model_name, model_type, deployment_id)

print(response["response"])
print(response["tokens"])

OpenAI Completion

To interact with the OpenAI completions API, use the openai_completion method. This method takes the same arguments as the OpenAI API as of version 1.3.3. You can see the API documentation at OpenAI for details.

Here is an example:

prompt = "Translate this into Spanish: Hello World!"
model_name = 'gpt-3.5-instruct'  # Replace with the model name in the targeted Azure OpenAI Resource. This should be chat for gpt-3x and chat-4 for gpt4. 
model_type = 'openai'  # Replace with your model type
deployment_id = 'instruct'

response = kbrain.llms.openai_completion(prompt, model_name, model_type, deployment_id)

print(response["response"])
print(response["tokens"])

Dataset Features

To interact with the Dataset features, follow the example below:

email = "<your users email>"
token = "<your users authentication token into your app>"
client_id = "<your apps client_id>"
oauth_secret = "<your apps oauth secret>"
tenant_id = "<your apps tenant id>"
response = kbrain.datasets.list_datasets(email, token, client_id, oauth_secret, tenant_id)

License

Copyright 2023, KBR Inc.

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

kbrainsdk-0.7.2.tar.gz (11.9 kB view details)

Uploaded Source

Built Distribution

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

kbrainsdk-0.7.2-py3-none-any.whl (16.4 kB view details)

Uploaded Python 3

File details

Details for the file kbrainsdk-0.7.2.tar.gz.

File metadata

  • Download URL: kbrainsdk-0.7.2.tar.gz
  • Upload date:
  • Size: 11.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.11.6 Linux/5.15.146.1-microsoft-standard-WSL2

File hashes

Hashes for kbrainsdk-0.7.2.tar.gz
Algorithm Hash digest
SHA256 95598b7d5c2670d320e4838da1d7a6f612cfd6b25f93f78a51307d590f07846d
MD5 c3c42d89430304c57a46fe5bc118bfcf
BLAKE2b-256 afeaf1cc79a508b9e22b8d78567a721a5831750519e85e216dbc329a6a12ef55

See more details on using hashes here.

File details

Details for the file kbrainsdk-0.7.2-py3-none-any.whl.

File metadata

  • Download URL: kbrainsdk-0.7.2-py3-none-any.whl
  • Upload date:
  • Size: 16.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.11.6 Linux/5.15.146.1-microsoft-standard-WSL2

File hashes

Hashes for kbrainsdk-0.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 300da0eb4b4274f1cdd59043027206c16648106d71ea693a6967d62249331028
MD5 fdc22016240fb4ebe59a1485aa3caf68
BLAKE2b-256 a2786bcafe0f46f95c1c9cf3a82c2f994cafc16574bdbda322f01de40d5b97f6

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