Agent2Agent 协议 (A2A) DEMO
































一个开放协议,旨在实现不透明的智能代理应用程序之间的通信和互操作性。
企业采用人工智能的最大挑战之一是如何让基于不同框架和供应商构建的代理协同工作。这就是我们创建开放的 Agent2Agent (A2A) 协议的原因,这是一种协作方式,旨在帮助不同生态系统中的代理相互通信。Google 正在推动这项行业开放协议倡议,因为我们相信这个协议对于支持多代理通信至关重要,它将为您的代理提供一种通用语言——无论它们构建于哪个框架或供应商之上。借助 A2A,代理可以相互展示它们的功能并协商如何与用户交互(通过文本、表单或双向音频/视频)——所有这些都在安全地协同工作的同时进行。
观看 A2A 的实际应用
观看此演示视频,了解 A2A 如何实现不同代理框架之间的无缝通信。
概念概述
Agent2Agent (A2A) 协议促进了独立 AI 代理之间的通信。以下是核心概念:
/.well-known/agent.json),描述了代理的功能、技能、端点 URL 和身份验证要求。客户端使用它进行发现。tasks/send)。tasks/send 或 tasks/sendSubscribe)来启动任务。任务具有唯一的 ID,并经历以下状态:submitted(已提交)、working(工作中)、input-required(需要输入)、completed(已完成)、failed(失败)、canceled(已取消)。role: "user")和代理(role: "agent")之间的通信轮次。消息包含 Parts(部件)。Message 或 Artifact(工件)中的基本内容单元。可以是 TextPart(文本部件)、FilePart(文件部件,包含内联字节或 URI)或 DataPart(数据部件,用于结构化 JSON,例如表单)。Parts(部件)。streaming 功能的服务器可以使用 tasks/sendSubscribe。客户端接收服务器发送事件 (SSE),其中包含 TaskStatusUpdateEvent(任务状态更新事件)或 TaskArtifactUpdateEvent(任务工件更新事件)消息,提供实时的进度。pushNotifications 的服务器可以主动向客户端提供的 webhook URL 发送任务更新,该 URL 通过 tasks/pushNotification/set 配置。





















使用 Git 的工作流程





配置
查看全局配置
git config --global --list
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
user.name=军舰
user.email=wang-junjian@qq.com
http.postbuffer=524288000
http.version=HTTP/1.1
设置全局配置
git config --global user.name "军舰"
git config --global user.email wang-junjian@qq.com
初始化仓库
git init
Initialized empty Git repository in /Users/junjian/GitHub/wang-junjian/HelloGit/.git/
设置远程仓库
git remote add origin https://github.com/wang-junjian/HelloGit.git
基础
查看状态
开发
这是第一次开发 MCP Server,想着使用智能编码工具(GitHub Copilot、Cursor、Trae)进行氛围编程,发现真不容易,Claude 3.7 sonnet 效果不错,在 GitHub Copilot 没用多长时间超限制了;Cursor 没有达到之前那种随心的效果;Trae 要排长队,太有挫败感了。于是,开始了以人编码为主,大模型辅助的开发过程。
MCP Server 的工作流程
创建 RAGFlow MCP Server 项目
uvx create-mcp-server \
--path ragflow-mcp-server \
--name ragflow-mcp-server \
--version 0.1.0 \
--description "RAGFlow MCP Server" \
--no-claudeapp
cd ragflow-mcp-server
uv sync --dev --all-extras
uv add ragflow-sdk
下载 MCP 开发文档和 RAGFlow Python API 文档
初始化
uv init RAGFlowAssistant
cd RAGFlowAssistant
uv add ragflow-sdk
运行
sh run.sh
RAGFlowAssistant
配置

知识库问答

核心代码
欢迎使用Visual Studio Code 2025年3月版本。此版本包含许多更新,我们希望您会喜欢,一些主要亮点包括:
如果您想在线阅读这些发布说明,请前往code.visualstudio.com上的更新页面。 Insiders版本: 想尽快尝试新功能吗?您可以下载每晚构建的Insiders版本,并在功能可用后立即尝试最新更新。
聊天
代理模式在 VS Code 稳定版中可用
设置:setting(chat.agent.enabled:true)
用户的问题
构建AI代理的新手指南,帮助您克服挑战。
AI代理正变得越来越复杂,能够自动化工作流程、做出决策并与外部工具集成。然而,在现实世界中部署AI代理面临着很多挑战,这些挑战会影响其可靠性、性能和准确性。现在优先建立AI代理设计的强大基础,将为未来可靠、安全的自主系统奠定基础。
👉 本指南探讨了开发人员在创建AI代理时面临的五个最常见障碍,以及克服这些障碍的实用解决方案。 无论您是刚刚入门的新手还是正在改进方法的资深开发人员,这些最佳实践都将帮助您设计出在复杂环境中更可靠、更具扩展性和更有效的AI代理。
让我们开始构建代理式AI吧!
1. 管理工具集成
随着AI代理变得越来越复杂,管理它们对各种工具的访问和使用变得越来越具有挑战性。每增加一个工具都会引入新的潜在故障点、安全考虑因素和性能影响。确保代理适当地使用工具并优雅地处理工具故障对于可靠运行至关重要。
要解决这一挑战,请为代理工具箱中的每个工具创建精确的定义。包括何时使用该工具的明确示例、有效参数范围和预期输出。构建能够强制执行这些规范的验证逻辑,并从一小组定义明确的工具开始,而不是许多定义松散的工具。定期监控将帮助您识别哪些工具最有效,以及哪些定义需要完善。
2. 管理模型推理和决策
构建AI代理的一个基本挑战是确保一致可靠的决策。与遵循明确规则的传统软件系统不同,AI代理必须解释用户意图,对复杂问题进行推理,并最终基于概率分布做出决策。

