solace-agent-mesh 0.2.0__py3-none-any.whl → 0.2.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of solace-agent-mesh might be problematic. Click here for more details.
- solace_agent_mesh/agents/global/actions/plantuml_diagram.py +94 -36
- solace_agent_mesh/agents/global/actions/plotly_graph.py +48 -22
- solace_agent_mesh/cli/__init__.py +1 -1
- solace_agent_mesh/cli/commands/add/agent.py +1 -1
- solace_agent_mesh/cli/commands/add/copy_from_plugin.py +9 -7
- solace_agent_mesh/cli/commands/add/gateway.py +2 -2
- solace_agent_mesh/cli/commands/build.py +15 -0
- solace_agent_mesh/cli/commands/init/ai_provider_step.py +45 -28
- solace_agent_mesh/cli/commands/init/broker_step.py +1 -4
- solace_agent_mesh/cli/commands/init/check_if_already_done.py +1 -1
- solace_agent_mesh/cli/commands/init/create_config_file_step.py +8 -0
- solace_agent_mesh/cli/commands/init/init.py +20 -38
- solace_agent_mesh/cli/commands/init/web_init_step.py +32 -0
- solace_agent_mesh/cli/commands/plugin/build.py +52 -10
- solace_agent_mesh/cli/commands/plugin/create.py +3 -3
- solace_agent_mesh/cli/commands/run.py +2 -2
- solace_agent_mesh/cli/main.py +20 -8
- solace_agent_mesh/common/prompt_templates.py +1 -3
- solace_agent_mesh/common/utils.py +88 -19
- solace_agent_mesh/config_portal/__init__.py +0 -0
- solace_agent_mesh/config_portal/backend/__init__.py +0 -0
- solace_agent_mesh/config_portal/backend/common.py +35 -0
- solace_agent_mesh/config_portal/backend/server.py +233 -0
- solace_agent_mesh/config_portal/frontend/static/client/Solace_community_logo.png +0 -0
- solace_agent_mesh/config_portal/frontend/static/client/assets/_index-b13CSm84.js +42 -0
- solace_agent_mesh/config_portal/frontend/static/client/assets/components-ZIfdTbrV.js +191 -0
- solace_agent_mesh/config_portal/frontend/static/client/assets/entry.client-DX1misIU.js +19 -0
- solace_agent_mesh/config_portal/frontend/static/client/assets/index-BJHAE5s4.js +17 -0
- solace_agent_mesh/config_portal/frontend/static/client/assets/manifest-c92a7808.js +1 -0
- solace_agent_mesh/config_portal/frontend/static/client/assets/root-BApq5dPK.js +10 -0
- solace_agent_mesh/config_portal/frontend/static/client/assets/root-DX4gQ516.css +1 -0
- solace_agent_mesh/config_portal/frontend/static/client/favicon.ico +0 -0
- solace_agent_mesh/config_portal/frontend/static/client/index.html +7 -0
- solace_agent_mesh/configs/orchestrator.yaml +1 -1
- solace_agent_mesh/orchestrator/components/orchestrator_action_manager_timeout_component.py +4 -0
- solace_agent_mesh/orchestrator/components/orchestrator_stimulus_processor_component.py +46 -16
- solace_agent_mesh/orchestrator/components/orchestrator_streaming_output_component.py +19 -5
- solace_agent_mesh/orchestrator/orchestrator_main.py +11 -5
- solace_agent_mesh/orchestrator/orchestrator_prompt.py +78 -74
- solace_agent_mesh/services/history_service/history_providers/sql_history_provider.py +1 -1
- solace_agent_mesh/services/llm_service/components/llm_request_component.py +54 -31
- solace_agent_mesh/templates/rest-api-default-config.yaml +4 -2
- solace_agent_mesh/templates/solace-agent-mesh-default.yaml +9 -0
- solace_agent_mesh/templates/web-default-config.yaml +4 -2
- solace_agent_mesh-0.2.2.dist-info/METADATA +172 -0
- {solace_agent_mesh-0.2.0.dist-info → solace_agent_mesh-0.2.2.dist-info}/RECORD +49 -35
- solace_agent_mesh/common/prompt_templates_unused_delete.py +0 -161
- solace_agent_mesh-0.2.0.dist-info/METADATA +0 -209
- {solace_agent_mesh-0.2.0.dist-info → solace_agent_mesh-0.2.2.dist-info}/WHEEL +0 -0
- {solace_agent_mesh-0.2.0.dist-info → solace_agent_mesh-0.2.2.dist-info}/entry_points.txt +0 -0
- {solace_agent_mesh-0.2.0.dist-info → solace_agent_mesh-0.2.2.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: solace-agent-mesh
|
|
3
|
+
Version: 0.2.2
|
|
4
|
+
Summary: Solace Agent Mesh is an EDA AI-first platform powered by Solace
|
|
5
|
+
Project-URL: homepage, https://github.com/SolaceLabs/solace-agent-mesh
|
|
6
|
+
Project-URL: repository, https://github.com/SolaceLabs/solace-agent-mesh
|
|
7
|
+
Project-URL: documentation, https://github.com/SolaceLabs/solace-agent-mesh/blob/main/docs/docs/index.md
|
|
8
|
+
Author-email: Edward Funnekotter <edward.funnekotter@solace.com>, Greg Meldrum <greg.meldrum@solace.com>, Cyrus Mobini <cyrus.mobini@solace.com>
|
|
9
|
+
License-File: LICENSE
|
|
10
|
+
Classifier: License :: OSI Approved :: Apache Software License
|
|
11
|
+
Classifier: Operating System :: OS Independent
|
|
12
|
+
Classifier: Programming Language :: Python :: 3
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
17
|
+
Requires-Python: >=3.10.16
|
|
18
|
+
Requires-Dist: beautifulsoup4~=4.12.3
|
|
19
|
+
Requires-Dist: boto3~=1.34.122
|
|
20
|
+
Requires-Dist: build~=1.2.2.post1
|
|
21
|
+
Requires-Dist: click~=8.1.7
|
|
22
|
+
Requires-Dist: duckduckgo-search~=6.3.7
|
|
23
|
+
Requires-Dist: html2text~=2024.2.26
|
|
24
|
+
Requires-Dist: jq~=1.8.0
|
|
25
|
+
Requires-Dist: kaleido~=0.1.0.post1; sys_platform == 'win32'
|
|
26
|
+
Requires-Dist: kaleido~=0.2.1; sys_platform != 'win32'
|
|
27
|
+
Requires-Dist: markitdown~=0.0.1a3
|
|
28
|
+
Requires-Dist: plotly~=5.24.1
|
|
29
|
+
Requires-Dist: pyperclip~=1.9.0
|
|
30
|
+
Requires-Dist: pytest-cov~=5.0.0
|
|
31
|
+
Requires-Dist: pytest~=8.3.1
|
|
32
|
+
Requires-Dist: python-dateutil==2.9.0.post0
|
|
33
|
+
Requires-Dist: ruamel-yaml~=0.18.6
|
|
34
|
+
Requires-Dist: solace-ai-connector-rest~=0.0.3
|
|
35
|
+
Requires-Dist: solace-ai-connector-slack~=0.0.2
|
|
36
|
+
Requires-Dist: solace-ai-connector-web~=0.2.2
|
|
37
|
+
Requires-Dist: solace-ai-connector[llm]~=1.0.3
|
|
38
|
+
Requires-Dist: solace-ai-connector[websocket]~=1.0.3
|
|
39
|
+
Requires-Dist: solace-ai-connector~=1.0.3
|
|
40
|
+
Description-Content-Type: text/markdown
|
|
41
|
+
|
|
42
|
+
<p align="center">
|
|
43
|
+
<img src="./docs/static/img/logo.png" alt="Solace Agent Mesh Logo" width="100"/>
|
|
44
|
+
</p>
|
|
45
|
+
<h2 align="center">
|
|
46
|
+
Solace Agent Mesh
|
|
47
|
+
</h2>
|
|
48
|
+
<h4 align="center">Open-source framework for building event driven multi-agent AI systems</h3>
|
|
49
|
+
|
|
50
|
+
<p align="center">
|
|
51
|
+
<a href="https://github.com/SolaceLabs/solace-agent-mesh/blob/main/LICENSE">
|
|
52
|
+
<img src="https://img.shields.io/github/license/SolaceLabs/solace-agent-mesh" alt="License">
|
|
53
|
+
</a>
|
|
54
|
+
<a href="https://pypi.org/project/solace-agent-mesh">
|
|
55
|
+
<img src="https://img.shields.io/pypi/v/solace-agent-mesh.svg" alt="PyPI - Version">
|
|
56
|
+
</a>
|
|
57
|
+
<a href="https://pypi.org/project/solace-agent-mesh">
|
|
58
|
+
<img src="https://img.shields.io/pypi/pyversions/solace-agent-mesh.svg" alt="PyPI - Python Version">
|
|
59
|
+
</a>
|
|
60
|
+
</p>
|
|
61
|
+
<p align="center">
|
|
62
|
+
<a href="#-key-features">Key Features</a> •
|
|
63
|
+
<a href="#-quick-start-5-minutes">Quickstart</a> •
|
|
64
|
+
<a href="#️-next-steps">Next Steps</a>
|
|
65
|
+
</p>
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
Whether you're prototyping an 🤖 AI assistant or deploying a 🌎 production-grade solution, **Solace Agent Mesh (SAM)** provides the infrastructure to:
|
|
70
|
+
- Connect AI agents to real-world data sources and systems.
|
|
71
|
+
- Add gateways to expose capabilities via REST, a browser-based UI, Slack, and many more.
|
|
72
|
+
- Scale from local development to distributed, enterprise deployments.
|
|
73
|
+
|
|
74
|
+

|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## ✨ Key Features
|
|
79
|
+
- ⚙️ **[Modular, Event-Driven Architecture](https://solacelabs.github.io/solace-agent-mesh/docs/documentation/getting-started/component-overview)** – All components communicate via events through a central event mesh, enabling loose coupling and high scalability.
|
|
80
|
+
- 🤖 **[Composable Agents](https://solacelabs.github.io/solace-agent-mesh/docs/documentation/concepts/agents)** – Combine specialized AI agents to solve complex, multi-step workflows.
|
|
81
|
+
- 🌐 **[Flexible Interfaces](https://solacelabs.github.io/solace-agent-mesh/docs/documentation/concepts/gateways)** – Interact with SAM via the REST API, browser UI, or [Slack Integration](https://solacelabs.github.io/solace-agent-mesh/docs/documentation/tutorials/slack-integration).
|
|
82
|
+
- 🧠 **[Built-in Orchestration](https://solacelabs.github.io/solace-agent-mesh/docs/documentation/concepts/orchestrator)** – Tasks are automatically broken down and delegated across agents by a built-in orchestrator.
|
|
83
|
+
- 🧩 **[Plugin-Extensible](https://solacelabs.github.io/solace-agent-mesh/docs/documentation/concepts/plugins)** – Add your own agents, gateways, or services with minimal boilerplate.
|
|
84
|
+
- 🏢 **[Production-Ready](https://solacelabs.github.io/solace-agent-mesh/docs/documentation/deployment/deploy)** – Backed by [Solace’s enterprise-grade event broker](https://solace.com/products/event-broker/) for reliability and performance.
|
|
85
|
+
- 🔧 **[Services](https://solacelabs.github.io/solace-agent-mesh/docs/documentation/concepts/services)** – File storage, memory, and embeddings, all extensible, and built-in.
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## 🚀 Quick Start (5 minutes)
|
|
90
|
+
|
|
91
|
+
Set up Solace Agent Mesh in just a few steps.
|
|
92
|
+
|
|
93
|
+
### ⚙️ System Requirements
|
|
94
|
+
|
|
95
|
+
To run Solace Agent Mesh locally, you’ll need:
|
|
96
|
+
|
|
97
|
+
- **Python 3.10.16+**
|
|
98
|
+
- **pip** (comes with Python)
|
|
99
|
+
- **OS**: MacOS, Linux, or Windows (with [WSL](https://learn.microsoft.com/en-us/windows/wsl/))
|
|
100
|
+
- **LLM API key** (any major provider or custom endpoint)
|
|
101
|
+
|
|
102
|
+
### 💻 Setup Steps
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
# 1. (Optional) Create and activate a Python virtual environment
|
|
106
|
+
python3 -m venv venv
|
|
107
|
+
source venv/bin/activate
|
|
108
|
+
|
|
109
|
+
# 2. Install the Solace Agent Mesh
|
|
110
|
+
pip install solace-agent-mesh
|
|
111
|
+
|
|
112
|
+
# 3. Initialize a new project
|
|
113
|
+
mkdir my-agent-mesh && cd my-agent-mesh
|
|
114
|
+
solace-agent-mesh init # Follow the steps in the interactive init
|
|
115
|
+
|
|
116
|
+
# 4. Build and run the project
|
|
117
|
+
solace-agent-mesh run -b # Shortcut for build + run
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
#### Once running:
|
|
121
|
+
|
|
122
|
+
- Open the Web UI at [http://localhost:5001](http://localhost:5001) to talk with a chat interface.
|
|
123
|
+
<details>
|
|
124
|
+
<summary>Use the REST API directly via curl</summary>
|
|
125
|
+
|
|
126
|
+
```bash
|
|
127
|
+
curl --location 'http://127.0.0.1:5050/api/v1/request' \
|
|
128
|
+
--form 'prompt="What is the capital of France?"' \
|
|
129
|
+
--form 'stream="false"'
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
</details>
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
---
|
|
136
|
+
|
|
137
|
+
## ➡️ Next Steps
|
|
138
|
+
|
|
139
|
+
Want to go further? Here are some hands-on tutorials to help you get started:
|
|
140
|
+
|
|
141
|
+
| 🔧 Integration | ⏱️ Est. Time | 📘 Tutorial |
|
|
142
|
+
|----------------|--------------|-------------|
|
|
143
|
+
| 🌤️ **Weather Agent**<br>Build an agent that gives Solace Agent Mesh the ability to access real-time weather information. | **~5 min** | [Weather Agent Plugin](https://github.com/SolaceLabs/solace-agent-mesh-core-plugins/tree/main/sam-geo-information) |
|
|
144
|
+
| 🗃️ **SQL Database Integration**<br>Enable Solace Agent Mesh to answer company-specific questions using a sample coffee company database.| **~10–15 min** | [SQL Database Tutorial](https://solacelabs.github.io/solace-agent-mesh/docs/documentation/tutorials/sql-database) |
|
|
145
|
+
| 🧠 **MCP Integration**<br>Integrating a Model Context Protocol (MCP) Server into Solace Agent Mesh. | **~10–15 min** | [MCP Integration Tutorial](https://solacelabs.github.io/solace-agent-mesh/docs/documentation/tutorials/mcp-integration) |
|
|
146
|
+
| 💬 **Slack Integration**<br>Chat with Solace Agent Mesh directly from Slack. | **~20–30 min** | [Slack Integration Tutorial](https://solacelabs.github.io/solace-agent-mesh/docs/documentation/tutorials/slack-integration) |
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
📚 Want to explore more? Check out the full [Solace Agent Mesh documentation](https://solacelabs.github.io/solace-agent-mesh/docs/documentation/getting-started/introduction/).
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
## 📦 Release Notes
|
|
154
|
+
|
|
155
|
+
Stay up to date with the latest changes, features, and fixes.
|
|
156
|
+
See [CHANGELOG.md](CHANGELOG.md) for a full history of updates.
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
## 👥 Contributors
|
|
161
|
+
|
|
162
|
+
Solace Agent Mesh is built with the help of our amazing community.
|
|
163
|
+
Thanks to everyone who has contributed ideas, code, and time to make this project better.
|
|
164
|
+
👀 View the full list of contributors → [GitHub Contributors](https://github.com/SolaceLabs/solace-agent-mesh/graphs/contributors)
|
|
165
|
+
🤝 **Looking to contribute?** Check out [CONTRIBUTING.md](CONTRIBUTING.md) to get started and see how you can help.
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
## 📄 License
|
|
170
|
+
|
|
171
|
+
This project is licensed under the **Apache 2.0 License**.
|
|
172
|
+
See the full license text in the [LICENSE](LICENSE) file.
|
|
@@ -9,8 +9,8 @@ solace_agent_mesh/agents/global/actions/clear_history.py,sha256=XOCpmkr-Jv0SDP1E
|
|
|
9
9
|
solace_agent_mesh/agents/global/actions/convert_file_to_markdown.py,sha256=qVLDIS8KZoFP777Kb_B5UmrLAEksxrRzKrcO76lwwm8,6407
|
|
10
10
|
solace_agent_mesh/agents/global/actions/create_file.py,sha256=mf_CFKZc8iWJSb8l8z5EWrv6OQtpFw_jDHLuvji-p6g,2602
|
|
11
11
|
solace_agent_mesh/agents/global/actions/error_action.py,sha256=d0sNyC8pvZu3AeLLOIimG3cmjFmovxTGczp8Y8fTySo,1643
|
|
12
|
-
solace_agent_mesh/agents/global/actions/plantuml_diagram.py,sha256=
|
|
13
|
-
solace_agent_mesh/agents/global/actions/plotly_graph.py,sha256=
|
|
12
|
+
solace_agent_mesh/agents/global/actions/plantuml_diagram.py,sha256=twYhmzfQ2r-oubkue7Poat2uZnxIjBnXj7SYM4MGmb8,7354
|
|
13
|
+
solace_agent_mesh/agents/global/actions/plotly_graph.py,sha256=DUlUpbC4Dgd0_j9guaRIyvhJbxNa5cG8JWQn4RHp_Eg,6385
|
|
14
14
|
solace_agent_mesh/agents/global/actions/retrieve_file.py,sha256=nBK8EGn6R6gCFV4zCc2Xo3Bzz112EtvPmaOBRBZr2do,2232
|
|
15
15
|
solace_agent_mesh/agents/image_processing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
16
16
|
solace_agent_mesh/agents/image_processing/image_processing_agent_component.py,sha256=IjZnNk7e8znm7NzXHgvFUpVaxDgUokwB3BzmLjcGolg,632
|
|
@@ -36,11 +36,10 @@ solace_agent_mesh/common/action_response.py,sha256=TYh8OdvpQmRS0_SbRKjhKWOdSPCN4
|
|
|
36
36
|
solace_agent_mesh/common/constants.py,sha256=uL736sNE7haXoA17EMQtNZ4iz4SSoMKZSP_tqH7V8fQ,329
|
|
37
37
|
solace_agent_mesh/common/mysql_database.py,sha256=I6heri35TqLU0spV_p7XBye5CmFe3dspZHs9eCjHYK4,1121
|
|
38
38
|
solace_agent_mesh/common/postgres_database.py,sha256=8JBPSN3ZtpNSlnYfWNlDbhl2cAKVLawJgC_t_dbbTAc,2607
|
|
39
|
-
solace_agent_mesh/common/prompt_templates.py,sha256=
|
|
40
|
-
solace_agent_mesh/common/prompt_templates_unused_delete.py,sha256=Quyee4Xuf4vZj_29Nq0RIR9-eztKZGzzUY7cFbmmJno,7229
|
|
39
|
+
solace_agent_mesh/common/prompt_templates.py,sha256=9m2-4BE0STEIEHWoFbtesYn8yq-Nl8kHq8Vt8OLEN9Q,628
|
|
41
40
|
solace_agent_mesh/common/stimulus_utils.py,sha256=OIGrOVFlg3V0YAjO5GU0qZ-NO95cN_yQ707JTuQqa9E,5445
|
|
42
41
|
solace_agent_mesh/common/time.py,sha256=SH0Zfh1Hn6k8TcwZ8MpA_2-CV9-uA8Zc57-Zxm5C6c4,298
|
|
43
|
-
solace_agent_mesh/common/utils.py,sha256=
|
|
42
|
+
solace_agent_mesh/common/utils.py,sha256=3MZI3hYiSZFxOWI_YO4u9dQfzzFrELh2neXw_sUeHxk,26061
|
|
44
43
|
solace_agent_mesh/gateway/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
45
44
|
solace_agent_mesh/gateway/components/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
46
45
|
solace_agent_mesh/gateway/components/gateway_base.py,sha256=P1qJBzbFPrp4neOlGHtW36QVOXNmnQJeOkGAok5OrOw,1850
|
|
@@ -56,14 +55,14 @@ solace_agent_mesh/monitors/feedback/user_feedback_monitor.py,sha256=JGK9nJcKnK8J
|
|
|
56
55
|
solace_agent_mesh/monitors/stim_and_errors/stim_and_error_monitor.py,sha256=jMM1mhsntpoFWP1NVtLj5kLChb0CH4VZamAa77wFLn0,20177
|
|
57
56
|
solace_agent_mesh/orchestrator/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
58
57
|
solace_agent_mesh/orchestrator/action_manager.py,sha256=NgSrm9XXEfsOzGIfmfMo8s_-Pv5vgod02ig6lj8g7Uc,9076
|
|
59
|
-
solace_agent_mesh/orchestrator/orchestrator_main.py,sha256=
|
|
60
|
-
solace_agent_mesh/orchestrator/orchestrator_prompt.py,sha256
|
|
58
|
+
solace_agent_mesh/orchestrator/orchestrator_main.py,sha256=a3MSUH4uYZdrV_47jd1GXx6fgQfcVsdgFRxw7EHxyUs,6151
|
|
59
|
+
solace_agent_mesh/orchestrator/orchestrator_prompt.py,sha256=-jrWrxbZkcQj1wn32QdnO_cSCEcwgmX83FY0Nkq0gKU,29663
|
|
61
60
|
solace_agent_mesh/orchestrator/components/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
62
|
-
solace_agent_mesh/orchestrator/components/orchestrator_action_manager_timeout_component.py,sha256=
|
|
61
|
+
solace_agent_mesh/orchestrator/components/orchestrator_action_manager_timeout_component.py,sha256=afGV_zQpsvGDjdWlfanECWc6xvA4SYJO9TleCnaP2tk,2121
|
|
63
62
|
solace_agent_mesh/orchestrator/components/orchestrator_action_response_component.py,sha256=Wo2Qd6CU4bcllc_jy6XXdza1jewcV1SGXh1osdWI4Zc,7140
|
|
64
63
|
solace_agent_mesh/orchestrator/components/orchestrator_register_component.py,sha256=rLoTSwQvYedBnTaeU9pM-viBvY2So7Gv3eYuXMbuhTs,4797
|
|
65
|
-
solace_agent_mesh/orchestrator/components/orchestrator_stimulus_processor_component.py,sha256=
|
|
66
|
-
solace_agent_mesh/orchestrator/components/orchestrator_streaming_output_component.py,sha256=
|
|
64
|
+
solace_agent_mesh/orchestrator/components/orchestrator_stimulus_processor_component.py,sha256=F5JsiHOC0yowSxf0L84uz5D_ClVUdPs3RSTstiwWQCc,21552
|
|
65
|
+
solace_agent_mesh/orchestrator/components/orchestrator_streaming_output_component.py,sha256=S7PmDSbCKObI-US8hb3SSZj1WHxGB08Keb7Y4kX8IIo,9902
|
|
67
66
|
solace_agent_mesh/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
68
67
|
solace_agent_mesh/services/authorization/providers/base_authorization_provider.py,sha256=4c31MQRzGQdI7ACDgorIqAcxnUjbJwSs0fS06l6NoaI,2105
|
|
69
68
|
solace_agent_mesh/services/bamboo_hr_service/__init__.py,sha256=FoumR2m5O6lPcFgDhHbQ4CtsffM9CpvA7pVLT7RKuOQ,56
|
|
@@ -91,10 +90,10 @@ solace_agent_mesh/services/history_service/history_providers/index.py,sha256=XSJ
|
|
|
91
90
|
solace_agent_mesh/services/history_service/history_providers/memory_history_provider.py,sha256=66s1YsE3Tak9CunKk3Jy_p3KP7Ec6dudPwiZNcYfmbU,849
|
|
92
91
|
solace_agent_mesh/services/history_service/history_providers/mongodb_history_provider.py,sha256=TC1I5PADRE-EjydDRS5gav0h8xUC8ryGKfxdUumGPyo,2306
|
|
93
92
|
solace_agent_mesh/services/history_service/history_providers/redis_history_provider.py,sha256=LvkI4m_2FqujJ4G4MiRw15mjTJ8tK1wm6HgIU_2kTOc,2121
|
|
94
|
-
solace_agent_mesh/services/history_service/history_providers/sql_history_provider.py,sha256=
|
|
93
|
+
solace_agent_mesh/services/history_service/history_providers/sql_history_provider.py,sha256=MDZymhpgiZdTijeQJE8okRm_SdDuTSXbJZqpQt1qNJk,3182
|
|
95
94
|
solace_agent_mesh/services/history_service/long_term_memory/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
96
95
|
solace_agent_mesh/services/history_service/long_term_memory/long_term_memory.py,sha256=i0FkVVE7xkhE6VK1eu6UTDKqPnbJiMChu5fnjV1qvh0,19295
|
|
97
|
-
solace_agent_mesh/services/llm_service/components/llm_request_component.py,sha256=
|
|
96
|
+
solace_agent_mesh/services/llm_service/components/llm_request_component.py,sha256=YcEzl6QyVyKMkre3SDRB9sJrtuuQwz6Ej5l70XjKNP8,12655
|
|
98
97
|
solace_agent_mesh/services/llm_service/components/llm_service_component_base.py,sha256=vbtHMVRk4dCHDbo-gZfYfLPJYt4WFSq9A51UqVTLz18,5769
|
|
99
98
|
solace_agent_mesh/services/middleware_service/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
100
99
|
solace_agent_mesh/services/middleware_service/middleware_service.py,sha256=IoCnWr9XujVmfac6Z5FoLMeogszSwgPGkXXpWdYqKkU,899
|
|
@@ -103,36 +102,37 @@ solace_agent_mesh/tools/components/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQe
|
|
|
103
102
|
solace_agent_mesh/tools/components/conversation_formatter.py,sha256=_C60LepjhxPzQYCwjIAp8nQD3XdVpvZdxNO4cLBXXrY,4202
|
|
104
103
|
solace_agent_mesh/tools/components/file_resolver_component.py,sha256=MOKFuIBpxsQuSQF7ogdhtm2E1w8LDMs_giaNKfkx2pY,1965
|
|
105
104
|
solace_agent_mesh/tools/config/runtime_config.py,sha256=9-sCi2W5RSyN8WUHdSv6YVzKWORzK1akM-C19tDSCUo,860
|
|
106
|
-
solace_agent_mesh/cli/__init__.py,sha256=
|
|
105
|
+
solace_agent_mesh/cli/__init__.py,sha256=m6kyaNpwBcP1XYcqrelX2oS3PJuOnElOcRdBa9pEb8c,22
|
|
107
106
|
solace_agent_mesh/cli/config.py,sha256=CINCq-K0wFdFSXzgq0vF_zWpjCIZL7hk0XkH9U3a5Nk,2924
|
|
108
|
-
solace_agent_mesh/cli/main.py,sha256=
|
|
107
|
+
solace_agent_mesh/cli/main.py,sha256=HQXgNApZqQu9D91kkUqriWLKA_utkbPft_aLJqlxwGQ,7642
|
|
109
108
|
solace_agent_mesh/cli/utils.py,sha256=tTVqp73r5fEveSVQdtN21CMcmzJMjcf8_9akQT7hM9k,7798
|
|
110
109
|
solace_agent_mesh/cli/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
111
|
-
solace_agent_mesh/cli/commands/build.py,sha256=
|
|
110
|
+
solace_agent_mesh/cli/commands/build.py,sha256=3CjWNTqXBAw5fkBlj6ElEKHkUGxjBWkLH3i8WczmGOs,26113
|
|
112
111
|
solace_agent_mesh/cli/commands/config.py,sha256=_9Sw3TbTUgAVsEUrbTn72e4lABIchjpKS_JhSIF2EZ0,772
|
|
113
|
-
solace_agent_mesh/cli/commands/run.py,sha256=
|
|
112
|
+
solace_agent_mesh/cli/commands/run.py,sha256=ZI_jNHQns3KJrQNbG6wMUXsEy-YxWV3RLtpzj0Exat0,2084
|
|
114
113
|
solace_agent_mesh/cli/commands/visualizer.py,sha256=FhqEMQRQGrNnkkSihuEKE9rFBATQKjTXLwOUJZIsAH0,4646
|
|
115
114
|
solace_agent_mesh/cli/commands/add/__init__.py,sha256=pT-KD7dTvZdBdrZKBaqtlwwKwjX5Kg_WnotryI0cBXI,56
|
|
116
115
|
solace_agent_mesh/cli/commands/add/add.py,sha256=ojA9sjBBaLMLk4ccsFJwyr8hvZgfHTrf0en21TvzenA,3072
|
|
117
|
-
solace_agent_mesh/cli/commands/add/agent.py,sha256=
|
|
118
|
-
solace_agent_mesh/cli/commands/add/copy_from_plugin.py,sha256
|
|
119
|
-
solace_agent_mesh/cli/commands/add/gateway.py,sha256=
|
|
116
|
+
solace_agent_mesh/cli/commands/add/agent.py,sha256=iyrHOV958JbR2svAQWBpzvNaKpaR8rDrcNeUe7chtZE,3928
|
|
117
|
+
solace_agent_mesh/cli/commands/add/copy_from_plugin.py,sha256=-yr6y6u2sB_uuVJSqTPA1nUnXULzKwQ54ADCSZEQVUY,3433
|
|
118
|
+
solace_agent_mesh/cli/commands/add/gateway.py,sha256=D4A2FjreX5X5LxUuRs9Iwk4KKcTV1CJVaH-HfhdbojQ,16844
|
|
120
119
|
solace_agent_mesh/cli/commands/chat/__init__.py,sha256=nW7pZhP4UlWBGVtn0EyA4-rrOBofQ1zAxNTh9Ymmh3w,59
|
|
121
120
|
solace_agent_mesh/cli/commands/chat/chat.py,sha256=1zeE972Ao2B7ln2WoEwCAjLK6e8fHmoTZtcK8xgFvHU,12394
|
|
122
121
|
solace_agent_mesh/cli/commands/init/__init__.py,sha256=Z7a4KC9a2Y98CRKbU8_YCWrOjSN3_tuxrAe0SV_bJWM,59
|
|
123
|
-
solace_agent_mesh/cli/commands/init/ai_provider_step.py,sha256=
|
|
124
|
-
solace_agent_mesh/cli/commands/init/broker_step.py,sha256=
|
|
122
|
+
solace_agent_mesh/cli/commands/init/ai_provider_step.py,sha256=IRXTsRFJb5PNrelkCOmwrP4_qtObg82SaBPF5iLboqY,2747
|
|
123
|
+
solace_agent_mesh/cli/commands/init/broker_step.py,sha256=8154qJstIUEG0z0FG0ZsS24e24YqIVRD3DfV1ibCkqY,3386
|
|
125
124
|
solace_agent_mesh/cli/commands/init/builtin_agent_step.py,sha256=uIh_j19U9VRevzOMvqw0IxXjAMNY2dXumA9aUxNi1TM,3075
|
|
126
|
-
solace_agent_mesh/cli/commands/init/check_if_already_done.py,sha256=
|
|
127
|
-
solace_agent_mesh/cli/commands/init/create_config_file_step.py,sha256=
|
|
125
|
+
solace_agent_mesh/cli/commands/init/check_if_already_done.py,sha256=9qz2hkscnPx_6P63NA2jeAym37G2ArRo3hyh3kfQm0M,431
|
|
126
|
+
solace_agent_mesh/cli/commands/init/create_config_file_step.py,sha256=dhH2FDfjz0yS-aUsaNt_TImK4E2cdjeK61-6UOz08ww,2499
|
|
128
127
|
solace_agent_mesh/cli/commands/init/create_other_project_files_step.py,sha256=w258q2urQ3Y-1lCrHu1bKlQGNyLWWplLSV42oiBrpjU,5572
|
|
129
128
|
solace_agent_mesh/cli/commands/init/file_service_step.py,sha256=FrmA4Yb082lEFFe4cxLXr_8xT6hC8Zee-5ygR6XO4-E,2256
|
|
130
|
-
solace_agent_mesh/cli/commands/init/init.py,sha256=
|
|
129
|
+
solace_agent_mesh/cli/commands/init/init.py,sha256=cQej8fuVp_xWUBhCAXwRgeJ9n_zJ1GRlimsgSTyIsmA,3017
|
|
131
130
|
solace_agent_mesh/cli/commands/init/project_structure_step.py,sha256=pXIeYFmdY0oy0FVnOG0iqeGuK_nwDdICjqyj6b7mEss,518
|
|
131
|
+
solace_agent_mesh/cli/commands/init/web_init_step.py,sha256=Q61-7YX9mlfXXtRixiehaEwBRjUNnkgC3zrsTWqnGME,1359
|
|
132
132
|
solace_agent_mesh/cli/commands/plugin/__init__.py,sha256=zFmLT32wXFLISlIqpfR1Ru5pur2boWwfD-Et5R8PWbs,65
|
|
133
133
|
solace_agent_mesh/cli/commands/plugin/add.py,sha256=T1rD-jvjbX7qi5uH1Q85y_RzBqi1kDUQjymdgibIkdc,3782
|
|
134
|
-
solace_agent_mesh/cli/commands/plugin/build.py,sha256=
|
|
135
|
-
solace_agent_mesh/cli/commands/plugin/create.py,sha256=
|
|
134
|
+
solace_agent_mesh/cli/commands/plugin/build.py,sha256=60EL5OEblPqRkO13zGAegKYNuoQweh4JyhhOsfST0lc,11096
|
|
135
|
+
solace_agent_mesh/cli/commands/plugin/create.py,sha256=GkPgRw2fFVjbM580lNOVITmAFPNe8nymzi3GCmdUgUE,3645
|
|
136
136
|
solace_agent_mesh/cli/commands/plugin/plugin.py,sha256=ziyj5VOhsdKAMdcGwJ3z3NGC1CcfUKHOihLcxCre2yk,3853
|
|
137
137
|
solace_agent_mesh/cli/commands/plugin/remove.py,sha256=7SHOL2Jy5nMiD1ASavl3DC1jdav52hxDZo2JDs8Mq4o,2629
|
|
138
138
|
solace_agent_mesh/configs/agent_global.yaml,sha256=3bpVr6DeXAzA8U1F6rKhwL8oMbh3M3ZuhkguqaI9Nvs,2864
|
|
@@ -144,7 +144,7 @@ solace_agent_mesh/configs/error_catcher.yaml,sha256=NrZEVIq4B8S-2UXJd1AHHF_xLcIG
|
|
|
144
144
|
solace_agent_mesh/configs/monitor.yaml,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
145
145
|
solace_agent_mesh/configs/monitor_stim_and_errors_to_slack.yaml,sha256=zSOSUvcy8x91xHFdPqIndc8cK8g8Hjxj_1VWxrXYST0,4122
|
|
146
146
|
solace_agent_mesh/configs/monitor_user_feedback.yaml,sha256=iBZWKIA4XIdqKBCVwo39m-9uOXaCe0m5V59GUiSxiqM,1742
|
|
147
|
-
solace_agent_mesh/configs/orchestrator.yaml,sha256=
|
|
147
|
+
solace_agent_mesh/configs/orchestrator.yaml,sha256=Hux6evR9BzPTlXft97UkligJUy5GkeNHavttij8CvvA,9614
|
|
148
148
|
solace_agent_mesh/configs/service_embedding.yaml,sha256=9_uyjX87bqzG0uSX5AVwXEoOrk_LGkybYeoZgL39wbs,3132
|
|
149
149
|
solace_agent_mesh/configs/service_llm.yaml,sha256=GhK7Jk427dcqCtJRI_fidna-xakoWKc8zoGKNkrM2tg,10300
|
|
150
150
|
solace_agent_mesh/configs/visualize_websocket.yaml,sha256=5RlUyqjI2-nOKYUbwoFqfOSDFXLx5LuxraC_hXazdMY,1906
|
|
@@ -160,20 +160,34 @@ solace_agent_mesh/templates/gateway_input.py,sha256=gkjTYjgpOxMWU_k0EnB0BU_6q3vO
|
|
|
160
160
|
solace_agent_mesh/templates/gateway_output.py,sha256=fGM2HnYf9RXkOsLcuDD3HR4ozcxHX9UppxBPCUmtSKk,2191
|
|
161
161
|
solace_agent_mesh/templates/plugin-gateway-default-config.yaml,sha256=15ksBXhpCv_8m2kkmyUIlsZb6BZ9Us_Eeq_GQ40SEQI,789
|
|
162
162
|
solace_agent_mesh/templates/plugin-pyproject.toml,sha256=pD146TDV9DYbt6O8pE9O5KdX_CNqGGuy9BYf8TqmGJI,676
|
|
163
|
-
solace_agent_mesh/templates/rest-api-default-config.yaml,sha256=
|
|
163
|
+
solace_agent_mesh/templates/rest-api-default-config.yaml,sha256=JIiqaI46XpYawxMsRoEZeypvkg2qUKUAoIq7Er5mVq0,1340
|
|
164
164
|
solace_agent_mesh/templates/rest-api-flows.yaml,sha256=OVU9QPKlZMzla-G1HnqtKCFaYxgXF7pP1aFUR8LwWDQ,3150
|
|
165
165
|
solace_agent_mesh/templates/slack-default-config.yaml,sha256=TTtFSEh2-Y5HUyIIX1NpBtQlQ3R6Fm6aa_AhuIQZIDg,797
|
|
166
166
|
solace_agent_mesh/templates/slack-flows.yaml,sha256=nzLS67tT4Xh_NFynB4XJlr6pomgG5EkatsLBnGS3fBo,3201
|
|
167
|
-
solace_agent_mesh/templates/solace-agent-mesh-default.yaml,sha256=
|
|
167
|
+
solace_agent_mesh/templates/solace-agent-mesh-default.yaml,sha256=AWkqARNfGDeNcmnd0UbPNVCTMtCVnk11baLj_f202QU,3373
|
|
168
168
|
solace_agent_mesh/templates/solace-agent-mesh-plugin-default.yaml,sha256=T0GgQGHJc8uMNH8mlCqxAH3Zm4Yc-rCPiW1UVY6KcdA,331
|
|
169
|
-
solace_agent_mesh/templates/web-default-config.yaml,sha256=
|
|
169
|
+
solace_agent_mesh/templates/web-default-config.yaml,sha256=ulQ8NdoOrxYj3GFbZ6a6zB1pCh5EldVOqYBBi7xyfuc,415
|
|
170
170
|
solace_agent_mesh/templates/web-flows.yaml,sha256=dzy7BvQDNEsvzVb_O38LvdYbKn2XJmtIU2ExhPIRI2k,3028
|
|
171
171
|
solace_agent_mesh/assets/web-visualizer/index.html,sha256=Bn-hrNXJvapfRG-L_hs5K5ezKf53gw_H4x93rIdeAQw,484
|
|
172
172
|
solace_agent_mesh/assets/web-visualizer/vite.svg,sha256=SnSK_UQ5GLsWWRyDTEAdrjPoeGGrXbrQgRw6O0qSFPs,1497
|
|
173
173
|
solace_agent_mesh/assets/web-visualizer/assets/index-C5awueeJ.js,sha256=tlhSEqOgFpMuwd7X73mdRAxUCxQ8H7TiCfk4oHh6qXY,752048
|
|
174
174
|
solace_agent_mesh/assets/web-visualizer/assets/index-D0qORgkg.css,sha256=sR-djfZhg7oOrDkv7deFLKVioHOSGFA0ZCDPvK8jzYI,12678
|
|
175
|
-
solace_agent_mesh
|
|
176
|
-
solace_agent_mesh
|
|
177
|
-
solace_agent_mesh
|
|
178
|
-
solace_agent_mesh
|
|
179
|
-
solace_agent_mesh
|
|
175
|
+
solace_agent_mesh/config_portal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
176
|
+
solace_agent_mesh/config_portal/backend/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
177
|
+
solace_agent_mesh/config_portal/backend/common.py,sha256=vp0UvVJzCZ0skBZtynQe-S_CEQu_Pr3VyAhKwE6sUBU,1421
|
|
178
|
+
solace_agent_mesh/config_portal/backend/server.py,sha256=aGPj0ZczJi6idDwtX0AJ72hdSi_wOQzis5TQcCHgyrs,9313
|
|
179
|
+
solace_agent_mesh/config_portal/frontend/static/client/Solace_community_logo.png,sha256=ugNi5vBxTdFZMW2uWNZYcutyk4z8yw9e5KEL5XDcodU,5894
|
|
180
|
+
solace_agent_mesh/config_portal/frontend/static/client/favicon.ico,sha256=9z1ZdOqroxsg2-FzV79kTJ69hVqWVkrDlIv2RgmIhR8,15086
|
|
181
|
+
solace_agent_mesh/config_portal/frontend/static/client/index.html,sha256=v8pW2rPoP5S1CnCq9TndbTJ4PZf8DhUdAPf6IWWCLmc,1419
|
|
182
|
+
solace_agent_mesh/config_portal/frontend/static/client/assets/_index-b13CSm84.js,sha256=UDtr2tHuHD8zyFslq5lcVQOhvFEo9bk2RyF-SmyJNjk,69984
|
|
183
|
+
solace_agent_mesh/config_portal/frontend/static/client/assets/components-ZIfdTbrV.js,sha256=byBCjq622-9pxyjpk6G4AgmGQPtjY0QL8qX2Whw_5yo,249152
|
|
184
|
+
solace_agent_mesh/config_portal/frontend/static/client/assets/entry.client-DX1misIU.js,sha256=C68awbo_5jgbVkMOu6WJi_wdDdeI-tUhvZTU_WsUb5M,3862
|
|
185
|
+
solace_agent_mesh/config_portal/frontend/static/client/assets/index-BJHAE5s4.js,sha256=V7H-BcdTuNRqNbQnVWImW78-HDnHOP5xFhQdIrxhdw8,8289
|
|
186
|
+
solace_agent_mesh/config_portal/frontend/static/client/assets/manifest-c92a7808.js,sha256=E4B5vD3YtbcnSmO8DdJmVkx5PV4ys6PbASLdrxan2KI,781
|
|
187
|
+
solace_agent_mesh/config_portal/frontend/static/client/assets/root-BApq5dPK.js,sha256=oX8r3ga3GCSXTxA5F6P02UG85j9hbGEK0fNfE8H8t_E,1799
|
|
188
|
+
solace_agent_mesh/config_portal/frontend/static/client/assets/root-DX4gQ516.css,sha256=d8Y-ftUq3_IwxuhLtxvtKSK1g6iIwXkA7iq6SrYXfT0,21958
|
|
189
|
+
solace_agent_mesh-0.2.2.dist-info/METADATA,sha256=Buv-Xc0f17TjCxA5vTysLJW5jrbxE2BlfcgFbQKV5mE,8201
|
|
190
|
+
solace_agent_mesh-0.2.2.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
191
|
+
solace_agent_mesh-0.2.2.dist-info/entry_points.txt,sha256=VDI4Kkhc1jy9ajf8Qd08v3lpV4n7zoWBAo6fopQrXL8,108
|
|
192
|
+
solace_agent_mesh-0.2.2.dist-info/licenses/LICENSE,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
|
|
193
|
+
solace_agent_mesh-0.2.2.dist-info/RECORD,,
|
|
@@ -1,161 +0,0 @@
|
|
|
1
|
-
from langchain_core.messages import HumanMessage
|
|
2
|
-
import yaml
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
def RagWithBundleSummarySystemPrompt() -> str:
|
|
6
|
-
return """
|
|
7
|
-
You are the first stage in providing a great answer to a user's question
|
|
8
|
-
about Solace products. To get a great answer, you must work with the
|
|
9
|
-
user to ensure that their question is sufficiently unambiguous and
|
|
10
|
-
detailed. Specifically, with Solace products it is important to ensure that
|
|
11
|
-
the correct operational context is provided when necessary, since Solace brokers
|
|
12
|
-
can be appliances, self-managed software instances (VMs, containers, ...) or they
|
|
13
|
-
could be using Solace Cloud. Each of these operational contexts can have different
|
|
14
|
-
configurations and requirements. However, if the question is about a feature that
|
|
15
|
-
is common to all Solace products, then that context is not necessary. Make sure that
|
|
16
|
-
the question is clear and detailed enough to provide a good answer.
|
|
17
|
-
|
|
18
|
-
Along with their query, you are provided with summaries of all the bundles of documentation
|
|
19
|
-
available to retrieve answers to the user's question. If the question is sufficiently
|
|
20
|
-
detailed, then for each bundle summary, you must give it a relevance score from 0 to 5, where 5 is
|
|
21
|
-
indicates that the bundle will very likely answer the question, and 0 indicates that
|
|
22
|
-
the bundle is not relevant to the question. If the question is not detailed enough,
|
|
23
|
-
then you must ask the user for more information to clarify the question. For questions
|
|
24
|
-
relating to the Software broker, make user you include the Software Broker bundle. Similarly,
|
|
25
|
-
for Appliances, include the Appliance bundle and for Solace Cloud, include the Solace Cloud bundle.
|
|
26
|
-
|
|
27
|
-
When selecting bundles, you must return an object with the bundle indexes as keys and
|
|
28
|
-
the relevance scores as values. List the bundles in the order that they are provided to
|
|
29
|
-
you and give each one a score.
|
|
30
|
-
|
|
31
|
-
Some things that you should consider when scoring the bundles are:
|
|
32
|
-
- The term 'services' refers to all the protocols and input/outputs of the brokers. All information
|
|
33
|
-
about ports, protocols, and services should be in the 'services' bundle.
|
|
34
|
-
- When dealing specifically with default port values, it is necessary to go to the platform-specific
|
|
35
|
-
bundle. For example, the default port for the Software broker is different from the default port for
|
|
36
|
-
the appliance or Solace Cloud instance. The general services page has default port info but it might be wrong.
|
|
37
|
-
- 'gather-diagnostics' is a highly used term relating to debugging and troubleshooting of the brokers. Getting these
|
|
38
|
-
diagnostics varies greatly between the different types of brokers.
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
The answer must follow this YAML format:
|
|
42
|
-
|
|
43
|
-
Either: (for when the question does not need further clarification)
|
|
44
|
-
<response>
|
|
45
|
-
bundles:
|
|
46
|
-
0: <score0>
|
|
47
|
-
1: <score1>
|
|
48
|
-
...
|
|
49
|
-
query: <clarified-question>
|
|
50
|
-
</response>
|
|
51
|
-
|
|
52
|
-
or: (for when the question needs further clarification)
|
|
53
|
-
<response>
|
|
54
|
-
question: <clarification-question>
|
|
55
|
-
</response>
|
|
56
|
-
|
|
57
|
-
<example-request-1>
|
|
58
|
-
query: How do I get 'gather diagnostics' on a Solace broker?
|
|
59
|
-
</example-request-1>
|
|
60
|
-
<example-response-1>
|
|
61
|
-
<response>
|
|
62
|
-
question: Are you asking about a Solace appliance, a software broker or a Solace Cloud instance?
|
|
63
|
-
</response>
|
|
64
|
-
</example-response-1>
|
|
65
|
-
<example-response-2>
|
|
66
|
-
<response>
|
|
67
|
-
bundles:
|
|
68
|
-
0: 5
|
|
69
|
-
1: 2
|
|
70
|
-
2: 0
|
|
71
|
-
3: 3
|
|
72
|
-
query: How do I configure a Solace broker to use TLS?
|
|
73
|
-
</response>
|
|
74
|
-
</example-response-2>
|
|
75
|
-
<example-response-3>
|
|
76
|
-
<response>
|
|
77
|
-
question: Are you running the software broker yourself or through Solace Cloud?
|
|
78
|
-
</response>
|
|
79
|
-
</example-response-3>
|
|
80
|
-
<example-response-4>
|
|
81
|
-
<response>
|
|
82
|
-
bundles:
|
|
83
|
-
0: 0
|
|
84
|
-
1: 5
|
|
85
|
-
2: 3
|
|
86
|
-
query: How do I get 'gather diagnostics' on a Solace broker?
|
|
87
|
-
</response>
|
|
88
|
-
</example-response-4>
|
|
89
|
-
"""
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
def RagWithBundleSummaryUserPrompt(query: str, bundle_content: str):
|
|
93
|
-
return f"""
|
|
94
|
-
<user-query>\n{query}</user-query>\n\n<bundles>\n{bundle_content}\n</bundles>\n
|
|
95
|
-
|
|
96
|
-
Reminder, use the context above to answer this query:
|
|
97
|
-
<user-query-reminder>\n{query}</user-query-reminder>\n
|
|
98
|
-
"""
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
def RagWithBundleSummarySystemPromptPart2() -> str:
|
|
102
|
-
return """
|
|
103
|
-
You are the second stage in providing a great answer to a user's question
|
|
104
|
-
about Solace products. Your task is to take the user's question and the
|
|
105
|
-
context provided below and use that context to provide a well-thoughtout and
|
|
106
|
-
professional answer in markdown. The answer should be detailed enough to
|
|
107
|
-
provide the user with the information they need, but it should not be overly
|
|
108
|
-
verbose. The answer should be written in a professional tone and should be
|
|
109
|
-
free of spelling and grammatical errors. Always provide links to the source
|
|
110
|
-
of the information, which is given above the context starting with 'Page: ...'.
|
|
111
|
-
|
|
112
|
-
If you can't find the answer in the provided context, you must state that the
|
|
113
|
-
information that you have is insufficient to answer the question.
|
|
114
|
-
|
|
115
|
-
No not add any information that is not in the context provided. Don't trust the
|
|
116
|
-
general services page (Managing-Services) for default port information. The default
|
|
117
|
-
port for the Software broker is different from the default port for the appliance or
|
|
118
|
-
Solace Cloud instance. Look deeper for that information.
|
|
119
|
-
|
|
120
|
-
Solace CLI commands are immediately persisted. It is not necessary to 'write memory' or
|
|
121
|
-
'commit' the configuration. The user knows this, so there is no need to
|
|
122
|
-
mention it in the answer.
|
|
123
|
-
|
|
124
|
-
When providing an answer it is essential to provide links to the source of the
|
|
125
|
-
data as shown in the context below (Page: ...)
|
|
126
|
-
"""
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
def RagWithBundleSummaryUserPromptPart2(query: str, context: str):
|
|
130
|
-
return f"""
|
|
131
|
-
<user-query>\n{query}</user-query>\n\n<answer-context>\n{context}\n</answer-context>\n
|
|
132
|
-
|
|
133
|
-
Reminder, use the context above to answer this query: (and keep answers to only the context provided)
|
|
134
|
-
<user-query-reminder>\n{query}</user-query-reminder>
|
|
135
|
-
<rule>Add links to the source of the information in the context - important</rule>
|
|
136
|
-
"""
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
def RagWithBundleSummaryUserPromptClarificationQuestion(question: str):
|
|
140
|
-
return f"To clarify the customer documentation query, you must ask the user the following question: {question} and then perform the customer documentation query again."
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
def ChannelHistoryQueryPrompt(query: str, history_messages: list) -> HumanMessage:
|
|
144
|
-
return HumanMessage(
|
|
145
|
-
content=f"""
|
|
146
|
-
You (orchestrator) are being asked to query the channel history with the following query:
|
|
147
|
-
<channel_history_query>
|
|
148
|
-
{query}
|
|
149
|
-
</channel_history_query>
|
|
150
|
-
|
|
151
|
-
The messages in the channel history are shown below with the most recent first. You should use this information to answer the query.
|
|
152
|
-
You should return a send_message action with the answer to the query.
|
|
153
|
-
<channel_history_messages>
|
|
154
|
-
{yaml.dump(history_messages)}
|
|
155
|
-
</channel_history_messages>
|
|
156
|
-
"""
|
|
157
|
-
)
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
def BasicStatementPrompt(statement: str) -> HumanMessage:
|
|
161
|
-
return HumanMessage(content=statement)
|