当前位置: 首页 » 资讯 » 新科技 » 正文

谷歌开源“Agent Skill 超级工具箱”,云、库、引擎、AI全线打通,开发者狂喜

IP属地 中国·北京 编辑:钟景轩 InfoQ 时间:2026-04-28 01:49:33

整理|冬梅

上周五,OpenAI 发布 GPT-5.5 与 DeepSeek 推出 V4 模型几乎同时上演,大模型市场的竞争正进入白热化阶段。

面对竞争对手的快速迭代,谷歌生态的技术从业者正在积极寻找应对之道——越来越多的人开始借助智能体 Agent 来构建和优化基于谷歌云平台的应用,从 Firebase、Gemini API 到 BigQuery 和 Google Kubernetes Engine(GKE)。

但值得注意的是,在竞争日益激烈、技术快速演进的背景下,一个关键问题变得尤为突出:如何确保模型掌握关于这些技术准确、最新的信息?

在实际开发中,这个问题的棘手程度远超想象。

开发者往往需要为每个云服务编写适配器,将 API 调用封装为智能体可调用的工具函数,然后反复调试模型是否正确调用了工具、传入了正确参数。更麻烦的是,一旦底层服务 API 发生变化,所有适配器都需要手动更新。这不仅是重复劳动,更是一种隐性的技术债。

为了解决这个问题,谷歌为开发者文档提供了 Model Context Protocol(MCP)服务器,让智能体能够连接到可靠的实时信息源。但随之而来的,是一个被称为 “上下文膨胀”(Context Inflation)的新挑战。

MCP 服务器的核心价值在于为模型提供即时的外部信息。

但它自身也有局限性:当智能体大规模使用 MCP 服务器时,大量上下文信息会被不加区分地加载到模型的上下文窗口中。这种做法带来两个严重后果:其一,过多的信息会使模型混乱,降低推理质量——这一问题在企业实践中已被反复验证,有团队发现智能体在每次调用时加载 1.5 万 个 tokens 的指令,几乎不给实际需要处理的内容留下任何上下文空间;其二,上下文窗口的每一次填充都会转化为实实在在的 Token 成本,随着调用量增长,开销曲线会变得难以忽视。

面对这一困境,业界迫切需要一种更精细的信息供给方式——既能让智能体获得所需的专业知识,又不至于被冗余信息淹没。

这正是 Agent Skills 应运而生的背景。

谷歌官方 Skill 仓库正式上线

那么,究竟什么是 Agent 的 Skills?

根据官方定义,Skill 是一种 “简单开放的格式,用于赋予智能体新的能力和专业知识” 。我们可以将其理解为针对特定技术或任务的精简的、以智能体为中心的文档。

Skills 的设计哲学可以用两句话概括:用 Markdown 编写,保持轻量;按需加载,避免冗余。每一份 Skill 文件可以包含参考文档、代码片段和其他资源,智能体仅在需要时才加载相关信息,从而大大降低了上下文信息过载的风险。

从技术定位来看,Skills 占据了一个独特的位置。它在传统提示 prompt 之上——因为 Skills 是可复用的、持久的;比微调(Fine-tuning)更轻——因为它能以业务逻辑的速度迭代;比 RAG(检索增强生成)更主动——它不是被动的信息检索,而是主动的专业知识注入;比普通工具(Tools)更丰富——因为它不仅编码了“做什么”,还编码了“怎么做”和“为什么这么做”。

在 Google Cloud Next 2026 大会的第一天,谷歌正式宣布推出 Google 官方 Agent Skills 仓库。

这一消息被认为是本届大会最具实用价值的发布之一。

项目地址为:github.com/google/skills 。

该代码库包含十三项技能,涵盖谷歌云最核心的服务:AlloyDB、BigQuery、Cloud Run、Cloud SQL、Firebase、Gemini API 和 Google Kubernetes Engine(GKE)。

这些技能帮助智能体理解如何创建、查询和管理云资源,是 Agent 操作谷歌云基础设施的能力基础。

还包括三大架构支柱技能。

安全性(Security):让智能体理解云安全最佳实践,包括身份与访问管理、数据加密和威胁防护

可靠性(Reliability):涵盖高可用架构设计、容错机制和灾难恢复策略

成本优化(Cost Optimization):指导智能体在架构决策中考虑资源效率与成本控制

这三大支柱技能的重点不在于教会智能体调用某个具体 API,而是让它理解云系统设计的原则与决策逻辑,从而在更高层面提升应用质量。

