UFO² 集成 Anthropic Claude:从 API 配置到源码级调用链实战指南
UFO² 集成 Anthropic Claude从 API 配置到源码级调用链实战指南【免费下载链接】UFOUFO³: Weaving the Digital Agent Galaxy项目地址: https://gitcode.com/GitHub_Trending/uf/UFOUFO²UFO³ 系列开源项目的智能体框架支持将 Anthropic Claude 作为底层大语言模型为HOST_AGENT任务规划与APP_AGENT界面操作执行提供多模态视觉理解与推理能力。本文将基于 claude.md 官方指南结合仓库内 ClaudeService 实现、服务注册机制 与 配置模板完整讲解从申请 API Key、安装依赖、配置agents.yaml到理解调用链与成本核算的端到端实战方案。读完本文你将能够独立完成 Claude 模型的接入、验证与排错并掌握其底层运行原理。前置准备申请 API Key 与安装依赖步骤一获取 Anthropic API Key要使用 Claude API需在 Anthropic Console 注册账号并在 API Keys 区域创建并获取你的 API Key。该 Key 将作为API_KEY字段填入 UFO² 的配置文件中用于anthropic.Anthropic(api_key...)客户端初始化对应 claude.py 构造函数 中的self.client anthropic.Anthropic(api_keyself.config_llm[API_KEY])。安全提示API Key 属于敏感凭证配置完成后请勿将agents.yaml提交到版本控制仅提交agents.yaml.template模板文件。步骤二安装 Anthropic Python 依赖官方指南要求安装 Anthropic 官方 Python SDKpip install -U anthropic0.37.1需要说明的是-U参数表示强制升级到指定版本。而当前仓库的 requirements.txt 中锁定版本为anthropic0.64.0。若你的运行环境基于本仓库的依赖约束建议以requirements.txt为准执行pip install -r requirements.txt两种方式均能提供ClaudeService所需的anthropic模块。安装完成后可通过pip show anthropic确认版本。初始化配置文件从模板创建 agents.yamlconfig/ufo/agents.yaml是 UFO² 所有智能体的 LLM 配置入口对应源码注释中HOST, APP, BACKUP, EVALUATION, and OPERATOR agents。若该文件尚不存在先从模板复制Copy-Item config\ufo\agents.yaml.template config\ufo\agents.yamlLinux/macOS 环境可等价执行cp config/ufo/agents.yaml.template config/ufo/agents.yaml模板文件位于 config/ufo/agents.yaml.template其中已定义HOST_AGENT、APP_AGENT、BACKUP_AGENT、EVALUATION_AGENT以及全局OMNIPARSER、GPT 参数MAX_TOKENS、MAX_RETRY、TEMPERATURE、TOP_P、TIMEOUT等字段只需将默认的openai配置替换为 Claude 配置即可。配置 HOST_AGENT 与 APP_AGENT 使用 Claude编辑config/ufo/agents.yaml将HOST_AGENT与APP_AGENT配置为 Claude APIHOST_AGENT: VISUAL_MODE: True # 启用视觉模式理解截图 API_TYPE: claude # 使用 Claude API API_BASE: https://api.anthropic.com # Claude API 端点 API_KEY: YOUR_CLAUDE_API_KEY # 你的 Claude API Key API_MODEL: claude-3-5-sonnet-20241022 # 模型名称 API_VERSION: 2023-06-01 # API 版本 APP_AGENT: VISUAL_MODE: True API_TYPE: claude API_BASE: https://api.anthropic.com API_KEY: YOUR_CLAUDE_API_KEY API_MODEL: claude-3-5-sonnet-20241022 API_VERSION: 2023-06-01配置字段说明字段说明VISUAL_MODE设为True以启用视觉能力。Claude 3 大部分模型支持视觉输入API_TYPE必须使用小写claude源码中大小写敏感见下文API_BASEClaude API 端点https://api.anthropic.comAPI_KEY你在 Anthropic Console 获取的 API KeyAPI_MODEL模型标识符如claude-3-5-sonnet-20241022、claude-3-opus-20240229API_VERSIONAPI 版本标识符关于API_TYPE的大小写敏感从 llm_call.py 可以看出代码会先执行api_type_lower api_type.lower()再通过BaseService.get_service(api_type_lower, ...)查找服务即配置文件中的大小写差异会被归一化处理而在 ClaudeService 内部 同样执行self.api_type self.config_llm[API_TYPE].lower()。因此统一推荐直接书写小写claude。此外可以留意一个源码细节ClaudeService.__init__实际读取的字段是API_MODEL、API_KEY、API_TYPE客户端通过anthropic.Anthropic(api_key...)构造SDK 默认请求官方端点https://api.anthropic.com。也就是说API_BASE字段在此处主要用于配置文档的一致性与后续扩展实际请求仍走 Anthropic SDK 默认端点。可用的 Claude 模型官方指南给出的模型清单如下Claude 3.5 Sonnetclaude-3-5-sonnet-20241022—— 智能与速度的最佳平衡Claude 3 Opusclaude-3-opus-20240229—— 能力最强的模型Claude 3 Sonnetclaude-3-sonnet-20240229—— 均衡性能Claude 3 Haikuclaude-3-haiku-20240307—— 快速且经济实惠在实际接入时模型名称需与 Anthropic 官方最新发布保持一致。成本追踪方面仓库的 config/ufo/prices.yaml 已内置claude/claude-3-5-sonnet-20241022输入 0.0003 $/千 token、输出 0.0015 $/千 token等价格条目供 get_cost_estimator 在每次调用后估算花费对应代码中name str(claude/ model)的前缀拼接逻辑。源码级原理ClaudeService 调用链解析服务注册与分发在 ufo/llm/base.py 的service_map中注册了claude: ClaudeService。运行时llm_call.py 首先从配置系统取出对应智能体的API_TYPE与API_MODEL随后调用BaseService.get_service(...)动态导入ufo.llm.claude模块并实例化ClaudeService。最终通过service.chat_completion(messages, n)发起请求。chat_completion 与消息处理ClaudeService.chat_completion 的核心逻辑如下温度、top_p、max_tokens未显式传入时回退到全局配置TEMPERATURE、TOP_P、MAX_TOKENS来源于system.yaml的 LLM 参数区调用process_messages将 UFO² 通用消息结构转换为 Anthropic Messages API 结构role system的内容被提取为独立的system参数role user的文本与图片内容合并进user_prompt.content在for _ in range(self.max_retry)循环内调用self.client.messages.create(...)失败时记录错误堆栈、time.sleep(3)后重试每次成功返回后读取response.usage.input_tokens与output_tokens调用get_cost_estimator累计成本。视觉截图输入的实现细节UFO² 的截图以data:image/png;base64,...格式传入消息。在 process_messages 中通过正则data:(.*?);base64,(.*)拆解出media_type与base64_data转换为 Anthropic 的{type: image, source: {type: base64, media_type: ..., data: ...}}块。这正是VISUAL_MODE: True能够理解截图背后的机制只要VISUAL_MODE开启Agent 的观察中就会携带截图由 Claude 3 的多模态能力完成 UI 元素识别。备用引擎机制如果 Claude 调用失败且use_backup_engineTruellm_call.py 会记录错误并自动切换到BACKUP_AGENT配置对应agents.yaml中的BACKUP_AGENT段。因此可以在BACKUP_AGENT中配置另一家厂商的模型如 OpenAI实现主备双通道的可用性保障。全局 LLM 参数对 Claude 行为的影响config/ufo/system.yaml 中的 LLM 参数区对所有模型生效包括 ClaudeMAX_TOKENS: 2000 # 响应最大 token 数 MAX_RETRY: 20 # API 请求最大重试次数 TEMPERATURE: 0.0 # 越低输出越稳定一致 TOP_P: 0.0 # 越低输出越保守 TIMEOUT: 60 # 调用超时秒这些值会经 base.py 的 configs_dict 组装 传入ClaudeService并作为chat_completion的默认参数。其中TEMPERATURE与MAX_TOKENS直接决定 Claude 输出风格与长度MAX_RETRY决定失败重试次数上限。注意agents.yaml.template中同样存在一份 GPT 参数MAX_TOKENS: 2000、MAX_RETRY: 3两份文件以当前配置加载链路实际生效值为准旧版agents.yaml全局段用于兼容新版由system.yaml提供。多智能体混用与成本优化UFO² 允许不同智能体使用不同模型。你可以用 Claude 做规划、用其他厂商模型做高频执行也可以反过来# 规划阶段使用 Claude HOST_AGENT: API_TYPE: claude API_MODEL: claude-3-5-sonnet-20241022 API_KEY: YOUR_CLAUDE_API_KEY # 评估阶段也使用 Claude低频调用节省预算 EVALUATION_AGENT: API_TYPE: claude API_MODEL: claude-3-5-sonnet-20241022 API_KEY: YOUR_CLAUDE_API_KEY由于APP_AGENT在每次界面操作时都会触发调用调用频率最高从成本角度通常建议将高频执行智能体配置为更经济的模型而把 Claude 留给规划与评估等低频高价值场景。也可将BACKUP_AGENT指向 Claude作为主链路失败时的回退模型。验证配置是否生效配置完成后可用以下 Python 片段快速验证配置加载链路from config.config_loader import get_ufo_config config get_ufo_config() print(fHOST_AGENT model: {config.host_agent.api_model}) print(fHOST_AGENT api_type: {config.host_agent.api_type}) print(fAPP_AGENT model: {config.app_agent.api_model})若输出中api_type为claude、模型名为claude-3-5-sonnet-20241022说明配置已被正确加载配置访问支持属性式与字典式两种方式参见 ufo/llm/config_helper.py 的AgentConfigAccessor兼容层。启动 UFO² 运行首个任务配置就绪后即可启动 UFO² 使用 Claude 运行任务。详细的上手流程包括 Windows 环境启动命令、任务输入方式、日志查看请参考 快速入门指南。首次运行建议从简单任务开始例如在记事本中新建并保存一份文档观察 HOST_AGENT 的规划输出与 APP_AGENT 的 UI 操作是否符合预期。常见问题排查认证失败Invalid API Key核对API_KEY是否复制完整注意不要有多余空格或引号确认API_TYPE为小写claude若 Key 刚创建等待数分钟使其生效。模型不存在Model Not Found核对API_MODEL名称与 Anthropic 官方当前提供的模型 ID 完全一致含日期后缀确认你的账号对该模型有访问权限检查是否误将模型别名如claude-3-5-sonnet与完整 IDclaude-3-5-sonnet-20241022混用。调用失败并回退到备用引擎查看日志中的错误堆栈Error when making API request确认是网络、配额还是参数问题检查MAX_RETRY与TIMEOUT是否合理确认BACKUP_AGENT已正确配置否则回退同样会失败。视觉能力未生效确认VISUAL_MODE: True确认所选模型支持视觉输入Claude 3 各变体均支持确认截图能正常生成检查INCLUDE_LAST_SCREENSHOT等日志配置。进一步阅读Agent 配置完整参考全部智能体的字段、API_TYPE 选项与完整配置示例模型配置总览对比不同 LLM 提供方OpenAI、Gemini、Qwen、Ollama 等的视觉支持与认证方式配置加载器实现 与 ClaudeService 源码深入理解配置读取与调用链路价格配置查看已内置的 Claude 价格条目与成本核算方式UFO² 快速入门完成配置后的首次运行指引【免费下载链接】UFOUFO³: Weaving the Digital Agent Galaxy项目地址: https://gitcode.com/GitHub_Trending/uf/UFO创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

OpenMetadata Drive 服务元数据采集管道配置指南:过滤器模式、实体开关与删除标记详解

OpenMetadata Drive 服务元数据采集管道配置指南:过滤器模式、实体开关与删除标记详解

OpenMetadata Drive 服务元数据采集管道配置指南:过滤器模式、实体开关与删除标记详解 【免费下载链接】OpenMetadata The Open Context Layer for Data and AI , OpenMetadata is the open platform for building trusted data context and business semantics for…

2026/10/24 9:37:01 阅读更多 →
v.douyin.com短链生成全攻略:从手动复制到程序化批量实操

v.douyin.com短链生成全攻略:从手动复制到程序化批量实操

大家应该都见过这种文本:一串类似7.12 复制打开抖音,看看【某某的作品】... https://v.douyin.com/vtezwc4lj6k/ :9pm 02/15 ba.nq kcu:/的消息,里面藏着一条以v.douyin.com开头的短链接。做抖音运营、搞投放监测、写数据采集脚本的朋友&…

2026/10/25 16:48:34 阅读更多 →
微信小程序备忘录骨架:本地存储+Tab导航+数据驱动实战

微信小程序备忘录骨架:本地存储+Tab导航+数据驱动实战

简介:这是一份面向小程序初学者与移动开发入门者的备忘录类应用实战源码,聚焦轻量级工具型小程序开发实践,帮助开发者快速掌握微信小程序基础架构、页面逻辑与数据管理能力。压缩包共25个文件,涵盖5个JS(实现页面交互与…

2026/10/29 22:45:57 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/10/30 0:01:36 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/10/30 9:20:34 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/10/30 10:19:21 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/10/30 0:01:37 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/10/30 10:19:39 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/10/30 9:21:37 阅读更多 →

日新闻

周新闻

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/29 17:01:10 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/30 10:28:40 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/30 0:01:33 阅读更多 →