Skip to content

Commit

Permalink
Sample template: alert summary with log pattern agent (#945)
Browse files Browse the repository at this point in the history
* log pattern tool template

Signed-off-by: yuye-aws <[email protected]>

* update change log

Signed-off-by: yuye-aws <[email protected]>

* Update alert-summary-log-pattern-agent.json

Signed-off-by: Daniel Widdis <[email protected]>

---------

Signed-off-by: yuye-aws <[email protected]>
Signed-off-by: Daniel Widdis <[email protected]>
Co-authored-by: Daniel Widdis <[email protected]>
  • Loading branch information
yuye-aws and dbwiddis authored Nov 5, 2024
1 parent 50e45ac commit 5559242
Show file tree
Hide file tree
Showing 3 changed files with 183 additions and 0 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.1.0/)

### Documentation
- Add alert summary agent template ([#873](https://github.com/opensearch-project/flow-framework/pull/873))
- Add alert summary with log pattern agent template ([#945](https://github.com/opensearch-project/flow-framework/pull/945))

### Maintenance
### Refactoring
Expand Down
94 changes: 94 additions & 0 deletions sample-templates/alert-summary-log-pattern-agent.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
{
"name": "Alert Summary With Log Pattern Agent",
"description": "Create Alert Summary with Log Pattern Agent using Claude on BedRock",
"use_case": "REGISTER_AGENT",
"version": {
"template": "1.0.0",
"compatibility": ["2.17.0", "3.0.0"]
},
"workflows": {
"provision": {
"user_params": {},
"nodes": [
{
"id": "create_claude_connector",
"type": "create_connector",
"previous_node_inputs": {},
"user_inputs": {
"version": "1",
"name": "Claude instant runtime Connector",
"protocol": "aws_sigv4",
"description": "The connector to BedRock service for Claude model",
"actions": [
{
"headers": {
"x-amz-content-sha256": "required",
"content-type": "application/json"
},
"method": "POST",
"request_body": "{\"prompt\":\"\\n\\nHuman: ${parameters.prompt}\\n\\nAssistant:\", \"max_tokens_to_sample\":${parameters.max_tokens_to_sample}, \"temperature\":${parameters.temperature}, \"anthropic_version\":\"${parameters.anthropic_version}\" }",
"action_type": "predict",
"url": "https://bedrock-runtime.us-west-2.amazonaws.com/model/anthropic.claude-instant-v1/invoke"
}
],
"credential": {
"access_key": "<YOUR_ACCESS_KEY>",
"secret_key": "<YOUR_SECRET_KEY>",
"session_token": "<YOUR_SESSION_TOKEN>"
},
"parameters": {
"region": "us-west-2",
"endpoint": "bedrock-runtime.us-west-2.amazonaws.com",
"content_type": "application/json",
"auth": "Sig_V4",
"max_tokens_to_sample": "8000",
"service_name": "bedrock",
"temperature": "0.0001",
"response_filter": "$.completion",
"anthropic_version": "bedrock-2023-05-31"
}
}
},
{
"id": "register_claude_model",
"type": "register_remote_model",
"previous_node_inputs": {
"create_claude_connector": "connector_id"
},
"user_inputs": {
"description": "Claude model",
"deploy": true,
"name": "claude-instant"
}
},
{
"id": "create_alert_summary_with_log_pattern_ml_model_tool",
"type": "create_tool",
"previous_node_inputs": {
"register_claude_model": "model_id"
},
"user_inputs": {
"parameters": {
"prompt": " You are an OpenSearch Alert Assistant to help summarize the alerts.\n Here is the detail of alert: \n ${parameters.context};\n \n And help detect if there is any common pattern or trend or outlier for the log pattern output. Log pattern groups the alert trigger logs by their generated patterns, the output contains some sample logs for each top-k patterns.\n Here is the log pattern output:\n ${parameters.topNLogPatternData};"
},
"name": "MLModelTool",
"type": "MLModelTool"
}
},
{
"id": "create_alert_summary_with_log_pattern_agent",
"type": "register_agent",
"previous_node_inputs": {
"create_alert_summary_with_log_pattern_ml_model_tool": "tools"
},
"user_inputs": {
"parameters": {},
"type": "flow",
"name": "Alert Summary With Log Pattern Agent",
"description": "this is an alert summary with log pattern agent"
}
}
]
}
}
}
88 changes: 88 additions & 0 deletions sample-templates/alert-summary-log-pattern-agent.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
# This template creates a connector to the BedRock service for Claude model
# It then registers a model using the connector and deploys it.
# Finally, it creates a flow agent base agent with ML Model tool to generate alert summary from log patterns.
#
# To use:
# - update the "credential" fields under the create_claude_connector node.
# - if needed, update region
#
# After provisioning:
# - returns a workflow ID
# - use the status API to get the deployed agent ID
---
name: Alert Summary With Log Pattern Agent
description: Create Alert Summary with Log Pattern Agent using Claude on BedRock
use_case: REGISTER_AGENT
version:
template: 1.0.0
compatibility:
- 2.17.0
- 3.0.0
workflows:
provision:
user_params: {}
nodes:
- id: create_claude_connector
type: create_connector
previous_node_inputs: {}
user_inputs:
version: '1'
name: Claude instant runtime Connector
protocol: aws_sigv4
description: The connector to BedRock service for Claude model
actions:
- headers:
x-amz-content-sha256: required
content-type: application/json
method: POST
request_body: '{"prompt":"\n\nHuman: ${parameters.prompt}\n\nAssistant:",
"max_tokens_to_sample":${parameters.max_tokens_to_sample}, "temperature":${parameters.temperature}, "anthropic_version":"${parameters.anthropic_version}"
}'
action_type: predict
url: https://bedrock-runtime.us-west-2.amazonaws.com/model/anthropic.claude-instant-v1/invoke
credential:
access_key: "<YOUR_ACCESS_KEY>"
secret_key: "<YOUR_SECRET_KEY>"
session_token: "<YOUR_SESSION_TOKEN>"
parameters:
region: us-west-2
endpoint: bedrock-runtime.us-west-2.amazonaws.com
content_type: application/json
auth: Sig_V4
max_tokens_to_sample: '8000'
service_name: bedrock
temperature: '0.0001'
response_filter: "$.completion"
anthropic_version: bedrock-2023-05-31
- id: register_claude_model
type: register_remote_model
previous_node_inputs:
create_claude_connector: connector_id
user_inputs:
description: Claude model
deploy: true
name: claude-instant
- id: create_alert_summary_with_log_pattern_ml_model_tool
type: create_tool
previous_node_inputs:
register_claude_model: model_id
user_inputs:
parameters:
prompt: " You are an OpenSearch Alert Assistant to help summarize
the alerts.\n Here is the detail of alert: \n ${parameters.context};\n
\ \n And help detect if there is any common pattern
or trend or outlier for the log pattern output. Log pattern groups the
alert trigger logs by their generated patterns, the output contains some
sample logs for each top-k patterns.\n Here is the log
pattern output:\n ${parameters.topNLogPatternData};"
name: MLModelTool
type: MLModelTool
- id: create_alert_summary_with_log_pattern_agent
type: register_agent
previous_node_inputs:
create_alert_summary_with_log_pattern_ml_model_tool: tools
user_inputs:
parameters: {}
type: flow
name: Alert Summary With Log Pattern Agent
description: this is an alert summary with log pattern agent

0 comments on commit 5559242

Please sign in to comment.