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.2.tar.gz (7.5 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.2-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: snowleopard-0.3.2.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.3

File hashes

Hashes for snowleopard-0.3.2.tar.gz
Algorithm Hash digest
SHA256 d39abccfb9a7eb8104da41bd813d0970fce25ce149bfebd796ae12f0f0c5f0dd
MD5 d0cde9acd97d56d1eaf7a681aeb87c24
BLAKE2b-256 ff17074553e4b9927bddfabe237fb1466bdadd7fe6c103ea3520732d673bdca0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for snowleopard-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bc728f07c185681451772927085cfed2ccf02e9232bcd2ad7292795001550420
MD5 0865068576d6c2d88c7a2c6304a23505
BLAKE2b-256 f86da3fd53dbcc8b4cc880aa4ececcf4a6f6ce15444b2458a9e7d30b4f833f3d

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