How To Deploy Smartbot V2
Smartbot is available via AWS Marketplace as a SageMaker Model Package. Once subscribed, use this guide to deploy your endpoint and start receiving sentiment predictions from contact centre audio. If you need help, contact support@smartbotsoftware.com
Version Summary
| Version | v2.1 |
|---|---|
| Delivery Method | SageMaker Model Package |
| Deployment Region | eu-west-2 (London) |
| SageMaker ARN | arn:aws:sagemaker:eu-west-2:923927835297:model-package/smartbot-v2-july-version-2025 |
Release Notes
SmartBot V2 introduces a multimodal sentiment analysis model capable of processing raw audio inputs in real time. This version supports base64-encoded .wav inputs and performs speech-to-text transcription, spectrogram generation, and text-audio fusion for sentiment analysis. Compared to V1, this version has improved accuracy on diverse speakers and output classes.
Model Input Details
SmartBot V2 accepts JSON input structured as a dictionary of base64-encoded .wav audio clips. Each entry must include a unique uid key. No text input is required — the system performs speech-to-text internally.
Input Constraints
- Audio format: mono .wav, 16-bit PCM, 16kHz
- Max file size per clip: 3 MB
- Max clips per request: 10
Input Format
{
"invocations": {
"uid123": "<base64-encoded-audio>",
"uid456": "<base64-encoded-audio>"
}
}
Real-Time Input Sample
{
"invocations": {
"12345": "UklGRtQAAABXQVZFZm10IBAAAAABAAEA...",
"jh13d3": "UklGRkQAAABXQVZFZm10IBAAAAABAAEA..."
}
}
Model Output Details
Returns a list of dictionaries, each containing:
- uid — original identifier
- predicted_class — numeric class index
- predicted_label — predicted class label (happy, neutral, sad, anger)
- probabilities — full distribution across all output classes
Output Sample
{
"predictions": [
{
"uid": "12345",
"predicted_class": 2,
"predicted_label": "neutral",
"probabilities": {
"anger": 0.0094,
"happy": 0.0029,
"neutral": 0.5295,
"sad": 0.4580
}
},
{
"uid": "jh13d3",
"predicted_class": 1,
"predicted_label": "happy",
"probabilities": {
"anger": 0.0030,
"happy": 0.9451,
"neutral": 0.0212,
"sad": 0.0307
}
}
]
}
Usage Instructions
- Prepare .wav files using standard tools (Audacity, FFmpeg, etc.).
- Convert to base64 and pass as JSON under the "invocations" field.
- The endpoint handles STT + spectrogram generation internally.
- Output includes sentiment predictions and class probabilities.
Authentication and Endpoint Setup
Subscribe to the Smartbot V2 model package via AWS Marketplace. On subscription, the model package ARN is automatically shared to your AWS account.
Ensure the IAM role used to deploy the endpoint has the following permissions:
- sagemaker:CreateModel
- sagemaker:CreateEndpointConfig
- sagemaker:CreateEndpoint
- sagemaker:InvokeEndpoint
Deploy the endpoint using the AWS Console, SDK, or CLI. Example using boto3:
import boto3
sm = boto3.client("sagemaker", region_name="eu-west-2")
sm.create_model(
ModelName="smartbot-v2",
PrimaryContainer={
"ModelPackageName": "arn:aws:sagemaker:eu-west-2:923927835297:model-package/smartbot-v2-july-version-2025"
},
ExecutionRoleArn="arn:aws:iam::<your-account-id>:role/<your-sagemaker-role>"
)
Once the endpoint is in-service, invoke it using sagemaker-runtime:
runtime = boto3.client("sagemaker-runtime", region_name="eu-west-2")
response = runtime.invoke_endpoint(
EndpointName="smartbot-v2",
ContentType="application/json",
Body=json.dumps(payload)
)
The full working example is available in the sample notebook linked in the Resources section below.
Latency
Typical real-time inference latency on ml.m5.xlarge:
| Single clip (≤3 MB) | 800 ms – 1.5 s (STT + spectrogram + classification) |
|---|---|
| Batch of 10 clips | 4 – 7 s end-to-end |
| Cold start | 10 – 20 s (first invocation on new endpoint) |
| Measurement scope | eu-west-2 endpoint invocation to response received |
For contact centre deployments requiring sub-second sentiment signals, invoke the endpoint asynchronously in parallel with the live call rather than inline in the call path.
To avoid cold start latency in production, use SageMaker endpoint auto-scaling or a keep-warm strategy.
Recommended Instance Types
| Real-time inference | ml.m5.xlarge |
|---|---|
| Batch transform | ml.m5.xlarge |
Resources
Need help deploying Smartbot V2? Contact support@smartbotsoftware.com