Essay_Writer_Agent / README.md
NaderAfshar
Updated the README file
43aecb1
---
title: Report Writer Agent
emoji: πŸ†
colorFrom: indigo
colorTo: green
sdk: gradio
sdk_version: 5.28.0
app_file: app.py
pinned: false
license: mit
short_description: Report Writing Agent by Nader Afshar
---
# Research-Driven Report Writing Agent
# πŸ”Ž Research Agent
The **Research Agent** is an autonomous, multi-step research system built using [LangGraph](https://github.com/langchain-ai/langgraph), [Cohere](https://cohere.com), and [Tavily](https://www.tavily.com/). It mimics the behavior of a human research assistant β€” planning, researching, drafting, critiquing, and revising β€” to produce high-quality **research reports** on any topic the user provides.
---
## 🧠 What Sets It Apart?
Unlike typical AI content generators, this agent performs **real-time research** to ensure that reports are grounded in current, verifiable information.
### ✨ Highlights:
- Uses **Cohere’s `command-a-03-2025` LLM** for language generation, outlining, and critique.
- Uses **Tavily** to perform real-time, internet-based research (not just LLM memory).
- Produces **structured, refined research reports**, not informal essays or chatbot replies.
- Streams its **research and reasoning process** live so users can follow along.
---
## 🧩 How It Works
1. **User provides a topic or research question** through the UI.
2. The agent:
- **Plans** the structure of the research.
- **Conducts multiple web searches** via Tavily.
- **Drafts a full report** using retrieved content and context.
- **Critiques** and **revises** the report internally.
3. The output includes:
- A live, streaming **log of the research process**.
- A clean, **final research report** as a separate result.
---
## ⏳ Why It Takes Time
The Research Agent behaves more like a human researcher than a chatbot:
- It may take **~30 seconds before the first visible output**, while:
- Querying the web.
- Organizing thoughts.
- Planning the structure.
- It takes **1–2 minutes or more** to complete a full research and writing cycle with critique + revision.
🧠 **This is intentional**: speed is traded for depth, accuracy, and reasoning.
---
## πŸ–₯ Interface
Built with **Gradio**, the app includes:
- A **textbox** for entering a topic or question.
- A **streaming log** of research, planning, and revision steps.
- A **final output panel** for the completed research report.
---
## πŸ› οΈ Technologies Used
| Component | Purpose |
|----------------|------------------------------------------|
| LangGraph | Agent state machine + step logic |
| Cohere LLM | `command-a-03-2025` model for text tasks |
| Tavily Search | Real-time research via web search |
| LangChain Core | Messaging and prompt orchestration |
| Gradio | Interactive web interface |
---
## πŸš€ Getting Started
1. Install dependencies:
```bash
pip install -r requirements.txt