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="<your-password>"    # 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="password123"  # example password
)

# 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="password123"  # example password
)

# 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.7.0.tar.gz (513.9 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.7.0-py3-none-any.whl (52.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for louieai-0.7.0.tar.gz
Algorithm Hash digest
SHA256 115ce683426a9af5304bcdca63ad0eccd8d40b14c2d2e2feef821c7d01179b3f
MD5 fe7ccb224ac829c4c4f13832a0ac56d2
BLAKE2b-256 5d1c3bc6c4983bca2180616398d87bf1a17379e49ee85c4d946b67f45df5506b

See more details on using hashes here.

Provenance

The following attestation bundles were made for louieai-0.7.0.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.7.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for louieai-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 04ecef34344f5d926485d3b5425eab329ab344393f8e136958a9432d571cb59a
MD5 426fa073810099faf19f60c264252c77
BLAKE2b-256 f29f424312f10c74db66964e7ba4cd08a479e97188a28e8f723a63dc8bea3bd6

See more details on using hashes here.

Provenance

The following attestation bundles were made for louieai-0.7.0-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