86 lines
2.3 KiB
Markdown
86 lines
2.3 KiB
Markdown
# Summary Generator multi-agent workflow with ACP
|
|
|
|
A simple demonstration of the Agent Communication Protocol (ACP), showcasing how two agents built using different frameworks (CrewAI and Smolagents) can collaborate seamlessly to generate and verify a research summary.
|
|
|
|
---
|
|
|
|
## Setup and Installation
|
|
|
|
1. **Install Ollama:**
|
|
```bash
|
|
# Setting up Ollama on linux
|
|
curl -fsSL https://ollama.com/install.sh | sh
|
|
|
|
# Pull the Qwen2.5 model
|
|
ollama pull qwen2.5:14b
|
|
```
|
|
|
|
2. **Install project dependencies:**
|
|
|
|
Ensure you have Python 3.10 or later installed on your system.
|
|
|
|
First, install `uv` and set up the environment:
|
|
```bash
|
|
# MacOS/Linux
|
|
curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
|
|
# Windows
|
|
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
|
|
```
|
|
|
|
Install dependencies:
|
|
```bash
|
|
# Create a new directory for our project
|
|
uv init acp-project
|
|
cd acp-project
|
|
|
|
# Create virtual environment and activate it
|
|
uv venv
|
|
source .venv/bin/activate # MacOS/Linux
|
|
|
|
.venv\Scripts\activate # Windows
|
|
|
|
# Install dependencies
|
|
uv add acp-sdk crewai smolagents duckduckgo-search ollama
|
|
```
|
|
|
|
You can also use any other LLM providers such as OpenAI or Anthropic. Create a `.env` file and add your API keys
|
|
```
|
|
OPENAI_API_KEY=your_openai_key
|
|
ANTHROPIC_API_KEY=your_anthropic_key
|
|
```
|
|
|
|
## Usage
|
|
Start the two ACP servers in separate terminals:
|
|
|
|
```bash
|
|
# Terminal 1
|
|
uv run crew_acp_server.py
|
|
|
|
# Terminal 2
|
|
uv run smolagents_acp_server.py
|
|
```
|
|
|
|
Run the ACP client to trigger the agent workflow:
|
|
|
|
```bash
|
|
uv run acp_client.py
|
|
```
|
|
|
|
Output:
|
|
|
|
A general summary from the first agent
|
|
|
|
A fact-checked and updated version from the second agent
|
|
|
|
## 📬 Stay Updated with Our Newsletter!
|
|
**Get a FREE Data Science eBook** 📖 with 150+ essential lessons in Data Science when you subscribe to our newsletter! Stay in the loop with the latest tutorials, insights, and exclusive resources. [Subscribe now!](https://join.dailydoseofds.com)
|
|
|
|
[](https://join.dailydoseofds.com)
|
|
|
|
---
|
|
|
|
## Contribution
|
|
|
|
Contributions are welcome! Please fork the repository and submit a pull request with your improvements.
|