API转AI工具生成器

APIBridge是一款将Swagger/OpenAPI规范自动转换为AI工具的技术产品,无需手动编写集成代码,适用于快速构建AI应用与REST API的交互。

  • by Navin3d
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Navin3d/Agentic-API-Bridge-Protocol

使用说明

APIBridge:从Swagger/OpenAPI规范生成AI代理工具

字幕: 在几秒钟内将REST API转换为AI就绪工具——无需手动集成代码


📖 引言|概述

问题陈述

现代人工智能应用程序需要无缝访问RESTAPI,但开发人员目前必须为每个API编写自定义集成代码。这是:

  • 耗时的:每个API样板代码的小时数
  • 容易出错:手动规范会导致错误和不一致
  • 难以维持:API更改需要手动更新代码
  • 不可扩展:添加新的API变得指数级复杂

你将学到什么

在本指南结束时,您将了解:

  • 如何将任何Swagger/OpenAPI规范转换为Python工具代码
  • 如何使用自动生成的工具创建动态ADK代理
  • 如何构建一个协调多个API的主代理
  • 如何在Google Cloud Run上部署此应用程序以供生产使用

目标受众

  • 后端工程师 构建人工智能应用程序
  • DevOps团队 管理API集成
  • 金融科技/银行开发商 桥接API和AI(如NatWest的模型上下文协议用例)
  • 黑客马拉松参与者 云端原生人工智能开发
  • 企业架构师 标准化AI-API交互

预期结果

在本教程结束时,您将拥有:

  • ✅ 任何Swagger规格的全功能工具生成器
  • ✅ 具有动态生成工具的工作ADK代理
  • ✅ 为所有API端点生成Python代码
  • ✅ 协调多个API的主代理
  • ✅ 云运行的部署就绪Docker设置
  • ✅ 一篇解释架构的博客文章

🏗️ 设计

架构概述

Swagger/OpenAPI规范(JSON) ↓ Swagger工具生成器 ├─ 解析端点 ├─ 提取参数 ├─ 生成Python代码 └─ 创建工具定义 ↓ DynamicToolAgent(ADK驱动) ├─ 编译生成的工具 ├─ 注册LLM(Gemini) ├─ 管理工具执行 └─ 处理错误 ↓ 主代理(编排器) ├─ 将查询路由到子代理 ├─ 协调多API工作流 └─ 提供统一的界面 ↓ 云运行/Vertex AI部署

为什么是这个设计?

可扩展性: 无需手动代码即可为100多个端点生成工具 灵活性: 适用于任何Swagger/OpenAPI规范 安全: 具有错误处理功能的独立工具执行 生产就绪: 专为GCP上的企业部署而构建 法学硕士不可知论者: 与任何ADK模型兼容的工具定义

设计原理

该设计解决了 模型上下文协议(MCP)挑战 NatWest指出:人工智能代理需要标准化地访问业务工具和数据。ToolForge不是手动生成API适配器,而是根据API规范自动生成这些适配器。

对可用性的影响:

  • 开发人员将集成时间从几小时缩短到几分钟
  • 无需自定义代码维护
  • API更改自动传播

对功能的影响:

  • 代理可以立即访问任何REST API
  • 多API编排是无缝的
  • 内置错误处理功能

📋 先决条件

软件和工具

工具 版本 目的 下载
Python 3.10+ 运行时环境 python.org
谷歌云SDK 最新 云部署 cloud.google.com/sdk
Docker 24.0+ 集装箱化 docker.com
Git 最新版本 版本控制 git-scm.com
VS代码 最新 代码编辑器(可选) code.visualstudio.com

必需的Python库

谷歌广告>=0.1.0#谷歌代理开发工具包 google-generativeai>=0.3.0#Gemini API访问 谷歌云AI平台#Vertex AI集成 请求数>=2.31.0#HTTP请求 pydantic>=2.0.0#数据验证 jsonschema>=4.20.0#JSON模式验证

先前概念/知识

  • REST API:了解HTTP方法(GET、POST、PUT、DELETE)
  • JSON:熟悉JSON结构和解析
  • python:基本的Python类、函数、装饰器
  • Swagger/OpenAPI:了解API规范(提供简介)
  • 谷歌云:基本的GCP项目设置知识

系统要求

  • 随机存取存储器:最低4GB(建议8GB)
  • 磁盘空间:2GB用于依赖关系和生成的文件
  • 网络:谷歌云服务的互联网接入
  • 操作系统:Linux、macOS或Windows(带WSL)

🔧 分步说明

步骤1:克隆和设置项目

  • 克隆存储库
git clone https://github.com/yourusername/toolforge.git
cd toolforge
  • 创建虚拟环境
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
  • 安装依赖项
pip install -r requirements.txt

发生了什么:

  • 虚拟环境隔离了项目依赖关系
  • requirements.txt 包含所有必要的包

步骤2:准备您的Swagger规格

将Swagger/OpenAPI JSON文件放入 specifications/NatWest.json: