https://github.com/graphistry/louie-py
https://github.com/graphistry/louie-py
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/graphistry/louie-py
- Owner: graphistry
- License: apache-2.0
- Created: 2025-07-26T04:39:29.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-08-04T14:08:34.000Z (10 months ago)
- Last Synced: 2025-08-04T18:11:21.060Z (10 months ago)
- Language: Python
- Size: 526 KB
- Stars: 6
- Watchers: 0
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# LouieAI Python Client
[](https://github.com/graphistry/louie-py/actions/workflows/ci.yml)
[](https://pypi.org/project/louieai/)
[](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!](https://www.loom.com/share/8d84c9abc0e34df6b233bd7b2e10af9a?sid=4a87707a-79e6-416b-a628-01b5c31c7db3)
## 🚀 Get Started in 30 Seconds
```python
# 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 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
```bash
pip install louieai
```
### Authentication
LouieAI uses PyGraphistry for authentication. You'll need a free account:
1. **Get PyGraphistry credentials** at [hub.graphistry.com](https://hub.graphistry.com) (free signup)
2. **Set environment variables** or authenticate in code:
```bash
# 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"
```
```python
# 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
```python
# 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
- [User Guide](https://louie-py.readthedocs.io) - Complete usage examples and tutorials
- [API Reference](https://louie-py.readthedocs.io/en/latest/api/) - Detailed API documentation
- [Examples](https://louie-py.readthedocs.io/en/latest/examples/) - Common patterns and use cases
## Links
- [Louie.ai Platform](https://louie.ai) - Learn about LouieAI
- [PyGraphistry](https://github.com/graphistry/pygraphistry) - Required for authentication
- [Support](https://github.com/graphistry/louie-py/issues) - Report issues or get help
## Contributing
We welcome contributions! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
**For developers**: Check out [DEVELOP.md](DEVELOP.md) for technical setup and development workflow.
## License
Apache 2.0 - see [LICENSE](LICENSE)