MCPA2APPT:基于 A2A+MCP+ADK 的多智能体流式并发高质量 PPT 智能生成系统

🚀 MCPA2APPT / MultiAgentPPT

集成 A2A + MCP + ADK 架构的智能化演示文稿生成系统,支持多智能体协作与流式并发,实时生成高质量 PPT 内容。


🧠 项目简介

MultiAgentPPT(又名 MCPA2APPT)采用 A2A(Ask-to-Answer)、MCP(Multi-agent Control Protocol)和 ADK(Agent Development Kit)三大核心模块,构建从用户输入主题到完整演示文稿输出的自动化流水线:

  1. 大纲生成 Agent
    根据用户需求,生成初步内容大纲。

  2. Topic 拆分 Agent
    将大纲拆解为若干子主题。

  3. Research Agent(并行)
    多个智能体并行对各主题展开检索与调研。

  4. Summary Agent
    汇总各 Research Agent 结果,生成幻灯片内容,采用流式并发返回至前端。

源码(Fork):https://github.com/MaoTouHU/MCPA2APPT


文章目录

  • 🚀 MCPA2APPT / MultiAgentPPT
    • 🧠 项目简介
    • ✨ 系统优势
    • 📸 界面演示
      • 1. 主题输入
      • 2. 大纲流式生成
      • 3. 完整大纲展示
      • 4. PPT 内容流式生成
    • 📊 并发多Agent协作流程
    • 🗂️ 项目结构
    • ⚙️ 快速开始
      • 🐍 后端环境配置
      • 🚀 启动后端服务
      • 🛢️ 前端数据库设置
      • 🌐 前端安装与运行
    • 🧪 示例数据说明
    • 📎 参考来源
    • 结语

✨ 系统优势

  • 多Agent协作:并行化处理,显著提升生成效率与内容质量。
  • 实时流式返回:大纲和幻灯片内容逐步展现,用户体验更流畅。
  • 高质量输出:集成外部检索,结合智能体协作深度挖掘信息。
  • 模块化可扩展:可按需添加智能体或功能插件。

📸 界面演示

在这里插入图片描述

1. 主题输入

用户在前端输入希望生成的 PPT 主题:
主题输入界面


2. 大纲流式生成

系统实时返回大纲结构:
大纲流式生成


3. 完整大纲展示

用户确认并微调最终大纲:
完整大纲展示


4. PPT 内容流式生成

基于确认的大纲,系统并发生成各页内容:
PPT 内容流式生成


📊 并发多Agent协作流程

大纲生成 Agent
根据用户需求生成初步大纲
Topic 拆分 Agent
拆分为多个主题
Research Agent 1
对主题 1 调研
Research Agent 2
对主题 2 调研
Research Agent N
对主题 N 调研
Summary Agent
汇总生成 PPT 内容
实时流式返回前端

🗂️ 项目结构

MultiAgentPPT/
├── backend/              
│   ├── simpleOutline/    # 简化大纲生成(无外部依赖)
│   ├── simplePPT/        # 简化 PPT 生成(无并发/检索)
│   ├── slide_outline/    # 高质量大纲生成(含检索)
│   └── slide_agent/      # 多Agent 并发 PPT 主服务
└── frontend/             # Next.js 前端界面

⚙️ 快速开始

🐍 后端环境配置

# 1. 创建并激活 Conda 虚拟环境
conda create --name multiagent python=3.12
conda activate multiagent# 2. 安装依赖
cd backend
pip install -r requirements.txt# 3. 配置环境变量
for module in simpleOutline simplePPT slide_outline slide_agent; docd backend/$module && cp env_template .env && cd ../../
done

🚀 启动后端服务

模块功能默认端口启动命令
simpleOutline简化大纲生成10001python main_api.py
simplePPT简化 PPT 生成10011python main_api.py
slide_outline高质量大纲(含检索)10001*python main_api.py
slide_agent多Agent 并发生成完整 PPT10011*python main_api.py

* 启动前请先关闭对应简化服务。


🛢️ 前端数据库设置

  1. 启动 PostgreSQL:

    docker run --name postgresdb -p 5432:5432 \-e POSTGRES_USER=postgres \-e POSTGRES_PASSWORD=welcome -d postgres
    
  2. 安装依赖并推送 Prisma 模型:

    pnpm install
    pnpm db:push
    
  3. 如无默认用户,请手动插入一条:
    frontend/insert_one_user.sql

  4. 更新 .env

    DATABASE_URL="postgresql://postgres:welcome@localhost:5432/presentation_ai"
    A2A_AGENT_OUTLINE_URL="http://localhost:10001"
    A2A_AGENT_SLIDES_URL="http://localhost:10011"
    

