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

Uploaded Python 3

File details

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

File metadata

  • Download URL: louieai-0.7.1.tar.gz
  • Upload date:
  • Size: 514.4 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.1.tar.gz
Algorithm Hash digest
SHA256 d356388b4ba16a8b10b23c709b6400fac58f85caf633b877e607a6381a8a20e8
MD5 2443d8616f156e513e078d7da396a1e7
BLAKE2b-256 7a895893318bcedeedac52ec152618eab991e95865dc69f02c9c13236b7410c3

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: louieai-0.7.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b1628f7918409668dd8d8317ac143bd62c3eb8418cfd7c7a02ca19e101aff658
MD5 02cc34a0f3aae773b67038695b9c87af
BLAKE2b-256 c4c40cc7bed983c43317a79c068c774684ccd732d9e04372f2221382941c63a3

See more details on using hashes here.

Provenance

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