Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Backport 2.x] Add alert summary agent template #890

Merged
merged 1 commit into from
Sep 30, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.1.0/)
- Set Java target compatibility to JDK 21 ([#730](https://github.com/opensearch-project/flow-framework/pull/730))

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

### Maintenance
### Refactoring

Expand Down
94 changes: 94 additions & 0 deletions sample-templates/alert-summary-agent-claude-tested.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
{
"name": "Alert Summary Agent",
"description": "Create Alert Summary 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\":\"${parameters.prompt}\", \"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_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: ${parameters.context};\n The question is: ${parameters.question}."
},
"name": "MLModelTool",
"type": "MLModelTool"
}
},
{
"id": "create_alert_summary_agent",
"type": "register_agent",
"previous_node_inputs": {
"create_alert_summary_ml_model_tool": "tools"
},
"user_inputs": {
"parameters": {},
"type": "flow",
"name": "Alert Summary Agent",
"description": "this is an alert summary agent"
}
}
]
}
}
}
71 changes: 71 additions & 0 deletions sample-templates/alert-summary-agent-claude-tested.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
---
name: Alert Summary Agent
description: Create Alert Summary 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":"${parameters.prompt}", "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_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: ${parameters.context};\n The question is: ${parameters.question}."
name: MLModelTool
type: MLModelTool
- id: create_alert_summary_agent
type: register_agent
previous_node_inputs:
create_alert_summary_ml_model_tool: tools
user_inputs:
parameters: {}
type: flow
name: Alert Summary Agent
description: this is an alert summary agent
Loading