关于 google-ai
google-ai 是一项用于在应用工作流中调用 Google Gemini API 的技能,支持文本和图像输入、嵌入生成及长上下文任务。
主要功能
- 01调用 Gemini Pro、Flash 和 Ultra
- 02支持文本与图像输入
- 03最长 1M token 上下文
- 04生成文本嵌入
- 05通过 API 密钥认证
适用场景
- 01总结长文档或代码库
- 02根据详细规格生成代码
- 03为语义搜索生成嵌入
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ alphaonedev/ openclaw-graph --skill google-ai安装后在 Claude Code 中输入/google-ai确认已加载。
详细介绍
google-ai
用途
此技能可与 Google 的 Gemini API 交互,让你能够使用 Pro、Flash 和 Ultra 模型执行文本生成、聊天和嵌入等任务,上下文长度最高可达 1M 个 token。它旨在通过 RESTful 端点将先进的 AI 能力集成到应用程序中。
适用场景
当你需要处理大型上下文时,例如总结长文档、根据详细规格生成代码或处理多轮对话,可使用此技能。在需要使用 Google 专属模型的场景中也可使用,例如 OpenAI 的替代方案无法满足需求,或需要集成 Google Cloud 生态系统时。
核心功能
- 使用 Gemini Pro 执行常规任务,使用 Flash 加快推理速度,使用 Ultra 处理复杂推理。
- 支持最高 1M 个 token 的上下文,适合处理书籍或代码库。
- 通过特定端点支持多模态输入(文本、图像)。
- 使用 text-embedding-004 等模型生成嵌入,用于语义搜索。
- 按 API 密钥管理速率限制和配额,每分钟最多可发送 1,000 个请求。
使用模式
始终通过 $GOOGLE_API_KEY 环境变量进行身份验证并初始化。对于 OpenClaw,在命令前加上技能 ID 来调用此技能,例如 google-ai generate。请求使用 JSON 载荷,并将响应作为 JSON 对象处理。使用模式:设置包含模型选择的请求,然后通过 HTTP POST 发送;解析响应以获取输出。重复使用时,缓存 API 响应以避免触发速率限制。
常用命令/API
主要端点为 https://generativelanguage.googleapis.com/v1beta/models/{model}:generateContent。使用 HTTP POST 请求并附带 JSON 请求体。例如:
{
"contents": [{"parts": [{"text": "Write a function for sorting arrays"}]}]
}
CLI 示例:运行 curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer $GOOGLE_API_KEY" -d '{"contents": [{"parts": [{"text": "Hello"}]}]}' https://generativelanguage.googleapis.com/v1beta/models/gemini-pro:generateContent。常用标志:使用 --model gemini-pro 选择模型,或使用 --max-tokens 1024 限制输出。生成嵌入时,使用 https://generativelanguage.googleapis.com/v1beta/models/{model}:embedContent,并使用如下载荷:
{
"model": "models/text-embedding-004",
"content": "Embed this text"
}
在 OpenClaw 中,通过 google-ai embed --text "Sample text" --model text-embedding-004 执行。
集成说明
使用前,将 $GOOGLE_API_KEY 设置为环境变量,例如 export GOOGLE_API_KEY=your_api_key。在 OpenClaw 配置的 [skills] 部分添加:google-ai = { api_key = "$GOOGLE_API_KEY", default_model = "gemini-pro" }。确保已在 Google Cloud Console 的 AI Studio 中启用你的项目。对于异步操作,使用 webhook 或轮询;通过串联输出与其他技能集成,例如将 google-ai 的结果传递给搜索技能。对于暂时性错误,使用指数退避进行重试。
错误处理
检查 HTTP 状态码:401 表示 API 密钥无效(使用 $GOOGLE_API_KEY 重新进行身份验证),429 表示触发速率限制(等待一段时间后重试)。解析 JSON 错误以获取详情,例如,如果出现 "code": "INVALID_ARGUMENT",请检查请求体。在 OpenClaw 中,使用 try-catch 块包装命令,例如:try { execute "google-ai generate" } catch { log error and retry after 5 seconds }。始终验证输入以避免 400 错误,例如确保模型名称完全匹配(如 "gemini-1.0-pro")。
具体使用示例
- 生成代码:要创建 Python 函数,请使用
google-ai generate --model gemini-pro --prompt "Write a function to merge two sorted lists"。此命令会向端点发送 POST 请求并返回代码片段。 - 为搜索生成文本嵌入:要进行语义相似度比较,请运行
google-ai embed --model text-embedding-004 --text "Example query",然后在应用程序中使用余弦相似度比较嵌入向量。
图关系
- 集群:与 "ai-apis" 关联,以共享 AI 端点处理能力。
- 标签:关联到 "ai-apis" 和 "api",便于在 API 相关技能中发现。
- 相关技能:与 "openai" 集成,用于模型比较;依赖 "google-cloud" 处理身份验证流程。