此外,仓库还提供了三项面向常见任务的流程指南:Google Cloud 入门(onboarding to Google Cloud)、身份验证(Authenticating to Google Cloud)和网络可观测性(Google Cloud Network Observability) 。这些“秘诀”将日常操作拆解为可执行的步骤,让智能体能够按照既定流程完成特定工作。

Agent Skill 到底有什么用?

要理解 Agent Skills 的真正价值,不妨回到真实开发场景。

在 2026 年的今天,构建 Agent 的实际情况与演示截然不同:开发者花费大量时间编写和维护工具适配器——一位构建文档处理智能体的开发者透露,她用于维护适配器的时间已经超过了构建智能体逻辑本身的时间。

Skills 仓库正是为了解决这一痛点而生。官方 Skills 经过针对实际模型的测试和优化,谷歌已验证其能在 Gemini 上可靠运行;同时,Skills 兼容 MCP 标准,可以跨平台使用,不限于 Vertex AI;当底层云 API 发生变化时,谷歌会负责更新相应技能,开发者无需自行维护;此外,Skills 直接使用开发者已有的 GCP 凭证,无需编写额外的认证代码。

在兼容性方面,Skills 展示出极强的跨平台能力。通过 npx skills install github.com/google/skills 命令,开发者可以将这些技能安装到多种智能体平台中,包括 Antigravity、Gemini CLI,以及 Claude Code、Cursor 等第三方智能体工具。

近期发布的 Antigravity 平台已经深度整合了 Skills 体系,支持通过规则(Rules)、技能(Skills)和工作流(Workflows)三个层级,将通用智能体转变为专业、稳健且高效的工作伙伴。同时,Gemini CLI 也通过更新内置了对 Skills 的原生支持,让开发者可以在命令行环境中直接调用专业化技能。

再来看个具体的例子,每个 Skill 都包含:

经过实际模型测试——不仅仅是“这里有一个函数”,而是经过优化的描述,这些描述已由谷歌验证,可与 Gemini 稳定兼容。兼容 MCP——符合模型上下文协议 (MCP) 标准,因此可跨平台运行,而不仅限于 Vertex AI。版本控制和维护——当底层云 API 发生变更时,谷歌会更新技能,无需用户亲自动手了。预认证——使用现有的 GCP 凭据,无需自定义授权码。

例如,BigQuery 技能在实践中看起来是这样的:

from google.adk.agents import LlmAgent

from google.skills.gcp import BigQuerySkill, CloudStorageSkill, PubSubSkill

agent = LlmAgent(

name="data_pipeline_agent",

model="gemini-2.5-pro",

tools=[

BigQuerySkill(project_id="my-project", dataset_id="analytics"),

CloudStorageSkill(bucket="my-output-bucket"),

PubSubSkill(topic="pipeline-results"),

]

)

对比一下没使用该技能时要写的东西:

Today's reality

from google.cloud import bigqueryfrom google.cloud import storagefrom google.cloud import pubsub_v1import json

client = bigquery.Clientstorage_client = storage.Clientpublisher = pubsub_v1.PublisherClient

def run_bigquery_query(query: str, max_rows: int = 1000) -> dict:"""Runs a SQL query against BigQuery and returns results.

Use this tool when you need to query structured data from the data warehouse.

The query should be standard SQL. Results are limited to max_rows rows.

Returns a dict with 'rows' (list of dicts) and 'schema' (list of field names).

If the query fails, returns a dict with 'error' key explaining what went wrong.

"""

try:

query_job = client.query(query)

results = query_job.result

rows = [dict(row) for row in results][:max_rows]

schema = [field.name for field in results.schema]

return {"rows": rows, "schema": schema, "total_rows": len(rows)}

except Exception as e:

return {"error": str(e)}

def upload_to_storage(filename: str, content: str, content_type: str = "text/plain") -> dict:"""Uploads a file to Cloud Storage.

Use this when you need to save output data or results to persistent storage.

filename is the destination path within the bucket. content is the string content.

Returns dict with 'url' on success or 'error' on failure.

"""

comments

https://cloud.google.com/blog/topics/developers-practitioners/level-up-your-agents-announcing-googles-official-skills-repository

声明:本文为 InfoQ 翻译整理,不代表平台观点,未经许可禁止转载。

免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其内容真实性、完整性不作任何保证或承诺。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。