写点什么

AWS 开源了 Smithy API 模型,可用于公共访问和开发人员工具

  • 2025-06-20
    北京
  • 本文字数:918 字

    阅读完需:约 3 分钟

大小:484.46K时长:02:45
AWS开源了Smithy API模型,可用于公共访问和开发人员工具

AWS 最近宣布其确定性 API 模型的公开可用性,每日向Maven Central发布更新,并通过一个新的GitHub存储库提供开源访问。

 

这些资源包含 Smithy API 模型,定义了 AWS 的公共接口、操作、行为和错误类型,超越了它们用于 SDK 和 CLI 生成中的内部使用。Smithy是一种协议无关的接口定义语言,它提供了一组工具,可用于为任何编程语言生成客户端、服务器和文档。

 

自 2018 年以来,AWS 一直在内部使用Smithy模型生成其 SDK 客户端和 CLI 工具。通过使这些模型公开可访问,AWS 旨在为开发和集成提供更广泛的生态系统。根据该公司的说法,通过这一举措,开发人员可以:

 

  • 生成自定义SDK客户端:使用 Smithy 工具链为尚未得到 AWS 官方的编程语言社区构建专门的 SDK。

  • 生成 API 实现:为特定语言框架创建服务器存根,包括对用于 AI 智能体的模型上下文协议(MCP)服务器配置的支持,并完成内置验证。

 

  • 构建自定义开发人员工具:为 AWS 集成开发模拟测试工具、IAM 策略生成器或更高级别的抽象。

  • 理解 AWS API 行为:获得对 AWS SDK 如何解释 API 调用及其预期行为的简洁且易于理解的洞察。

 

全栈开发人员 David Wells 在 X 上写道

 

这是一个令人难以置信的一方库,包含了所有的 AWS 服务模型。一个示例用例:将服务[xyz]的 Smithy 定义放入 Google AI Studio 中,并向它询问有关服务及其操作的问题。我发现了我从未找寻到的隐藏宝石。


 

api-models-aws GitHub 存储库以JSON抽象语法树(AST)格式托管这些 Smithy 模型,每个模型定义了服务类型、操作(包括输入、输出、特征和错误)以及对特定目标的引用,如 Amazon EC2 中的 RunInstances API。Smithy 的“shapes”代表类型,而“traits”为客户端、服务器或文档添加了关键的元数据,提供了详细的 API 信息,如使用示例。

 

开发人员可以利用 Smithy 构建工具(如Smithy CLI)来处理这些模型,执行临时验证、比较模型,并生成代码,而无需 Java 设置。AWS 提供了示例项目,包括使用Smithy TypeScript构建最小的 Amazon DynamoDB SDK 客户端的模板,以及构建 MCP 服务器的示例,这些 MCP 服务器将工具建模为 Smithy API 或任何 Smithy 服务的代理 MCP 服务器。

 

最后,更多信息请访问 Smithy.io 网站,其中包括它的代码生成指南。

 

原文链接:

https://www.infoq.com/news/2025/06/aws-smithy-api-models-opensource/

2025-06-20 17:006459

评论 1 条评论

发布
用户头像
11
2025-06-20 17:04 · 上海
回复
没有更多了

WBTT:“Fair Launch”如何做到更加公平

股市老人

C# 介绍、应用领域、入门、语法、输出和注释详解

小万哥

C# 程序人生 编程语言 软件工程 后端开发

站在AGI拐点,重新想象老年生活

脑极体

AI

左耳听风 - 高效学习「读书打卡 day 08」

Java 工程师蔡姬

学习 读书笔记 程序员 个人成长 职业发展

软件研发过程中,项目管理工具应该如何选择?

极狐GitLab

如何实现数据库读一致性

京东科技开发者

CNCF大使预测:2024年云原生面临倦怠、离职及云成本精简

SEAL安全

云原生 FinOps 开发人员

WBTT:“Fair Launch”如何做到更加公平

BlockChain先知

笔记软件Notability新手使用教程:功能特点、替代软件盘点和分屏技巧!

彭宏豪95

ipad 在线白板 笔记软件 Notability boardmix

Go 简单设计和实现可扩展、高性能的泛型本地缓存

陈明勇

Go golang 缓存 go 本地缓存

为什么需要在 OpenShift 上部署企业级 Ingress Controller

NGINX开源社区

负载均衡 Kubernetes openshift Ingress Controller nginx 开源版

数据集成时表模型同步方法解析

KaiwuDB

数据库 数据同步 数据集成

活了三十多年终于知道单模光纤与多模光纤

小齐写代码

深入理解WebSocket ACK:关键技术提升数据传输的可靠性

Apifox

前端 后端 websocket 协议 WebSocket ACK

WBTT:“Fair Launch”如何做到更加公平

石头财经

请用心对待面试机会

老张

面试经验 求职面试 求职技巧

企业为什么要选择软件定制开发?

天津汇柏科技有限公司

软件定制 软件定制开发 软件开发定制

IPQ9574: High-performance WiFi7 wireless network chip leading the future

wallysSK

喜讯!无垠智能模糊测试系统入选“2023软件供应链优秀成果”

云起无垠

【深入挖掘Java技术】「源码原理体系」盲点问题解析之HashMap工作原理全揭秘(上)

码界西柚

Java 源码分析 hashmap 实现原理 2024年第十三篇文章

AWS开源了Smithy API模型,可用于公共访问和开发人员工具_AI&大模型_Steef-Jan Wiggers_InfoQ精选文章