git -C <目录> pull
这个命令用于从远程仓库获取最新代码并合并到当前分支。-C 选项允许你在指定的目录中运行 git 命令,而不需要先切换到那个目录。
下面是 MCP 相关的仓库
create-python-server
create-typescript-server
docs
inspector
python-sdk
quickstart-resources
servers
specification
typescript-sdk
更新所有仓库
方法一:手动更新
Continue 智能体
Agent 模式才支持 MCP Server。Agent 模式不支持 DeepSeek 系列的模型(包括官方API和开源)。Ollama 的模型:qwen2.5-coder:32b 和 qwq:latest。申请 GitHub 个人访问令牌(Personal Access Token)
GitHub 的 Settings 页面,点击 Developer settings。Personal access tokens,然后点击 Tokens (classic)。Generate new token 按钮。

Continue 配置
config.yaml 文件配置如下:
name: Local Assistant
version: 1.0.0
schema: v1
models:
- name: Autodetect
provider: ollama
model: AUTODETECT
- name: DeepSeek Chat
provider: deepseek
model: deepseek-chat
apiKey: sk-xxx
- name: DeepSeek Coder
provider: deepseek
model: deepseek-coder
apiKey: sk-xxx
// ...
安装 Node.js 环境
brew install node
调试 GitHub MCP Server
export GITHUB_PERSONAL_ACCESS_TOKEN=github_pat_XXX
npx @modelcontextprotocol/inspector npx -y @modelcontextprotocol/server-github
用户界面
运行浏览器,访问 URL:http://127.0.0.1:6274/

参考资料
GitHub MCP 服务器
GitHub API 的 MCP 服务器,支持文件操作、仓库管理、搜索功能等。
功能特点
工具
create_or_update_fileowner (字符串):仓库所有者(用户名或组织)repo (字符串):仓库名称path (字符串):创建/更新文件的路径content (字符串):文件内容message (字符串):提交消息branch (字符串):要在其中创建/更新文件的分支sha (可选字符串):被替换文件的 SHA(用于更新)push_filesowner (字符串):仓库所有者repo (字符串):仓库名称branch (字符串):要推送到的分支files (数组):要推送的文件,每个包含 path 和 contentmessage (字符串):提交消息search_repositories 搜索 GitHub 仓库 输入: query (字符串):搜索查询
⚠️ Trae 试用感受
功能界面


操作
提示词
使用 Streamlit UI 库开发一个连接 RAGFlow 的客户端应用,左边列出可选的知识库,右边是聊天对话框。



本页概述了支持模型上下文协议(Model Context Protocol, MCP)的应用程序。每个客户端可能支持不同的MCP功能,从而实现与MCP服务器的不同级别的集成。
功能支持矩阵
本页展示了各种模型上下文协议(MCP)服务器,这些服务器展示了该协议的功能和多样性。这些服务器使大型语言模型(LLM)能够安全地访问工具和数据源。
参考实现
这些官方参考服务器展示了核心 MCP 功能和 SDK 用法:
数据和文件系统
开发工具
Web 和浏览器自动化
生产力和通信
AI 和专业工具 EverArt - 使用各种模型的 AI 图像生成 Sequential Thinking -
大型语言模型(LLM)的工作原理根植于模式匹配和对下一个词元的统计预测("随机鹦鹉")。从这种方法中产生的一个有些出人意料的能力是它们也能在一定程度上"推理"解决问题。有些模型的推理能力比其他模型更强,OpenAI的"o1"和"o3"模型是两个突出的推理模型,而DeepSeek的"R1"最近引起了很大轰动。但是当我们在编码任务中使用AI时,这种能力发挥什么作用呢?
剧透提醒:我还没有答案!但我有问题和想法。
我将从两个方面开始讨论,这两个方面在我的理解中是推理能力的限制,而且这些限制在编码环境中是相关的。然后我将分享我的想法,即推理在哪些编码任务中可能有用,在哪些任务中可能没用。
上下文至关重要,尤其是对推理而言
苹果公司去年发表的一篇关于大型语言模型推理局限性的论文引起了广泛关注。作者引入了一个新的基准测试,用来测试LLM在"数学推理"方面的能力。他们的基准测试基于一个已有的包含小学数学问题的测试集。他们选取了100个问题,将其转化为带有变量占位符的模板,然后为每个模板创建了50个变体,形成了一个包含5,000个问题的数据集。在第二步中,他们还创建了一个新的数据集,在问题中添加了无关信息。
他们发现:
生成式人工智能和特别是大型语言模型(LLM)已迅速进入公众意识。像许多软件开发人员一样,我对其可能性感到好奇,但不确定它最终对我们的职业意味着什么。我现在在Thoughtworks担任一个角色,协调我们关于这项技术将如何影响软件交付实践的工作。我将在这里发布各种备忘录,描述我和同事们正在学习和思考的内容。
随着智能代理编码助手变得越来越强大,反应各不相同。有些人从最近的进步推断并声称,"一年后,我们将不再需要开发人员。"其他人则对AI生成代码的质量以及为初级开发人员准备应对这一变化的挑战表示担忧。
在过去几个月中,我定期使用Cursor、Windsurf和Cline中的智能代理模式,几乎完全用于更改现有代码库(而不是从头创建井字游戏)。总体而言,我对IDE集成的最新进展以及这些集成如何极大地提升工具辅助我的方式印象深刻。它们
所有这些都带来了与AI令人印象深刻的协作会话,有时帮助我在创纪录的时间内构建功能和解决问题。
然而。
即使在那些成功的会话中,我也一直在干预、纠正和引导。而且我经常决定不提交更改。
没有找到匹配的文章