agentic-ai-public  by https-deeplearning-ai

Agentic research service orchestrating complex workflows

Created 2 months ago
265 stars

Top 96.6% on SourcePulse

GitHubView on GitHub
Project Summary

<2-3 sentences summarising what the project addresses and solves, the target audience, and the benefit.> This project provides a Reflective Research Agent service, built with FastAPI and PostgreSQL, designed to automate research workflows. It targets users of the Agentic Workflow course, enabling them to plan, execute multi-step research tasks using AI agents and various tools, and store/retrieve results. The primary benefit is a streamlined, automated research process with live progress tracking and report generation.

How It Works

The system is a FastAPI web application, packaged with PostgreSQL in a single Docker container for local development. It orchestrates a multi-agent workflow initiated via an API endpoint. A planner agent determines the research steps, which are then executed by specialized agents (research, writer, editor) leveraging tools like Tavily search, arXiv, and Wikipedia. Task state and results are persisted in PostgreSQL, with progress accessible via a dedicated API endpoint. This integrated approach automates complex research tasks from planning to final report generation.

Quick Start & Requirements

  • Primary Install/Run: Docker is the primary method. Build the image with docker build -t fastapi-postgres-service . and run using docker run --rm -it -p 8000:8000 -p 5432:5432 --name fpsvc --env-file .env fastapi-postgres-service.
  • Prerequisites: Docker (Desktop or Engine), OPENAI_API_KEY, and TAVILY_API_KEY (configured via a .env file). Python dependencies are managed within the Docker build.
  • Links: Application UI at http://localhost:8000/, API documentation at http://localhost:8000/docs.

Highlighted Details

  • Features a simple web UI served by Jinja2 templates.
  • API endpoints for initiating reports (/generate_report), polling progress (/task_progress/{task_id}), and retrieving final status (/task_status/{task_id}).
  • Employs distinct agents for planning, research, writing, and editing.
  • Integrates external search tools: Tavily, arXiv, and Wikipedia.
  • Utilizes PostgreSQL for robust state management and result storage.

Maintenance & Community

No specific details regarding maintainers, community channels (e.g., Discord, Slack), or project roadmaps are provided in the README.

Licensing & Compatibility

The README does not specify a software license, which is a critical omission for assessing compatibility and usage rights, particularly for commercial applications.

Limitations & Caveats

The Wikipedia API may be subject to rate limiting. The default database schema might be dropped on startup unless explicitly configured via an environment flag, potentially leading to data loss if not managed. Network access and correct API key configuration are essential for tool functionality.

Health Check
Last Commit

1 month ago

Responsiveness

Inactive

Pull Requests (30d)
2
Issues (30d)
1
Star History
73 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.