为 Hermes Agent 自定义工具接入 Taotoken 的多模型供应商
告别海外账号与网络限制稳定直连全球优质大模型限时半价接入中。 点击领取海量免费额度为 Hermes Agent 自定义工具接入 Taotoken 的多模型供应商应用场景类针对使用 Hermes Agent 框架的开发者说明如何在自定义工具或技能中集成 Taotoken按照文档要求设置 provider 类型与 base_url并将密钥存入约定的环境变量文件从而让 Agent 能够灵活调用 Taotoken 聚合的各类模型。在构建基于 Hermes Agent 的智能应用时开发者常常需要为其创建自定义工具Custom Tools或技能Skills以扩展 Agent 的能力边界。这些自定义组件有时需要直接调用大语言模型来完成特定任务例如文本分析、代码生成或复杂推理。如果希望这些调用能够通过 Taotoken 平台来统一管理和调度多个供应商的模型就需要在工具内部进行正确的配置。本文将介绍如何将 Taotoken 的多模型能力集成到 Hermes Agent 的自定义工具中。1. 理解 Hermes Agent 的模型调用机制Hermes Agent 框架本身提供了灵活的模型调用抽象层。当你在创建或配置一个 Agent 时可以在其配置中指定默认的模型提供商和参数。然而对于自定义工具而言其内部的模型调用逻辑是独立于主 Agent 配置的。这意味着即使你的主 Agent 配置了使用某个特定的 API自定义工具内部也可以选择另一套配置来调用模型这为实现混合模型策略或成本隔离提供了可能。要实现这一点核心在于理解 Hermes Agent 自定义工具中发起模型请求的代码模式。通常这涉及到初始化一个模型客户端例如 OpenAI SDK 的客户端实例并指定其连接端点base_url和认证密钥api_key。Taotoken 平台提供的 OpenAI 兼容 API 正是为了适配这种模式。2. 在自定义工具中配置 Taotoken 客户端要在你的自定义工具代码里使用 Taotoken你需要按照 OpenAI 兼容的方式初始化客户端。关键在于正确设置base_url和api_key。以下是一个 Python 示例展示如何在工具类的初始化或某个方法中集成 Taotoken。假设你正在编写一个用于总结长文本的自定义工具。# 示例一个使用 Taotoken 的自定义总结工具 from typing import Type from pydantic import BaseModel, Field from hermes.agent.tools import Tool from openai import OpenAI # 使用官方的 OpenAI Python SDK class SummarizeInput(BaseModel): text: str Field(description需要总结的长文本内容) class SummarizeTool(Tool): name: str summarize_with_taotoken description: str 使用 Taotoken 平台提供的模型来总结文本。 args_schema: Type[BaseModel] SummarizeInput def __init__(self): super().__init__() # 初始化指向 Taotoken 的 OpenAI 客户端 # 注意base_url 必须设置为 https://taotoken.net/api/v1 self.client OpenAI( api_keyYOUR_TAOTOKEN_API_KEY, # 建议从环境变量读取 base_urlhttps://taotoken.net/api/v1, ) async def run(self, text: str): try: completion self.client.chat.completions.create( modelgpt-4o-mini, # 模型 ID 请在 Taotoken 模型广场查看 messages[ {role: system, content: 你是一个专业的文本总结助手。}, {role: user, content: f请总结以下文本\n\n{text}} ], max_tokens500, ) summary completion.choices[0].message.content return {summary: summary} except Exception as e: return {error: f模型调用失败{str(e)}}关键配置点说明base_url必须设置为https://taotoken.net/api/v1。这是 Taotoken 为 OpenAI 兼容协议提供的标准端点路径末尾的/v1不可或缺。api_key替换为你在 Taotoken 控制台创建的 API Key。在实际项目中强烈建议通过环境变量来管理密钥避免硬编码。model参数值应为 Taotoken 模型广场中列出的模型 ID例如gpt-4o-mini、claude-3-5-sonnet或deepseek-chat。这决定了实际调用哪个供应商的哪个模型。3. 通过环境变量管理密钥与配置将敏感信息如 API Key 直接写在代码中是极不安全的做法也不利于在不同环境开发、测试、生产间切换配置。Hermes Agent 项目通常使用.env文件来管理环境变量。你可以遵循这一约定将 Taotoken 的配置也放入其中。首先在你的项目根目录创建或编辑.env文件# .env 文件示例 TAOTOKEN_API_KEYtt-你的实际API密钥 TAOTOKEN_BASE_URLhttps://taotoken.net/api/v1 DEFAULT_TAOTOKEN_MODELgpt-4o-mini然后修改你的工具代码从环境变量中读取这些配置import os from typing import Type from pydantic import BaseModel, Field from hermes.agent.tools import Tool from openai import OpenAI class SummarizeInput(BaseModel): text: str Field(description需要总结的长文本内容) class SummarizeTool(Tool): name: str summarize_with_taotoken description: str 使用 Taotoken 平台提供的模型来总结文本。 args_schema: Type[BaseModel] SummarizeInput def __init__(self): super().__init__() # 从环境变量读取配置 api_key os.getenv(TAOTOKEN_API_KEY) base_url os.getenv(TAOTOKEN_BASE_URL, https://taotoken.net/api/v1) self.default_model os.getenv(DEFAULT_TAOTOKEN_MODEL, gpt-4o-mini) if not api_key: raise ValueError(未找到环境变量 TAOTOKEN_API_KEY请在 .env 文件中配置。) self.client OpenAI( api_keyapi_key, base_urlbase_url, ) async def run(self, text: str): # ... 使用 self.client 和 self.default_model 进行调用 ...这种方法使得配置与代码分离提升了安全性和可维护性。记得将.env文件添加到.gitignore中防止密钥被意外提交到代码仓库。4. 在工具中实现模型切换逻辑Taotoken 的一个核心价值是聚合了多家供应商的模型。你的自定义工具可以利用这一点根据任务特性、成本预算或性能需求动态选择模型。这可以通过在工具参数中增加模型选项或在工具内部实现简单的路由逻辑来完成。例如你可以修改工具的输入模型允许调用者指定使用哪个模型class SummarizeInput(BaseModel): text: str Field(description需要总结的长文本内容) model: str Field(defaultgpt-4o-mini, description指定要使用的 Taotoken 模型 ID) class SummarizeTool(Tool): # ... 其他部分保持不变 ... async def run(self, text: str, model: str None): target_model model or self.default_model completion self.client.chat.completions.create( modeltarget_model, # 使用传入的模型参数 messages[ {role: system, content: 你是一个专业的文本总结助手。}, {role: user, content: f请总结以下文本\n\n{text}} ], max_tokens500, ) # ... 处理返回结果 ...这样当其他 Agent 或工作流调用此工具时就可以通过参数灵活指定是使用速度更快的轻量模型还是能力更强的复杂模型而所有这些模型调用都通过同一个 Taotoken 客户端和 API Key 完成便于在 Taotoken 控制台进行统一的用量监控和成本分析。5. 测试与验证集成完成代码编写后你需要对集成进行测试。首先确保你的.env配置正确并且 Taotoken API Key 有足够的余额或调用权限。然后可以编写一个简单的测试脚本或在 Hermes Agent 的交互环境中直接调用你的自定义工具。测试时关注以下几点客户端初始化是否成功没有抛出认证或连接错误。模型调用是否返回了预期的结果格式。在 Taotoken 控制台的“用量看板”中是否能查看到对应工具发起的调用记录和 Token 消耗。这是验证集成是否生效的最直接方式。如果在测试中遇到404或Invalid URL错误请再次检查base_url是否完整设置为https://taotoken.net/api/v1。如果遇到认证错误请检查 API Key 是否正确无误。通过以上步骤你就可以成功地将 Taotoken 的多模型服务能力嵌入到 Hermes Agent 的自定义工具中。这使你的工具不仅能利用大语言模型的智能还能享受到通过统一平台管理多个模型供应商带来的灵活性与便利性。具体的模型列表、API 调用参数和高级功能请以 Taotoken 控制台和官方文档为准。 告别海外账号与网络限制稳定直连全球优质大模型限时半价接入中。 点击领取海量免费额度