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
-
Get your API key from https://auth.snowleopard.ai/account/api_keys
-
Upload your datafiles at https://try.snowleopard.ai
-
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d39abccfb9a7eb8104da41bd813d0970fce25ce149bfebd796ae12f0f0c5f0dd
|
|
| MD5 |
d0cde9acd97d56d1eaf7a681aeb87c24
|
|
| BLAKE2b-256 |
ff17074553e4b9927bddfabe237fb1466bdadd7fe6c103ea3520732d673bdca0
|
File details
Details for the file snowleopard-0.3.2-py3-none-any.whl.
File metadata
- Download URL: snowleopard-0.3.2-py3-none-any.whl
- Upload date:
- Size: 10.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bc728f07c185681451772927085cfed2ccf02e9232bcd2ad7292795001550420
|
|
| MD5 |
0865068576d6c2d88c7a2c6304a23505
|
|
| BLAKE2b-256 |
f86da3fd53dbcc8b4cc880aa4ececcf4a6f6ce15444b2458a9e7d30b4f833f3d
|