AxonHub 快速上手实战指南:配置渠道、创建 API Key 并发出第一个请求

发布时间:2026/10/13 3:09:30
AxonHub 快速上手实战指南:配置渠道、创建 API Key 并发出第一个请求 AI 应用API网关LLM 网关后端前端【免费下载链接】axonhub⚡️ Open-source AI Gateway — Use any SDK to call 100 LLMs. Built-in failover, load balancing, cost control end-to-end tracing.项目地址https://gitcode.com/gh_mirrors/ax/axonhub点击查看免费下载本篇指南以 AxonHub 中已运行并完成初始化的实例为前提完整演示从配置第一个渠道Channel、创建客户端 API Key到发出第一个 API 请求的全过程并深入讲解渠道级的模型映射Model Mapping与覆盖参数Override Parameters两大高级配置。读完本文你将掌握如何用任意 OpenAI / Anthropic 兼容 SDK 接入 100 模型、如何通过统一 API 实现跨提供商调用以及如何用渠道配置实现成本优化、兼容旧模型与故障转移。在开始之前请确认两件事你已通过初始化向导创建管理员账号并完成系统初始化已准备好至少一个 AI 提供商如 OpenAI、Anthropic的有效 API Key。AxonHub 默认监听8090端口默认值定义见 conf/conf.go 与 config.example.yml下文示例均基于http://localhost:8090。第一步配置你的第一个渠道渠道Channel是 AxonHub 与某个 AI 提供商之间的连接相当于一条提供商专线。在 Web 管理界面中按以下步骤操作登录 Web 管理界面进入Channels渠道页面点击Add Channel添加渠道选择提供商类型例如 OpenAI、Anthropic、DeepSeek、Gemini 等填入你的 API Key 及必要配置如 Base URL、支持的模型列表点击Test测试连接验证连通性测试通过后启用Enable该渠道状态变为 Active 即可接收请求。在数据模型层面渠道的核心字段如supported_models支持的模型列表、auto_sync_supported_models是否自动同步模型定义于 internal/ent/channel/channel.go。渠道的supported_models字段是必填项见 internal/ent/channel_create.go它决定了该渠道能够处理哪些模型名——这一点在后文模型映射中非常关键。关于渠道更完整的配置说明多 API Key 轮询、负载均衡、Base URL 特殊配置、多协议端点等可继续阅读 渠道配置指南。第二步创建 API Key客户端通过 API Key 访问 AxonHub 网关。创建步骤如下进入API KeysAPI 密钥页面点击Create API Key创建 API Key为 Key 起一个描述性名称例如production-gateway选择合适的scopes权限范围复制生成的 API Key 并妥善保管。源码视角API Key 是如何生成与校验的生成格式GenerateAPIKey会生成 32 字节随机数据并转为十六进制最终形如prefix-64位hex实现见 internal/server/biz/api_key.go。默认前缀为ah配置项server.api.auth.key_prefix见 config.example.yml因此默认生成的 Key 形如ah-64位hex你也可以在配置中改为sk、myapp等自定义前缀。Key 类型GraphQL 模型中 API Key 分为user、service_account、noauth、personal等类型见 internal/server/gql/ent.graphql。其中user类型的默认 scopes 为read_channels与write_requests不可变更而service_account类型可自定义 scopes。权限范围系统内置的 scope 包括read_dashboard、read_channels、write_channels、read_users、write_users、read_settings、write_settings、read_api_keys、write_api_keys、read_requests、write_requests、read_prompts、write_prompts等完整定义见 internal/scopes/scopes.go。在创建 API Key 时按需勾选即可实现最小权限。鉴权方式请求可通过多种 Header 携带 Key按优先级依次检查Authorization、X-API-Key、X-Api-Key、API-Key、Api-Key、X-Goog-Api-Key、X-Google-Api-Key并支持Bearer、Token、Api-Key、API-Key等前缀见 internal/server/middleware/header.go兼容 OpenAI 与 Anthropic 两种习惯。第三步发出你的第一个 API 调用AxonHub 同时支持OpenAI Chat Completions与Anthropic Messages两套 API 格式你可以使用自己习惯的 API 格式访问任意受支持的模型——AxonHub 在内部完成协议转换。使用 OpenAI API 格式将 SDK 的base_url指向http://localhost:8090/v1api_key换成刚才创建的 AxonHub API Keyfrom openai import OpenAI client OpenAI( api_keyyour-axonhub-api-key, base_urlhttp://localhost:8090/v1 ) # Call OpenAI model response client.chat.completions.create( modelgpt-4o, messages[ {role: user, content: Hello, AxonHub!} ] ) print(response.choices[0].message.content) # Call Anthropic model using OpenAI API response client.chat.completions.create( modelclaude-3-5-sonnet, messages[ {role: user, content: Hello, Claude!} ] ) print(response.choices[0].message.content)使用 Anthropic API 格式将请求发送到http://localhost:8090/anthropic/v1/messages用X-API-Key头携带 Keyimport requests # Call Anthropic model response requests.post( http://localhost:8090/anthropic/v1/messages, headers{ Content-Type: application/json, X-API-Key: your-axonhub-api-key }, json{ model: claude-3-5-sonnet, max_tokens: 512, messages: [ { role: user, content: [{type: text, text: Hello, Claude!}] } ] } ) print(response.json()[content][0][text]) # Call OpenAI model using Anthropic API response requests.post( http://localhost:8090/anthropic/v1/messages, headers{ Content-Type: application/json, X-API-Key: your-axonhub-api-key }, json{ model: gpt-4o, max_tokens: 512, messages: [ { role: user, content: [{type: text, text: Hello, GPT!}] } ] } ) print(response.json()[content][0][text])统一 API 的核心收益API 互操作API Interoperability用 OpenAI API 调 Anthropic 模型或用 Anthropic API 调 OpenAI 模型零代码改动Zero Code Changes继续沿用你现有的 OpenAI 或 Anthropic 客户端 SDK无需修改调用代码自动转换Automatic TranslationAxonHub 在内部自动完成 API 格式转换请求进入后先统一为内部格式再按上游渠道格式发出响应再转换回客户端格式完整流程见 请求处理指南提供商灵活Provider Flexibility用你偏好的 API 格式访问任意受支持的提供商。OpenAI 格式还支持GET /v1/models模型列表、流式响应、函数工具与 Embedding 等能力详见 OpenAI API 参考Anthropic 格式的官方 SDK 接入方式Go 示例详见 Anthropic API 参考。第四步渠道高级配置——模型映射与覆盖参数模型映射Model Mapping模型映射允许把客户端请求的模型名重定向到另一个上游模型名适用于以下典型场景成本优化把昂贵的模型映射到更便宜的替代模型旧模型兼容把已废弃的模型名映射到当前模型切换提供商把模型映射到不同提供商的渠道故障转移配置多个不同提供商的渠道。配置示例渠道 Settings 中的 modelMappings# In channel settings settings: modelMappings: # Map product-specific aliases to upstream models - from: gpt-4o-mini to: gpt-4o # Map legacy model names to current models - from: claude-3-sonnet to: claude-3.5-sonnet # Map to different providers - from: my-company-model to: gpt-4o # Cost optimization - from: expensive-model to: cost-effective-model使用效果# Client requests gpt-4o-mini but gets gpt-4o response client.chat.completions.create( modelgpt-4o-mini, # Will be mapped to gpt-4o messages[ {role: user, content: Hello!} ] )源码佐证模型映射在代码中就是{from, to}键值对——ModelMapping结构体定义于 internal/objects/channel.go渠道的settings.modelMappings字段见同一文件 internal/objects/channel.go。需要注意映射目标to必须是渠道supported_models列表中的模型否则映射会被静默忽略此外渠道还提供extraModelPrefix前缀别名、autoTrimedModelPrefixes自动裁剪前缀、hideOriginalModels/hideMappedModels模型列表可见性控制等配套机制详见 渠道配置指南。覆盖参数Override Parameters覆盖参数用于强制使用渠道级别的默认值无论客户端请求体传了什么以渠道配置为准。适用于安全强制安全的参数取值一致性保证不同应用行为一致合规满足组织级要求优化为特定场景设置最优参数。基础配置示例# In channel settings settings: overrideParameters: | { # Basic parameters temperature: 0.3, max_tokens: 1024, top_p: 0.9, # JSON response enforcement response_format: { type: json_object }, # Safety parameters presence_penalty: 0.1, frequency_penalty: 0.1, # Provider-specific parameters stop_sequences: [\nHuman:, \nAssistant:] }进阶覆盖示例# Enforce deterministic responses for production overrideParameters: | { temperature: 0.1, max_tokens: 500, top_p: 0.95 } # Creative writing channel overrideParameters: | { temperature: 0.8, max_tokens: 2000, frequency_penalty: 0.5 } # Code generation channel overrideParameters: | { temperature: 0.2, max_tokens: 4096, stop: [, \n\n] }源码佐证overrideParameters是一个 JSON 字符串字段解析逻辑ParseOverrideOperations同时支持旧版 JSON 对象map格式与新版操作数组格式set、set_if_absent、delete、rename、copy、array_append、array_prepend、array_insert、array_remove实现见 internal/objects/channel.go 与 internal/objects/channel.go。两点值得注意校验逻辑明确禁止覆盖stream字段避免破坏流式请求见 internal/server/biz/channel_override.go当新旧两种配置同时存在时bodyOverrideOperations优先级更高见 internal/server/biz/channel_override.go覆盖参数的注入与条件模板、请求头模板等行为均有对应测试覆盖可参考 internal/server/orchestrator/override_test.go含set_if_absent、数组操作、条件执行等用例。组合示例模型映射 覆盖参数以下是一个完整的渠道配置客户端请求chat-model/fast-model会被映射到真实模型同时强制temperature0.3、max_tokens1024与 JSON 输出# Complete channel configuration name: openai-production type: openai base_url: https://api.openai.com/v1 credentials: api_key: your-openai-key supported_models: [gpt-4o, gpt-4, gpt-3.5-turbo] settings: modelMappings: - from: chat-model to: gpt-4o - from: fast-model to: gpt-3.5-turbo overrideParameters: | { temperature: 0.3, max_tokens: 1024, response_format: { type: json_object } }最佳实践模型映射只映射到supported_models中已声明的模型使用有描述性的映射名称便于团队成员理解上线前充分测试映射规则把映射策略文档化并同步给团队。覆盖参数从保守取值开始再按实际场景调整评估对成本与性能的影响用不同类型的请求测试覆盖效果持续监控用量模式以优化参数。安全考虑不要在开发渠道中覆盖敏感参数对不同安全要求使用独立渠道定期审查并更新覆盖配置。从请求流转视角理解渠道配置渠道级模型映射是三层模型设置的最后一层。一个请求的完整处理顺序为API Key Profile 重写模型名 → 模型关联选择渠道 → 渠道再次重写模型名 → 发送上游。在你掌握了本文的渠道配置之后建议阅读 请求处理指南 了解从入口到上游执行的完整生命周期以及模型映射、模型关联与渠道选择之间的差异。故障排查API Key 认证失败确认 API Key 已正确配置检查渠道是否处于启用Active状态确保提供商侧 API Key 有效注意复制时不要带入多余空格。若问题仍未解决可结合管理界面中的请求记录与 Trace 信息定位具体失败环节架构层面的字段关系可参考 架构文档 ERD。接下来做什么现在你的 AxonHub 实例已经可以正常收发请求可以继续探索以下进阶能力配置多个渠道实现故障转移多提供商互为备份配置模型映射实现成本优化贵模型映射到便宜模型开启请求追踪Tracing便于调试设置用量配额与速率限制配置 API Key Profile模型映射、渠道/模型限制、多 Profile 切换详见 API Key Profile 指南将 AxonHub 接入 Claude Code、OpenAI SDK、Anthropic SDK、Gemini SDK 等客户端参见 Claude Code 集成指南、OpenAI API、Anthropic API、Gemini API。赞分享AI 应用API网关LLM 网关后端前端【免费下载链接】axonhub⚡️ Open-source AI Gateway — Use any SDK to call 100 LLMs. Built-in failover, load balancing, cost control end-to-end tracing.项目地址https://gitcode.com/gh_mirrors/ax/axonhub点击查看免费下载相关推荐AxonHub 快速入门指南配置渠道、创建 API 密钥并发起第一个请求AxonHub 快速入门指南配置渠道、创建 API 密钥并发起第一个请求 本指南面向已经完成 AxonHub 部署与初始化的实例介绍从零打通第一条请求链路的AI 应用API网关LLM 网关后端前端Win7 做启动盘Rufus 3.22 把线画清Win7 做启动盘Rufus 3.22 把线画清 制作 Rufus Windows 7 启动盘版本是第一道门槛4.0 起Windows 7 上双击 4.桌面应用开发工具怎么快速看懂陌生代码库3条命令生成代码知识图谱怎么快速看懂陌生代码库3条命令生成代码知识图谱 上周有同事把一个维护了六年的仓库推给我说后面归你了。二十万行代码文档停在两年前我的第一反应是打开 mAI 技能AI 插件开发工具知识图谱上一篇FerretDB v1.14.0 技术解析compact 命令落地与 insert 批量写入优化下一篇Sliver 项目中的 hashicorp/go-uuid纯随机 UUID 字符串生成与解析库解析创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询