🌐 前端安装与运行

cd frontend
npm install
cp env_template .env
npm run dev

浏览器访问:http://localhost:3000


🧪 示例数据说明

系统内置演示主题:“电动汽车发展概述”
如需自定义主题,请接入对应 Agent 并配置数据源。


📎 参考来源

  • 前端项目参考:allweonedev/presentation-ai

结语

非常感谢所有开源社区的无私奉献和贡献,正是因为有了 A2A、MCP、ADK 等核心架构的开放与共享,MultiAgentPPT 才得以顺利构建并不断迭代。该系统通过多智能体协作与流式并发机制,实现了从主题输入到高质量 PPT 输出的全流程自动化,为用户带来了更高效、精准、流畅的演示文稿创作体验。再次感谢所有开发者、文档维护者和测试者的辛勤付出,让这一智能化演示工具得以惠及更多人。期待未来更多优秀的开源项目,共同推动技术与创意的无限可能!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/912198.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/912198.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Maven 多模块项目调试与问题排查总结

🧑 博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编…

debian国内安装docker

先升级apt和安装依赖包 apt update apt upgrade apt install curl vim wget gnupg dpkg apt-transport-https lsb-release ca-certificates添加存储库的GPG密钥(阿里云) curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/debian/gpg | sudo gpg…

vue网页中的一个天气组件使用高德api

今天写了一个天气组件效果如下&#xff1a; 实现代码如下&#xff1a; <template><div><span click"getLocation" style"cursor: pointer"><span style"color:white;">{{ weatherInfo.area }}</span></span&g…

5 手写卷积函数

5 手写卷积函数 背景介绍滑动窗口的方式代码问题 矩阵乘法的方式原理代码结果 效果对比对比代码日志结果 一些思考 背景 从现在开始各种手写篇章&#xff0c;先从最经典的卷积开始 介绍 对于卷积层的具体操作&#xff0c;我这里就不在具体说卷积具体是什么东西了。 对于手写…

vue3+element-plus,实现两个表格同步滚动

需求&#xff1a;现在需要两个表格&#xff0c;为了方便对比左右的数据&#xff0c;需要其中一边的表格滚动时&#xff0c;另一边的表格也跟着一起滚动&#xff0c;并且保持滚动位置的一致性。具体如下图所示。 实现步骤&#xff1a; 确保两个表格的宽度一致&#xff1a;如果两…

Mysql架构

思考&#xff1a;Mysql需要重点学习什么&#xff1a; 索引&#xff1a;索引存储结构、索引优化......事务&#xff1a;锁机制与隔离级别、日志、集群架构 本文是对Mysql架构进行初步学习 1、Mysql链接 Mysql监听器是长连接 BIO(阻塞同步IO调用)&#xff0c; 不是NIO. 为什么…

使用deepseek制作“喝什么奶茶”随机抽签小网页

教程很简单&#xff0c;如下操作 1. 新建文本文档&#xff0c;命名为奶茶.txt 2. 打开deepseek&#xff0c;发送下面这段提示词&#xff1a;用html5帮我生成一个喝什么奶茶的网页&#xff0c;点击按钮随机生成奶茶品牌等&#xff0c;包括喜茶等众多常见的奶茶品牌如果不满意还…

WOE值:风险建模中的“证据权重”量化术——从似然比理论到FICO评分卡实践

WOE值&#xff08;Weight of Evidence&#xff0c;证据权重&#xff09; 是信用评分和风险建模中用于量化特征分箱对目标变量的预测能力的核心指标。 本文由「大千AI助手」原创发布&#xff0c;专注用真话讲AI&#xff0c;回归技术本质。拒绝神话或妖魔化。搜索「大千AI助手」关…

js递归性能优化

JavaScript 递归性能优化 递归是编程中强大的技术&#xff0c;但在 JavaScript 中如果不注意优化可能会导致性能问题甚至栈溢出。以下是几种优化递归性能的方法&#xff1a; 1. 尾调用优化 (Tail Call Optimization, TCO) ES6 引入了尾调用优化&#xff0c;但只在严格模式下…

vue界面增加自定义水印 js

