Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/abdulbasit110/blog-writer-multi-agent

Blog Write multi agent AI is a custom multi-agent system designed to autonomously create high-quality, research-driven blogs. Using LangChain, Gemini 2.0-Flash-EXP, and Serper Web Search Tool, it automates planning, writing, and editing to deliver human-like blogs with up-to-date references.
https://github.com/abdulbasit110/blog-writer-multi-agent

agenticai crewai fastapi full-stack multiagents nextjs shadcn-ui vercel

Last synced: 22 days ago
JSON representation

Blog Write multi agent AI is a custom multi-agent system designed to autonomously create high-quality, research-driven blogs. Using LangChain, Gemini 2.0-Flash-EXP, and Serper Web Search Tool, it automates planning, writing, and editing to deliver human-like blogs with up-to-date references.

Awesome Lists containing this project

README

        

# Multi-Agent Blog Writing System - Crew AI

![Project Status](https://img.shields.io/badge/Status-Active-brightgreen)

## πŸš€ Overview

![multi agent blog writer.png]()

The **Multi-Agent Blog Writing System (Crew AI)** is an innovative project that utilizes cutting-edge technologies to automate the process of creating well-researched, human-like blogs. This system is designed to bridge the gap between AI automation and human creativity by incorporating the latest advancements in **Agentic AI**.

This project features a **multi-agent architecture** that autonomously plans, writes, and edits blog posts, ensuring they are accurate, engaging, and up-to-date with the latest trends.

---

## πŸ“ Project Structure

```
multi-agent/
β”‚
β”œβ”€β”€ client/
β”‚ └── bloggpt/ # Next.js frontend for blog generation
β”‚ β”œβ”€β”€ pages/ # Next.js pages
β”‚ β”œβ”€β”€ components/ # Reusable React components
β”‚ β”œβ”€β”€ actions/ # API calls to the FastAPI backend
β”‚ β”œβ”€β”€ tailwind.config.js
β”‚ β”œβ”€β”€ package.json
β”‚ └── ...
β”‚
│── crewai.ipynb # Jupyter Notebook with FastAPI server and AI logic
│── requirements.txt # Python dependencies
│── ...
```

---

## 🌟 Features

- **Planner Agent**: Structures and strategizes blog content based on the input query.
- **Writer Agent**: Generates the blog content using the **Gemini 2.0-Flash-EXP** LLM.
- **Editor Agent**: Refines the content for clarity, engagement, and accuracy.
- **Integration with Serper Web Search**: Fetches the latest information and trends.
- **FastAPI Backend**: Handles blog generation requests.
- **Next.js Frontend**: Provides a sleek user interface for input and blog display.
- **End-to-End Automation**: Delivers a complete, polished blog with references.

---

## βš™οΈ Technologies Used

### Backend
- **CREW AI**: For Creating multi agent system.
- **FastAPI**: For serving the AI-powered blog generation API.
- **Python**: For scripting and implementation.
- **LangChain**: For managing multi-agent workflows.
- **Gemini 2.0-Flash-EXP**: As the language model powering the system.
- **Serper Web Search Tool**: To gather real-time data and trends.

### Frontend
- **Next.js**: For building the client-side application.
- **React**: For creating dynamic UI components.
- **Tailwind CSS**: For styling.
- **Shadcn UI**: Components.

---

## πŸ›  Installation

### Backend Setup (FastAPI Server)
1. **Install Dependencies**:
Ensure Python 3.8+ is installed. Install the required Python libraries:
```bash
pip install -r server/requirements.txt
```

2. **Run the FastAPI Server**:
Open the `crewai.ipynb` notebook and run the cells to start the FastAPI server.
- **Server URL**: `http://127.0.0.1:8002`

---

### Frontend Setup (Next.js)
1. **Navigate to the Frontend Directory**:
```bash
cd client/bloggpt
```

2. **Install Dependencies**:
```bash
npm install
```

3. **Start the Development Server**:
```bash
npm run dev
```

4. **Frontend URL**: `http://localhost:3000`

---

## 🧠 How It Works

1. **User Input**: The user enters a topic through the Next.js frontend.
2. **API Request**: The frontend sends a POST request to the FastAPI server running at `http://127.0.0.1:8002/generate-blog/`.
3. **Blog Generation**:
- The FastAPI server processes the request using `crewai.ipynb`.
- The AI agents (Planner, Writer, Editor) collaboratively generate a polished blog.
4. **Response**: The FastAPI server returns the generated blog in Markdown format.
5. **Frontend Rendering**:
- The blog is rendered using `ReactMarkdown` with proper Markdown styling.

---

## 🎯 Use Cases

- **Content Marketing**: Automate blog creation for businesses and brands.
- **Research Documentation**: Generate research summaries or articles with minimal effort.
- **Trend Analysis**: Create content based on the latest trends in various domains.

---

## πŸ“ Future Enhancements

- **Multi-modal Capabilities**: Incorporate image and video generation.
- **Advanced Customization**: Enable user-specific writing styles.
- **Workflow Orchestration**: Add support for managing multiple blogs simultaneously.

---

## 🌐 Contact

For questions or collaboration, feel free to connect:

- **Author**: Abdul Basit
- **GitHub**: [Abdulbasit110](https://github.com/Abdulbasit110)
- **LinkedIn**: [Abdul Basit](https://www.linkedin.com/in/abdul-basit-231204255/)

---

**Elevating AI creativityβ€”one blog at a time! 🌟**

---