Skip to main content

Python client for Louie.ai (Graphistry's AI investigation platform)

Project description

LouieAI Python Client

CI PyPI Version License

AI-powered investigation platform for natural language data analysis.

https://github.com/user-attachments/assets/de73f7b3-2862-4298-b9d8-2d38426ab255

Video: Louie <> Graphistry - Python edition!

🚀 Get Started in 30 Seconds

# 1. Install
# pip install louieai

# 2. Authenticate with your PyGraphistry server
import graphistry
graphistry.register(
    api=3,
    server="hub.graphistry.com",  # or your enterprise server
    username="bob@company.com",   # your actual username
    password="MySecurePass456!"   # your actual password
)

# 3. Start analyzing with natural language
from louieai.notebook import lui
lui("Show me all suspicious transactions from the last week")

# 4. Access the results
print(lui.text)  # Natural language explanation
df = lui.df      # Pandas DataFrame with the data

Install & Authenticate

pip install louieai

Authentication

LouieAI uses PyGraphistry for authentication. You'll need a free account:

  1. Get PyGraphistry credentials at hub.graphistry.com (free signup)
  2. Set environment variables or authenticate in code:
# Option 1: Environment variables (recommended for notebooks/scripts)
export GRAPHISTRY_USERNAME="sarah@analytics.com"
export GRAPHISTRY_PASSWORD="Analytics2024!"
export GRAPHISTRY_SERVER="hub.graphistry.com"  # or "my-company.graphistry.com"

# Optional: Custom Louie endpoint (defaults to https://louie.ai)
export LOUIE_URL="https://louie-enterprise.company.com"
# Option 2: Authenticate in code
import graphistry
graphistry.register(
    api=3, 
    server="hub.graphistry.com",  # or your enterprise server
    username="mike@investigations.org", 
    password="Secure123!"
)

# Optional: Use custom Louie server
from louieai import LouieClient
client = LouieClient(
    server_url="https://louie.ai",  # Louie service endpoint (default)
    server="hub.graphistry.com"      # PyGraphistry server (default)
)

Quick Start

# First, authenticate with your PyGraphistry server
import graphistry
graphistry.register(
    api=3,
    server="hub.graphistry.com",  # or your private server
    username="alice@example.com",
    password="SecurePassword123!"
)

# Now import and use LouieAI (two options)

# Option 1: New clean import (recommended)
import louieai
lui = louieai()  # Automatically uses PyGraphistry auth

# Option 2: Traditional import
from louieai.notebook import lui

# Ask questions in natural language  
lui("Find accounts sharing payment methods or shipping addresses")

# Get fraud insights instantly
print(lui.text)
# Output: "Found 23 suspicious account clusters sharing payment/shipping details:
# 
# **Payment Card Sharing**:
# • Card ending 4789: Used by 8 different accounts in 3 days
# • Card ending 2156: 5 accounts, all created within same hour
# 
# **Address Clustering**:
# • 123 Oak St: 12 accounts using same shipping address
# • suspicious_email@temp.com: 7 accounts with similar email patterns
# 
# **Risk Assessment**: 67% likely promotional abuse, 23% payment fraud"

# Access the connection data
clusters_df = lui.df
if clusters_df is not None:
    print(clusters_df.head())
    #     account_id shared_payment shared_address  cluster_size  risk_score
    # 0   user_1234      card_4789    123_oak_st            12        7.2
    # 1   user_5678      card_4789    456_elm_ave            8        6.8  
    # 2   user_9012      card_2156    123_oak_st            5        8.1

Documentation

Links

Contributing

We welcome contributions! See CONTRIBUTING.md for guidelines.

For developers: Check out DEVELOP.md for technical setup and development workflow.

License

Apache 2.0 - see LICENSE

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

louieai-0.5.3.tar.gz (377.5 kB view details)

Uploaded Source

Built Distribution

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

louieai-0.5.3-py3-none-any.whl (34.7 kB view details)

Uploaded Python 3

File details

Details for the file louieai-0.5.3.tar.gz.

File metadata

  • Download URL: louieai-0.5.3.tar.gz
  • Upload date:
  • Size: 377.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for louieai-0.5.3.tar.gz
Algorithm Hash digest
SHA256 5a7d6def20c2b8e74e2a6e8903289427b26ca5417e9f2c9f998f5e77b1c01693
MD5 1d1b765eeef42ccb82874c92d9a41b96
BLAKE2b-256 79011a6c880e53cf1438119fc42bfecbcc6e6ee42cff1a5d3db56c0024a8367a

See more details on using hashes here.

Provenance

The following attestation bundles were made for louieai-0.5.3.tar.gz:

Publisher: publish.yml on graphistry/louie-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file louieai-0.5.3-py3-none-any.whl.

File metadata

  • Download URL: louieai-0.5.3-py3-none-any.whl
  • Upload date:
  • Size: 34.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for louieai-0.5.3-py3-none-any.whl
Algorithm Hash digest
SHA256 0bb84b35d535e363aff4e4ee7c2054ee2858453525d92a1b491a3396c0cbe04a
MD5 bad8fc71b11e7f76a0bf91e457669ced
BLAKE2b-256 36ab9f00aedf18e95e4d24e5a24787992095dd635770eea19dc578da0a26442c

See more details on using hashes here.

Provenance

The following attestation bundles were made for louieai-0.5.3-py3-none-any.whl:

Publisher: publish.yml on graphistry/louie-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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