vue整个界面增加自定义水印 需求&#xff1a;领导想要增加自定义水印 好不容易调完&#xff0c;还是想记录一下,在.vue界面编写 export default {mounted() {this.$nextTick(() > {this.addWatermark()})},methods: {// 关键&#xff1a;添加水印// 动态添加水印addWaterm…

Go开发工程师-Golang基础知识篇

开篇 我们尝试从2个方面来进行介绍&#xff1a; 1. 社招实际面试问题 2. 问题涉及的基础点梳理 社招面试题 米哈游 1. Go 里面使用 Map 时应注意问题和数据结构 2. Map 扩容是怎么做的&#xff1f; 3. Map 的 panic 能被 recover 掉吗&#xff1f;了解 panic 和 recover …

能否仅用两台服务器实现集群的高可用性??

我们将问题分为两部分来回答&#xff1a;一是使用 Redis 或 Hazelcast 确保数据一致性后是否仍需 Oracle 或 MySQL 等数据库&#xff1b;二是能否仅用两台服务器实现集群的高可用性。以下是详细探讨&#xff1a; 1. 使用 Redis 或 Hazelcast 确保数据一致性后&#xff0c;还需要…

spring-ai-alibaba DashScopeCloudStore自动装配问题

问题 在学习spring-ai-alibaba时&#xff0c;发现1.0.0.2版本在自动装配DashScopeCloudStore时&#xff0c;会报如下错误&#xff1a; Field dashScopeCloudStore in com.example.spring_ai_alibaba_examples.examples.SpringAiAlibabaExample01 required a bean of type com…

docker-compose部署nacos

1、docker-compose内容 高版本的nacos使用docker启动&#xff0c;需要将所有的端口放开&#xff0c;仅仅开放8848端口&#xff0c;spring-boot客户端获取nacos配置的时候&#xff0c;可能取到的内容为空。 version: 3# 定义自定义网络&#xff0c;确保服务间通信和外部访问 ne…

CSRF 与 SSRF 的关联与区别

CSRF 与 SSRF 的关联与区别 区别 特性CSRF (跨站请求伪造)SSRF (服务器端请求伪造)攻击方向客户端 → 目标网站服务器 → 内部/外部资源攻击目标利用用户身份执行非预期操作利用服务器访问内部资源或发起对外请求受害者已认证的用户存在漏洞的服务器利用条件用户必须已登录目…

Payload-SDK自动升级

Payload-SDK自动升级 前言 自动升级旨在通过无人机更新负载上的软件&#xff0c;包括不限于&#xff1a;Payload-SDK应用、配置文件等。对于文件的传输&#xff0c;大疆的Payload-SDK给我们提供了两种方式&#xff1a;使用FTP协议和使用大疆自研的DCFTP。我们实现的自动升级是…

第五代移动通信新型调制及非正交多址传输技术研究与设计

第五代移动通信新型调制及非正交多址传输技术研究与设计 一、新型调制技术研究与实现 1. FBMC (滤波器组多载波) 调制实现 import numpy as np import matplotlib.pyplot as plt from scipy.fft import fft, ifft, fftshift from scipy.signal import get_window

AI 智能运维,重塑大型企业软件运维:从自动化到智能化的进阶实践​

一、引言&#xff1a;企业软件运维的智能化转型浪潮​ 在数字化转型加速的背景下&#xff0c;大型企业软件架构日益复杂&#xff0c;微服务、多云环境、分布式系统的普及导致传统运维模式面临效率瓶颈。AI 技术的渗透催生了智能运维&#xff08;AIOps&#xff09;的落地&#x…

Apache CXF安装详细教程(Windows)

本章教程,主要介绍,如何在Windows上安装Apache CXF,JDK版本是使用的1.8. 一、下载Apache CXF Apache CXF(Apache Celtix Fireworks)是一个开源的 Web 服务框架,用于 构建和开发服务端与客户端的 Web 服务应用程序。它支持多种 Web 服务标准,尤其是 SOAP(基于 XML 的协议…

逆向入门(22)程序逆向篇-TraceMe

界面看起来很普通 也没有壳&#xff0c;直接搜索字符串找到关键代码处 但是发现这些都是赋值&#xff0c;并没有实现跳转相关的函数。这里通过给弹窗函数下断点&#xff0c;追一下返回函数来找触发点。 再次点击check&#xff0c;触发断点&#xff0c;接着按ctrlF9返回到函数…