写点什么

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:006476

评论 1 条评论

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

【重磅】Apache InLong(incubating) 发布 0.10.0 版本

腾源会

Apache 开源 InLong

数字化的田亩里,华为正写一首陶渊明的诗

脑极体

CPU虚拟化,磁盘虚拟化,内存虚拟化,io虚拟化

hanaper

20+互联网公司Java面试考点大全,全网首发,应有尽有

Java 程序员 编程语言 java面试

进程和处理机管理中的进程控制

Regan Yue

操作系统 进程 9月日更 进程控制

2022前端react面试题汇总

buchila11

React

python之深浅拷贝

秦时明月

如何用时序数据库 CTSDB 与 TARS 结合,解决海量监控数据难题

腾源会

数据库 大数据 开源 TARS CTSDB

将进一步提高数字人民币的可得性 构建分布式数字身份认证体系

CECBC

芯慌遇上造车热,国产芯片的机会到了?

脑极体

腾讯圆梦,我整理收集了这份“2021常见Java面试真题汇总”

Java 架构 编程语言 java面试

工业互联网的两种极端想法和两点反思

iNeuOS工业互联网操作系统

大数据 物联网 智能制造 iNeuOS工业互联网

我的9年开源之路:395 Patch、20+Feature,背后只有努力与热爱

腾源会

腾讯云 开源 虚拟化 Linux内核 kvm

记一下日志引起的bug

卢卡多多

日志 9月日更

数据仓库和数据湖比较

奔向架构师

数据湖 9月日更

java虚拟机GC学习笔记一

风翱

GC 9月日更

阿里独家!GitHub上点击量超百万的「操作系统和计算机网络」PDF震撼开源

Java 程序员 面试 计算机 Alibaba

中小企业自媒体为何难做:定位不准期望值过高

石头IT视角

Mp3文件结构全解析(二)

轻口味

android 音视频 9月日更

网络攻防学习笔记 Day146

穿过生命散发芬芳

9月日更 招投标

深入探讨区块链价值及其对世界的影响

CECBC

【经验分享】RTC 技术系列之视频编解码

声网

音视频

流程控制之for循环

秦时明月

如何做竞品分析?

石云升

产品经理 产品思维 9月日更 产品分析

基于线性预测的语音编码原理解析

拍乐云Pano

RTC 音频技术 python 数字信号

Nebula Graph 源码解读系列 | Vol.02 详解 Validator

NebulaGraph

图数据库 源码学习 分布式图数据库

Alibaba竟流出全套的Java核心技术手册,看过的人都说好!

Java 程序员 架构 面试 计算机

前端性能优化实战(一)

Augus

JavaScript 9月日更

支持 10 亿日流量的基础设施:当 Apahce APISIX 遇上腾讯

腾源会

腾讯云 开源 APISIX OTeam

WAF绕过总结+工具介绍

网络安全学海

网络安全 信息安全 渗透测试 WEB安全 漏洞挖掘

定时任务 Crontab 中的特殊字符

耳东@Erdong

crontab 9月日更

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