| Name | olakai-sdk JSON |
| Version |
0.4.0
JSON |
| download |
| home_page | None |
| Summary | A Python SDK for monitoring function calls and controlling execution with real-time API decisions |
| upload_time | 2025-10-24 18:14:06 |
| maintainer | None |
| docs_url | None |
| author | None |
| requires_python | >=3.7 |
| license | None |
| keywords |
monitoring
ai
ml
api
sdk
olakai
|
| VCS |
 |
| bugtrack_url |
|
| requirements |
No requirements were recorded.
|
| Travis-CI |
No Travis.
|
| coveralls test coverage |
No coveralls.
|
# Olakai Python SDK
**The simplest way to monitor your AI/ML applications** - Track every prompt, response, and interaction with just one line of code.
[](https://badge.fury.io/py/olakai-sdk)
[](https://www.python.org/)
[](https://choosealicense.com/licenses/mit/)
---
## What This Does
Transform any Python function into a monitored AI interaction with **zero configuration**. Perfect for:
- **AI/LLM Applications** - Monitor OpenAI, Anthropic, or any AI model calls
- **Analytics & Insights** - Track usage patterns, performance, and user behavior
- **Content Safety** - Detect and block inappropriate content automatically
- **User Management** - Track individual users and their AI interactions
- **Business Intelligence** - Understand how your AI features are being used
---
## Quick Start (30 seconds)
```python
from olakaisdk import olakai_config, olakai_monitor
# 1. Initialize (one time setup)
olakai_config("your-api-key", "https://your-domain.ai")
# 2. Wrap any function (that's it!)
@olakai_monitor()
def my_ai_function(prompt: str):
# Your AI logic here
return f"AI response to: {prompt}"
# 3. Use normally - monitoring happens automatically
result = my_ai_function("Hello world!")
```
**That's it!** Your function is now being monitored. Check your [Olakai dashboard](https://app.olakai.ai) to see the data.
---
## Installation
```bash
pip install olakaisdk
```
**Requirements:** Python 3.7+ and `requests` library (installed automatically)
---
## Real-World Examples
### OpenAI Integration
```python
from olakaisdk import olakai_config, olakai_monitor
from openai import OpenAI
# Setup
olakai_config("your-olakai-key", "https://your-domain.ai")
client = OpenAI(api_key="your-openai-key")
# Monitor your AI calls
@olakai_monitor(
userEmail="user@example.com",
task="Customer Support",
customDimensions={"dim1": "gpt-4", "dim2": "support"},
customMetrics={"metric1": 150, "metric2": 2.3}
)
def get_ai_response(user_question: str) -> str:
response = client.chat.completions.create(
model="gpt-4",
messages=[{"role": "user", "content": user_question}],
max_tokens=200
)
return response.choices[0].message.content
# Use it!
answer = get_ai_response("How do I reset my password?")
```
### E-commerce AI Assistant
```python
@olakai_monitor(
userEmail=lambda args: get_user_email(args[0]), # Dynamic user email
chatId=lambda args: get_session_id(args[0]), # Dynamic session
task="Customer Experience",
subTask="customer service",
customDimensions={"dim1": "premium", "dim2": "fashion"},
customMetrics={"metric1": 5, "metric2": 0.23}
)
def recommend_products(user_id: str, preferences: dict) -> list:
# Your recommendation logic
return ["Product A", "Product B", "Product C"]
```
### Email AI Writer
```python
@olakai_monitor(
task="Communication Strategy",
subTask="communication/persuasion",
customDimensions={"dim1": "promotional", "dim2": "existing_customers"},
customMetrics={"metric1": 250, "metric2": 0.8}
)
def generate_email_campaign(topic: str, tone: str) -> str:
# Your email generation logic
return f"Subject: {topic}\n\nDear Customer, ..."
```
---
## Advanced Features
### Custom Dimensions & Metrics
Track any data you want alongside your AI interactions:
```python
@olakai_monitor(
# String dimensions (categorical data)
customDimensions={"dim1": "gpt-4", "dim2": "production", "dim3": "premium", "dim4": "en"},
# Numeric metrics (quantitative data)
customMetrics={"metric1": 150, "metric2": 2.5, "metric3": 0.95, "metric4": 0.02}
)
def advanced_ai_function(prompt: str) -> str:
return "AI response"
```
### User Tracking
Track individual users and their AI interactions:
```python
@olakai_monitor(
userEmail="john.doe@company.com", # User email
chatId="session-abc123", # Session/conversation ID
task="Personal Productivity",
subTask="email management"
)
def personal_assistant(user_request: str) -> str:
return "Assistant response"
```
### Direct Reporting
Report events manually without decorators:
```python
from olakaisdk import olakai_report
olakai_report(
prompt="User asked about pricing",
response="Here are our pricing plans...",
options={
"userEmail": "user@example.com",
"chatId": "pricing-session-123",
"task": "Sales Support",
"customDimensions": {"dim1": "pricing"},
"customMetrics": {"metric1": 1.2}
}
)
```
### Low-Level Event Tracking
For maximum control:
```python
from olakaisdk import olakai, OlakaiEventParams
params = OlakaiEventParams(
prompt="Custom prompt",
response="Custom response",
userEmail="user@example.com",
chatId="custom-session",
task="Custom Task",
customDimensions={"dim1": "lowlevel"},
customMetrics={"metric1": 0.85},
shouldScore=True,
tokens=100,
requestTime=500
)
olakai("ai_activity", "custom_event", params)
```
---
## Configuration Options
### Basic Setup
```python
from olakaisdk import olakai_config
# Simple setup
olakai_config("your-api-key")
# With custom endpoint
olakai_config("your-api-key", "https://your-domain.ai")
# With debug logging
olakai_config("your-api-key", "https://your-domain.ai", debug=True)
```
### Monitor Options
| Option | Type | Description | Example |
| ------------------ | ------ | ----------------------- | -------------------- |
| `userEmail` | `str` | User email for tracking | `"user@example.com"` |
| `chatId` | `str` | Session/conversation ID | `"session-123"` |
| `task` | `str` | Task category | `"Customer Support"` |
| `subTask` | `str` | Specific task | `"password-reset"` |
| `customDimensions` | `dict` | String metadata | `{"dim1": "gpt-4"}` |
| `customMetrics` | `dict` | Numeric data | `{"metric1": 150}` |
| `shouldScore` | `bool` | Enable content scoring | `True` |
---
## Migration from v0.3.x
**This is a breaking change** - the SDK has been completely simplified!
### Old Way (v0.3.x)
```python
from olakaisdk import init_olakai_client, olakai_supervisor
# Complex setup
init_olakai_client("api-key", "domain", debug=True, batchSize=10, enableStorage=True)
# Complex decorator
@olakai_supervisor(
sanitize=True,
priority="high",
send_on_function_error=True
)
def old_function():
pass
```
### New Way (v0.4.0)
```python
from olakaisdk import olakai_config, olakai_monitor
# Simple setup
olakai_config("api-key", "https://domain.ai", debug=True)
# Simple decorator
@olakai_monitor(
userEmail="user@example.com",
customDimensions={"dim1": "production"}
)
def new_function():
pass
```
### Migration Steps
1. **Replace initialization:**
- `init_olakai_client()` → `olakai_config()`
2. **Replace decorator:**
- `@olakai_supervisor()` → `@olakai_monitor()`
3. **Update parameters:**
- Use `customDimensions={"dim1": "...", "dim2": "..."}` for string data
- Use `customMetrics={"metric1": 1.0, "metric2": 2.0}` for numeric data
- Add `userEmail` and `chatId` for user tracking
4. **Remove complex options:**
- No more `sanitize`, `priority`, `batchSize`, etc.
---
## Troubleshooting
### Common Issues
**"SDK not initialized"**
```python
# Wrong - using functions before setup
from olakaisdk import olakai_monitor
@olakai_monitor() # This will fail
def my_function():
pass
# Correct - setup first
from olakaisdk import olakai_config, olakai_monitor
olakai_config("your-api-key") # Setup first
@olakai_monitor() # Now this works
def my_function():
pass
```
**"Import errors"**
```bash
# Make sure you have the right version
pip install --upgrade olakaisdk
# Check Python version (3.7+ required)
python --version
```
**"API calls not working"**
```python
# Enable debug mode to see what's happening
olakai_config("your-api-key", debug=True)
# Check your API key and endpoint
olakai_config("your-api-key", "https://your-domain.ai", debug=True)
```
**"Monitoring seems slow"**
- Monitoring happens asynchronously and won't slow down your app
- API calls are made in the background
- Check your network connection if issues persist
### Debug Mode
Enable debug mode to see what's happening:
```python
olakai_config("your-api-key", debug=True)
# You'll see output like:
# Olakai SDK initialized with endpoint: https://your-domain.ai
# API call to https://your-domain.ai/api/monitoring/prompt: 200
# API call successful
```
---
## Best Practices
### Do This
- **Start simple:** Begin with `@olakai_monitor()` and add options as needed
- **Use descriptive tasks:** `task="Customer Support"` instead of `task="cs"`
- **Track users:** Always include `userEmail` for user-specific analytics
- **Use custom dimensions:** Track model, environment, user type, etc. with `customDimensions={"dim1": "...", "dim2": "..."}`
- **Use custom metrics:** Track tokens, response time, costs, etc. with `customMetrics={"metric1": 1.0, "metric2": 2.0}`
- **Group related calls:** Use consistent `task` and `subTask` names
### Avoid This
- **Don't monitor everything:** Only monitor important AI interactions
- **Don't put sensitive data in task names:** Use `custom_dimensions` instead
- **Don't monitor auth functions:** Avoid monitoring password/API key handling
- **Don't use the old API:** It's deprecated and will be removed
### Security Tips
- **User emails should match Olakai accounts** for proper user tracking
- **Use custom dimensions** to exclude sensitive parameters with `customDimensions={"dim1": "...", "dim2": "..."}`
- **Never log passwords or API keys** in prompts/responses
- **Consider data privacy** when tracking user interactions
---
## Use Cases
### Enterprise Applications
```python
@olakai_monitor(
userEmail=lambda args: get_user_email(args[0]),
task="Enterprise AI",
subTask="document-analysis",
customDimensions={"dim1": "acme-corp", "dim2": "legal", "dim3": "contract"},
customMetrics={"metric1": 10, "metric2": 0.92}
)
def analyze_document(user_id: str, document: str) -> dict:
# Document analysis logic
return {"summary": "...", "key_points": [...]}
```
### Educational Platforms
```python
@olakai_monitor(
userEmail="student@university.edu",
task="Educational AI",
subTask="homework-help",
customDimensions={"dim1": "computer-science", "dim2": "intermediate", "dim3": "algorithms"},
customMetrics={"metric1": 3, "metric2": 15.5}
)
def help_with_homework(question: str, student_level: str) -> str:
# Educational AI logic
return "Here's how to solve this problem..."
```
### Healthcare Applications
```python
@olakai_monitor(
userEmail="doctor@hospital.com",
task="Medical AI",
subTask="symptom-analysis",
customDimensions={"dim1": "cardiology", "dim2": "adult", "dim3": "routine"},
customMetrics={"metric1": 5, "metric2": 0.88}
)
def analyze_symptoms(symptoms: list, patient_info: dict) -> dict:
# Medical AI logic (with proper compliance)
return {"possible_conditions": [...], "recommendations": [...]}
```
---
## Dashboard & Analytics
After setting up monitoring, visit your [Olakai dashboard](https://app.olakai.ai) to see:
- **Usage Analytics** - Track API calls, users, and trends
- **User Insights** - See individual user behavior and patterns
- **Task Performance** - Monitor different tasks and their success rates
- **Custom Metrics** - View your custom dimensions and metrics
- **Content Safety** - Review flagged content and safety scores
- **Cost Tracking** - Monitor AI usage costs and optimization opportunities
---
## Support & Community
- **Documentation:** [Olakai Docs](https://app.olakai.ai/docs)
- **Support:** [support@olakai.ai](mailto:support@olakai.ai)
- **Issues:** [GitHub Issues](https://github.com/olakai/sdk-python/issues)
- **Examples:** [SDK Examples](https://github.com/olakai/sdk-examples-python)
---
## License
MIT © [Olakai](https://olakai.ai)
---
**Ready to get started?**
```python
from olakaisdk import olakai_config, olakai_monitor
olakai_config("your-api-key")
@olakai_monitor()
def my_first_monitored_function():
return "Hello, monitored world!"
```
**Happy monitoring!**
Raw data
{
"_id": null,
"home_page": null,
"name": "olakai-sdk",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": "monitoring, ai, ml, api, sdk, olakai",
"author": null,
"author_email": "Olakai <support@olakai.ai>",
"download_url": "https://files.pythonhosted.org/packages/2f/31/1ce8519e32de8a7cea5434e03d16ecaad7fe92007cfa0916940371b55ece/olakai_sdk-0.4.0.tar.gz",
"platform": null,
"description": "# Olakai Python SDK\n\n**The simplest way to monitor your AI/ML applications** - Track every prompt, response, and interaction with just one line of code.\n\n[](https://badge.fury.io/py/olakai-sdk)\n[](https://www.python.org/)\n[](https://choosealicense.com/licenses/mit/)\n\n---\n\n## What This Does\n\nTransform any Python function into a monitored AI interaction with **zero configuration**. Perfect for:\n\n- **AI/LLM Applications** - Monitor OpenAI, Anthropic, or any AI model calls\n- **Analytics & Insights** - Track usage patterns, performance, and user behavior\n- **Content Safety** - Detect and block inappropriate content automatically\n- **User Management** - Track individual users and their AI interactions\n- **Business Intelligence** - Understand how your AI features are being used\n\n---\n\n## Quick Start (30 seconds)\n\n```python\nfrom olakaisdk import olakai_config, olakai_monitor\n\n# 1. Initialize (one time setup)\nolakai_config(\"your-api-key\", \"https://your-domain.ai\")\n\n# 2. Wrap any function (that's it!)\n@olakai_monitor()\ndef my_ai_function(prompt: str):\n # Your AI logic here\n return f\"AI response to: {prompt}\"\n\n# 3. Use normally - monitoring happens automatically\nresult = my_ai_function(\"Hello world!\")\n```\n\n**That's it!** Your function is now being monitored. Check your [Olakai dashboard](https://app.olakai.ai) to see the data.\n\n---\n\n## Installation\n\n```bash\npip install olakaisdk\n```\n\n**Requirements:** Python 3.7+ and `requests` library (installed automatically)\n\n---\n\n## Real-World Examples\n\n### OpenAI Integration\n\n```python\nfrom olakaisdk import olakai_config, olakai_monitor\nfrom openai import OpenAI\n\n# Setup\nolakai_config(\"your-olakai-key\", \"https://your-domain.ai\")\nclient = OpenAI(api_key=\"your-openai-key\")\n\n# Monitor your AI calls\n@olakai_monitor(\n userEmail=\"user@example.com\",\n task=\"Customer Support\",\n customDimensions={\"dim1\": \"gpt-4\", \"dim2\": \"support\"},\n customMetrics={\"metric1\": 150, \"metric2\": 2.3}\n)\ndef get_ai_response(user_question: str) -> str:\n response = client.chat.completions.create(\n model=\"gpt-4\",\n messages=[{\"role\": \"user\", \"content\": user_question}],\n max_tokens=200\n )\n return response.choices[0].message.content\n\n# Use it!\nanswer = get_ai_response(\"How do I reset my password?\")\n```\n\n### E-commerce AI Assistant\n\n```python\n@olakai_monitor(\n userEmail=lambda args: get_user_email(args[0]), # Dynamic user email\n chatId=lambda args: get_session_id(args[0]), # Dynamic session\n task=\"Customer Experience\",\n subTask=\"customer service\",\n customDimensions={\"dim1\": \"premium\", \"dim2\": \"fashion\"},\n customMetrics={\"metric1\": 5, \"metric2\": 0.23}\n)\ndef recommend_products(user_id: str, preferences: dict) -> list:\n # Your recommendation logic\n return [\"Product A\", \"Product B\", \"Product C\"]\n```\n\n### Email AI Writer\n\n```python\n@olakai_monitor(\n task=\"Communication Strategy\",\n subTask=\"communication/persuasion\",\n customDimensions={\"dim1\": \"promotional\", \"dim2\": \"existing_customers\"},\n customMetrics={\"metric1\": 250, \"metric2\": 0.8}\n)\ndef generate_email_campaign(topic: str, tone: str) -> str:\n # Your email generation logic\n return f\"Subject: {topic}\\n\\nDear Customer, ...\"\n```\n\n---\n\n## Advanced Features\n\n### Custom Dimensions & Metrics\n\nTrack any data you want alongside your AI interactions:\n\n```python\n@olakai_monitor(\n # String dimensions (categorical data)\n customDimensions={\"dim1\": \"gpt-4\", \"dim2\": \"production\", \"dim3\": \"premium\", \"dim4\": \"en\"},\n # Numeric metrics (quantitative data)\n customMetrics={\"metric1\": 150, \"metric2\": 2.5, \"metric3\": 0.95, \"metric4\": 0.02}\n)\ndef advanced_ai_function(prompt: str) -> str:\n return \"AI response\"\n```\n\n### User Tracking\n\nTrack individual users and their AI interactions:\n\n```python\n@olakai_monitor(\n userEmail=\"john.doe@company.com\", # User email\n chatId=\"session-abc123\", # Session/conversation ID\n task=\"Personal Productivity\",\n subTask=\"email management\"\n)\ndef personal_assistant(user_request: str) -> str:\n return \"Assistant response\"\n```\n\n### Direct Reporting\n\nReport events manually without decorators:\n\n```python\nfrom olakaisdk import olakai_report\n\nolakai_report(\n prompt=\"User asked about pricing\",\n response=\"Here are our pricing plans...\",\n options={\n \"userEmail\": \"user@example.com\",\n \"chatId\": \"pricing-session-123\",\n \"task\": \"Sales Support\",\n \"customDimensions\": {\"dim1\": \"pricing\"},\n \"customMetrics\": {\"metric1\": 1.2}\n }\n)\n```\n\n### Low-Level Event Tracking\n\nFor maximum control:\n\n```python\nfrom olakaisdk import olakai, OlakaiEventParams\n\nparams = OlakaiEventParams(\n prompt=\"Custom prompt\",\n response=\"Custom response\",\n userEmail=\"user@example.com\",\n chatId=\"custom-session\",\n task=\"Custom Task\",\n customDimensions={\"dim1\": \"lowlevel\"},\n customMetrics={\"metric1\": 0.85},\n shouldScore=True,\n tokens=100,\n requestTime=500\n)\n\nolakai(\"ai_activity\", \"custom_event\", params)\n```\n\n---\n\n## Configuration Options\n\n### Basic Setup\n\n```python\nfrom olakaisdk import olakai_config\n\n# Simple setup\nolakai_config(\"your-api-key\")\n\n# With custom endpoint\nolakai_config(\"your-api-key\", \"https://your-domain.ai\")\n\n# With debug logging\nolakai_config(\"your-api-key\", \"https://your-domain.ai\", debug=True)\n```\n\n### Monitor Options\n\n| Option | Type | Description | Example |\n| ------------------ | ------ | ----------------------- | -------------------- |\n| `userEmail` | `str` | User email for tracking | `\"user@example.com\"` |\n| `chatId` | `str` | Session/conversation ID | `\"session-123\"` |\n| `task` | `str` | Task category | `\"Customer Support\"` |\n| `subTask` | `str` | Specific task | `\"password-reset\"` |\n| `customDimensions` | `dict` | String metadata | `{\"dim1\": \"gpt-4\"}` |\n| `customMetrics` | `dict` | Numeric data | `{\"metric1\": 150}` |\n| `shouldScore` | `bool` | Enable content scoring | `True` |\n\n---\n\n## Migration from v0.3.x\n\n**This is a breaking change** - the SDK has been completely simplified!\n\n### Old Way (v0.3.x)\n\n```python\nfrom olakaisdk import init_olakai_client, olakai_supervisor\n\n# Complex setup\ninit_olakai_client(\"api-key\", \"domain\", debug=True, batchSize=10, enableStorage=True)\n\n# Complex decorator\n@olakai_supervisor(\n sanitize=True,\n priority=\"high\",\n send_on_function_error=True\n)\ndef old_function():\n pass\n```\n\n### New Way (v0.4.0)\n\n```python\nfrom olakaisdk import olakai_config, olakai_monitor\n\n# Simple setup\nolakai_config(\"api-key\", \"https://domain.ai\", debug=True)\n\n# Simple decorator\n@olakai_monitor(\n userEmail=\"user@example.com\",\n customDimensions={\"dim1\": \"production\"}\n)\ndef new_function():\n pass\n```\n\n### Migration Steps\n\n1. **Replace initialization:**\n\n - `init_olakai_client()` \u2192 `olakai_config()`\n\n2. **Replace decorator:**\n\n - `@olakai_supervisor()` \u2192 `@olakai_monitor()`\n\n3. **Update parameters:**\n\n - Use `customDimensions={\"dim1\": \"...\", \"dim2\": \"...\"}` for string data\n - Use `customMetrics={\"metric1\": 1.0, \"metric2\": 2.0}` for numeric data\n - Add `userEmail` and `chatId` for user tracking\n\n4. **Remove complex options:**\n - No more `sanitize`, `priority`, `batchSize`, etc.\n\n---\n\n## Troubleshooting\n\n### Common Issues\n\n**\"SDK not initialized\"**\n\n```python\n# Wrong - using functions before setup\nfrom olakaisdk import olakai_monitor\n@olakai_monitor() # This will fail\ndef my_function():\n pass\n\n# Correct - setup first\nfrom olakaisdk import olakai_config, olakai_monitor\nolakai_config(\"your-api-key\") # Setup first\n@olakai_monitor() # Now this works\ndef my_function():\n pass\n```\n\n**\"Import errors\"**\n\n```bash\n# Make sure you have the right version\npip install --upgrade olakaisdk\n\n# Check Python version (3.7+ required)\npython --version\n```\n\n**\"API calls not working\"**\n\n```python\n# Enable debug mode to see what's happening\nolakai_config(\"your-api-key\", debug=True)\n\n# Check your API key and endpoint\nolakai_config(\"your-api-key\", \"https://your-domain.ai\", debug=True)\n```\n\n**\"Monitoring seems slow\"**\n\n- Monitoring happens asynchronously and won't slow down your app\n- API calls are made in the background\n- Check your network connection if issues persist\n\n### Debug Mode\n\nEnable debug mode to see what's happening:\n\n```python\nolakai_config(\"your-api-key\", debug=True)\n\n# You'll see output like:\n# Olakai SDK initialized with endpoint: https://your-domain.ai\n# API call to https://your-domain.ai/api/monitoring/prompt: 200\n# API call successful\n```\n\n---\n\n## Best Practices\n\n### Do This\n\n- **Start simple:** Begin with `@olakai_monitor()` and add options as needed\n- **Use descriptive tasks:** `task=\"Customer Support\"` instead of `task=\"cs\"`\n- **Track users:** Always include `userEmail` for user-specific analytics\n- **Use custom dimensions:** Track model, environment, user type, etc. with `customDimensions={\"dim1\": \"...\", \"dim2\": \"...\"}`\n- **Use custom metrics:** Track tokens, response time, costs, etc. with `customMetrics={\"metric1\": 1.0, \"metric2\": 2.0}`\n- **Group related calls:** Use consistent `task` and `subTask` names\n\n### Avoid This\n\n- **Don't monitor everything:** Only monitor important AI interactions\n- **Don't put sensitive data in task names:** Use `custom_dimensions` instead\n- **Don't monitor auth functions:** Avoid monitoring password/API key handling\n- **Don't use the old API:** It's deprecated and will be removed\n\n### Security Tips\n\n- **User emails should match Olakai accounts** for proper user tracking\n- **Use custom dimensions** to exclude sensitive parameters with `customDimensions={\"dim1\": \"...\", \"dim2\": \"...\"}`\n- **Never log passwords or API keys** in prompts/responses\n- **Consider data privacy** when tracking user interactions\n\n---\n\n## Use Cases\n\n### Enterprise Applications\n\n```python\n@olakai_monitor(\n userEmail=lambda args: get_user_email(args[0]),\n task=\"Enterprise AI\",\n subTask=\"document-analysis\",\n customDimensions={\"dim1\": \"acme-corp\", \"dim2\": \"legal\", \"dim3\": \"contract\"},\n customMetrics={\"metric1\": 10, \"metric2\": 0.92}\n)\ndef analyze_document(user_id: str, document: str) -> dict:\n # Document analysis logic\n return {\"summary\": \"...\", \"key_points\": [...]}\n```\n\n### Educational Platforms\n\n```python\n@olakai_monitor(\n userEmail=\"student@university.edu\",\n task=\"Educational AI\",\n subTask=\"homework-help\",\n customDimensions={\"dim1\": \"computer-science\", \"dim2\": \"intermediate\", \"dim3\": \"algorithms\"},\n customMetrics={\"metric1\": 3, \"metric2\": 15.5}\n)\ndef help_with_homework(question: str, student_level: str) -> str:\n # Educational AI logic\n return \"Here's how to solve this problem...\"\n```\n\n### Healthcare Applications\n\n```python\n@olakai_monitor(\n userEmail=\"doctor@hospital.com\",\n task=\"Medical AI\",\n subTask=\"symptom-analysis\",\n customDimensions={\"dim1\": \"cardiology\", \"dim2\": \"adult\", \"dim3\": \"routine\"},\n customMetrics={\"metric1\": 5, \"metric2\": 0.88}\n)\ndef analyze_symptoms(symptoms: list, patient_info: dict) -> dict:\n # Medical AI logic (with proper compliance)\n return {\"possible_conditions\": [...], \"recommendations\": [...]}\n```\n\n---\n\n## Dashboard & Analytics\n\nAfter setting up monitoring, visit your [Olakai dashboard](https://app.olakai.ai) to see:\n\n- **Usage Analytics** - Track API calls, users, and trends\n- **User Insights** - See individual user behavior and patterns\n- **Task Performance** - Monitor different tasks and their success rates\n- **Custom Metrics** - View your custom dimensions and metrics\n- **Content Safety** - Review flagged content and safety scores\n- **Cost Tracking** - Monitor AI usage costs and optimization opportunities\n\n---\n\n## Support & Community\n\n- **Documentation:** [Olakai Docs](https://app.olakai.ai/docs)\n- **Support:** [support@olakai.ai](mailto:support@olakai.ai)\n- **Issues:** [GitHub Issues](https://github.com/olakai/sdk-python/issues)\n- **Examples:** [SDK Examples](https://github.com/olakai/sdk-examples-python)\n\n---\n\n## License\n\nMIT \u00a9 [Olakai](https://olakai.ai)\n\n---\n\n**Ready to get started?**\n\n```python\nfrom olakaisdk import olakai_config, olakai_monitor\n\nolakai_config(\"your-api-key\")\n@olakai_monitor()\ndef my_first_monitored_function():\n return \"Hello, monitored world!\"\n```\n\n**Happy monitoring!**\n",
"bugtrack_url": null,
"license": null,
"summary": "A Python SDK for monitoring function calls and controlling execution with real-time API decisions",
"version": "0.4.0",
"project_urls": {
"Bug Tracker": "https://github.com/ailocalnode/py-sdk/issues",
"Documentation": "https://app.olakai.ai/docs/getting-started/getting-started",
"Homepage": "https://olakai.ai",
"Repository": "https://github.com/ailocalnode/py-sdk"
},
"split_keywords": [
"monitoring",
" ai",
" ml",
" api",
" sdk",
" olakai"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "e85c32d3acbe6c3273815cf01df13d8fee15ccffa73444fe93177968733cebf9",
"md5": "594860551c77d1ac1d1d2be6b7e09d9b",
"sha256": "5061fdbda0342735dc02f1ad4910269d4da8193e51b4674ff2f48332cc3379cb"
},
"downloads": -1,
"filename": "olakai_sdk-0.4.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "594860551c77d1ac1d1d2be6b7e09d9b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 15386,
"upload_time": "2025-10-24T18:14:05",
"upload_time_iso_8601": "2025-10-24T18:14:05.190148Z",
"url": "https://files.pythonhosted.org/packages/e8/5c/32d3acbe6c3273815cf01df13d8fee15ccffa73444fe93177968733cebf9/olakai_sdk-0.4.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "2f311ce8519e32de8a7cea5434e03d16ecaad7fe92007cfa0916940371b55ece",
"md5": "797cce3d476e2de628d771ae4f2b360e",
"sha256": "b52ad32d875185e6d66428f38b9e41c4a1ba9e47cf8fe1e71281c08084195395"
},
"downloads": -1,
"filename": "olakai_sdk-0.4.0.tar.gz",
"has_sig": false,
"md5_digest": "797cce3d476e2de628d771ae4f2b360e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 13399,
"upload_time": "2025-10-24T18:14:06",
"upload_time_iso_8601": "2025-10-24T18:14:06.466233Z",
"url": "https://files.pythonhosted.org/packages/2f/31/1ce8519e32de8a7cea5434e03d16ecaad7fe92007cfa0916940371b55ece/olakai_sdk-0.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-24 18:14:06",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ailocalnode",
"github_project": "py-sdk",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "olakai-sdk"
}