Skip to main content

snowleopard.ai client library

Project description

Snow Leopard SDK for Python

This repo contains the Python client library for Snow Leopard Playground APIs.

See our API documentation for more details.

Installation

pip install snowleopard

Quick Start

from snowleopard import SnowLeopardClient

# Initialize the client (or AsyncSnowLeopardClient)
client = SnowLeopardClient(api_key="your-api-key")

# Query your data in natural language
response = client.retrieve(user_query="How many users signed up last month?", datafile_id="your-datafile-id")

Getting Started

  1. Get your API key from https://auth.snowleopard.ai/account/api_keys

  2. Upload your datafiles at https://try.snowleopard.ai

  3. Set your API key via environment variable:

    export SNOWLEOPARD_API_KEY="your-api-key"
    

    Or pass it directly to the client:

    SnowLeopardClient(api_key="your-api-key")
    

Usage

Synchronous Client

from snowleopard import SnowLeopardClient

with SnowLeopardClient() as client:
   # Get data directly from a natural language query
   response = client.retrieve(user_query="How many superheroes are there?")
   print(response.data)

   # Stream natural language summary of live data
   for chunk in client.response(user_query="How many superheroes are there?"):
      print(chunk)

Async Client

from snowleopard import AsyncSnowLeopardClient

async with AsyncSnowLeopardClient() as client:
   # Get complete results
   response = await client.retrieve(user_query="How many superheroes are there?")
   print(response.data)

   # Get streaming results
   async for chunk in client.response(user_query="How many superheroes are there?"):
      print(chunk)

CLI

The SDK includes a command-line interface:

pip install snowleopard
snowy retrieve --datafile <datafile-id> "How many records are there?"
snowy response --datafile <datafile-id> "Summarize the data"

On Premise Customers

For our customers who have a separate deployment per dataset, you should declare explicitly when creating a client and omit when querying.

Example:

client = SnowLeopardClient(url="https://{your-vm-ip}:{port}", api_key="your-api-key")
response = client.retrieve(user_query="How many users signed up last month?")

Contributing

For SDK developer docs and how to contribute, see CONTRIBUTING.md

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

snowleopard-0.3.0.tar.gz (7.1 kB view details)

Uploaded Source

Built Distribution

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

snowleopard-0.3.0-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

File details

Details for the file snowleopard-0.3.0.tar.gz.

File metadata

  • Download URL: snowleopard-0.3.0.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for snowleopard-0.3.0.tar.gz
Algorithm Hash digest
SHA256 50358d439c2b15f17e99ab6733ed06dc911500600e6b0cc7a1a614bdac22df74
MD5 50fb2c75bd26ddbd6093bcf9272cf6fc
BLAKE2b-256 bacefde984b1fe5b7152cc07af1264e320dfd8b4005e20532685032bc26ae01a

See more details on using hashes here.

File details

Details for the file snowleopard-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: snowleopard-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 10.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for snowleopard-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6848a53b52fc6191a4cdf70588b5e72e4c5737bc0fdb0ee300cf4aad76dc2d72
MD5 d5305964af37d8806c81f0de37564112
BLAKE2b-256 920358593ad9e583573ee6996efb157b15f027472321b012da9f84155d41c7f7

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