AuraRouter:智能路由结构
当前状态: 生产原型v0.5.5(2026年4月)\ 维护人员: 史蒂文·西伯特/AuraCore动力学
概述
AuraRouter是用于大型语言模型(LLM)的智能路由层。它充当中间件,将提示引导到最佳可用模型——无论是在笔记本电脑上运行的快速本地模型还是强大的云模型。
AuraRouter处理人工智能的物流:它对任务进行分类,计划执行,并为任务选择最具成本效益和安全性的模型。它可以作为IDE的MCP服务器、具有内置仪表板的桌面应用程序或分布式网格上的托管服务运行。
为什么选择AuraRouter?(FMoE方法)
传统的人工智能设置通常会将每个提示发送到一个大型模型。这通常是矫枉过正的——向大型云模型发送一个简单的“Hello”既昂贵又缓慢。
AuraRouter使用 联合专家联盟(FMoE) 方法。它使用的不是一个大大脑,而是一个专家网络:
- 分类: 一个小巧、超快的模型可以快速识别您的需求。
- 专家: 你的任务被路由到一个擅长该特定领域的模型(例如编码、创意写作或分析)。
- 效率: 我们首先使用本地硬件。只有当本地模型不够,或者隐私不是问题时,才会调用云模型。
主权人工智能的主要优势
如果你想在自己的硬件上运行AI(“主权AI”),AuraRouter提供了你需要的管理层:
- 主权执行: 自动检测敏感数据(如PII),并确保这些提示永远不会离开您的本地网络。
- ROI可视化: 内置的仪表板显示了通过将任务路由到本地硬件而不是支付云代币,您确切节省了多少钱。
- 推测解码: 使用小模型“起草”响应,使用大模型“验证”响应,以本地速度为您提供高质量的结果。
- 独白: 对于复杂的任务,AuraRouter会协调多个“专家”模型,对彼此的工作进行批评和改进,直到答案正确为止。
______________________________________________________________________
比较与合作
AuraRouter旨在与您已经使用的现有工具协同工作。
| 工具 | 最适合。.. | AuraRouter的角色 |
|---|---|---|
| 奥拉玛 | 在本地零摩擦运行模型。 | AuraRouter使用Ollama作为“worker”后端来执行任务。 |
| 文学硕士 | 管理大量云API提供商阵列。 | AuraRouter可以坐在LiteLLM前面,提供本地优先的情报和隐私门控。 |
| vLLM | 高吞吐量企业模式服务。 | AuraRouter充当vLLM集群的智能调度器。 |
通过MCP更好地合作
AuraRouter是一流的 模型上下文协议(MCP) 公民。您可以将Ollama或LiteLLM作为提供商连接到AuraRouter,AuraRouter将处理决定何时使用它们的“脑力工作”。
______________________________________________________________________
建筑
AuraRouter实现了 意图->计划->执行 循环:
- 分类器: 快速局部模型对任务进行分类(直接与多步)。
- 计划员: 如果是多步骤的,推理模型会生成一个顺序执行计划。
- 工人: 执行模型逐步执行计划。
graph TD
User[MCP Client / GUI] -->|Task| Classifier{Intent Analysis}
Classifier -->|Direct| Worker[Worker Node]
Classifier -->|Multi-Step| Planner[Planner Node]
Planner -->|Plan JSON| Worker
subgraph Compute Fabric [auraconfig.yaml]
Worker --> Sovereignty[Sovereignty Gate]
Sovereignty --> RAG[RAG Enrichment]
RAG --> Exec{Execution Mode}
Exec -->|Standard| Node1[Local Model]
Exec -->|Speculative| Spec[Speculative Orchestrator]
Exec -->|Monologue| Mono[AuraMonologue]
Node1 -->|Fail| Node2[Cloud Fallback]
endFMoE执行模式
AuraRouter支持基于任务复杂性和配置的三种执行路径。看 执行模块.md 以获取IPE与Monologue以及独立与网格操作的详细架构比较。
| 模式 | 触发器 | 描述 |
|---|---|---|
| 标准 | 默认 | 具有回退和审查循环的现有角色链执行 |
| 推测的 | 当任务高度复杂时 system.speculative_decoding 已启用 | 针对AuraXLM的起草者/验证器编排,具有可选的概念流 |
| 独白 | 复杂的推理任务 system.monologue 已启用 | 具有MAS评分锚检索的递归生成器/评论家/精炼器循环 |
执行优先级为 monologue > speculative > standard 当启用多种模式时。
安装
PyPI(推荐)
# Core install (MCP server + GUI + ONNX Intent Classification)
pip install aurarouter
# With embedded llama.cpp + HuggingFace model downloading
pip install aurarouter[local]源代码安装
git clone https://github.com/auracoredynamics/aurarouter.git
cd aurarouter
pip install -r requirements.txt # Core dependencies (includes ONNX + numpy)
pip install -r requirements-local.txt # Optional: local inference deps
pip install -e . # Editable install快速路径意图分类
AuraRouter捆绑了一款轻量级 ONNX语句编码器 (all-MiniLM-L6-v2)用于超快速、局部意图分类。这种“第2阶段”分析器提供确定性、低延迟的分诊,而不需要完整的LLM来做出路由决策。
模型和标记器直接嵌入到包数据中,使AuraRouter在安装后立即在气隙环境中完全正常工作。
______________________________________________________________________
快速开始
1.配置
运行交互式安装程序以创建配置模板:
aurarouter --install或手动创建 ~/.auracore/aurarouter/auraconfig.yaml:
system:
log_level: INFO
default_timeout: 120.0
active_analyzer: aurarouter-default # Route analyzer to use (see catalog)
rag_enrichment: true # Optional AuraXLM retrieval before execution
sovereignty_enforcement: true # Default-on local-only / blocked routing for sovereign content
speculative_decoding: true # Enable drafter/verifier orchestration
monologue: true # Enable recursive multi-expert reasoning
notional_confidence_threshold: 0.85 # Draft streaming gate for speculative execution
models:
local_qwen:
provider: ollama
endpoint: http://localhost:11434/api/generate
model_name: qwen2.5-coder:7b
roles:
router: [local_qwen]
reasoning: [local_qwen]
coding: [local_qwen]
# Unified artifact catalog — models, services, and analyzers in one registry
catalog:
aurarouter-default:
kind: analyzer
display_name: AuraRouter Default
description: Intent classification with complexity-based triage routing
provider: aurarouter
analyzer_kind: intent_triage
capabilities: [code, reasoning, review, planning]
role_bindings:
simple_code: coding
complex_reasoning: reasoning
review: reviewer2.跑步
# MCP server (default)
aurarouter
# Desktop GUI
aurarouter gui
# With explicit config
aurarouter --config /path/to/auraconfig.yaml提供商架构
AuraRouter 0.5.1将提供商分为 内置的 (捆绑)和 外部 (MCP服务器包)。
内置提供商
| 提供程序 | 类型 | 配置键 | 依赖关系 |
|---|---|---|---|
| Ollama | 本地HTTP | ollama | 无(使用httpx) |
| llama.cpp服务器 | 本地HTTP | llamacpp-server | 无(使用httpx) |
| llama.cpp嵌入式 | 本地原生 | llamacpp | pip install aurarouter[local] |
| OpenAPI兼容 | 本地/云HTTP | openapi | 无(使用httpx) |
所有内置提供程序都实现 ProviderProtocol 并且由提供商目录自动发现。
外部MCP提供商包
云提供商作为单独的可安装MCP服务器包分发,通过 aurarouter.providers 入口点组:
| 软件包 | 提供程序 | 型号 | 安装 |
|---|---|---|---|
| 奥鲁特克劳德 | 人物克劳德 | 作品4,十四行诗4,俳句4.5 | pip install aurarouter-claude |
| 奥轮双子座 | 谷歌双子座 | 2.5专业版、2.5 Flash、2.0 Flash | pip install aurarouter-gemini |
# Install one or both provider packages
pip install aurarouter-claude
pip install aurarouter-gemini
# Verify discovery
python -c "from importlib.metadata import entry_points; print([ep.name for ep in entry_points(group='aurarouter.providers')])"外部提供商通过以下方式连接 MCPProvider,它将任何兼容MCP的服务器包装为标准AuraRouter提供商。这 openapi 内置提供程序还可以作为实现OpenAI聊天完成API的任何端点的后备方案。
提供者模板
构建自定义外部提供程序的入门模板包含在 src/aurarouter/providers/template/.
统一工件目录
AuraRouter 0.5.1引入了 统一目录 它通过一个单一的工具管理三种工件 catalog 部分在 auraconfig.yaml。此目录用作外部工具和自动化测试套件发现的中央注册表。
看 文档/艺术品_分类.md 有关使用目录进行动态模型发现和测试集成的完整指南。
| 种类 | 描述 |
|---|---|
| 模型 | 推理端点(本地或远程)。旧条目 models 部分将自动包含为 kind: model. |
| 服务 | 外部MCP服务(例如AuraGrid端点)。 |
| 分析器 | 控制任务如何分类和分派到模型的路由分析器。 |
每个工件都有一个共同的模式: artifact_id, kind, display_name, description, provider, version, tags, capabilities, status,加上特定种类 spec 在YAML的顶层合并的字段。
该目录完全向后兼容。现有的 models 条目继续工作并显示为 kind: model 目录查询中的工件。新工件应在 catalog 部分。
配置迁移
要迁移缺少以下配置的旧配置 catalog 和 system.active_analyzer 部分:
aurarouter migrate-config --dry-run # Preview changes
aurarouter migrate-config # Apply in-place迁移添加了一个空 catalog 部分,转换 grid_services.endpoints 进入目录服务条目,并设置 system.active_analyzer 到 aurarouter-default.现有 models 和 roles 部分永远不会被修改。
路线分析仪
路线分析器是 FMoE(联合专家混合)编排原语 位于模型层之上。它们控制着传入任务的分类方式、选择的角色链以及模型的排名方式,取代或增强了AuraRouter内置的Intent Plan Execute管道。
内置分析仪: aurarouter-default 封装了现有的IPE逻辑(基于复杂性的分流路由的意图分类)。它在服务器启动时自动注册在目录中,如果没有配置,则设置为活动分析器。
远程分析仪: 外部系统(如AuraXLM)可以注册为分析仪 mcp_endpoint 当远程分析器处于活动状态时, route_task 通过MCP JSON-RPC将路由决策委托给它。如果远程分析器发生故障或无法访问,则使用内置管道作为回退。
主动分析仪通过以下方式控制:
- 配置:
system.active_analyzer在auraconfig.yaml - MCP:
aurarouter.analyzer.set_active/aurarouter.analyzer.get_active - CLI:
aurarouter config set system.active_analyzer ANALYZER_ID
主权、RAG和推理
主权执行
AuraRouter现在在路由热点路径上执行主权。当配置的模式指示PII或其他主权内容时:
- 仅限本地的模型链会自动执行
- 当不存在兼容的本地链时,云执行被阻止
- 响应消毒条在返回结果之前泄漏了敏感内容
- 结构化主权审计事件以与AuraGrid和AuraXLM共享的统一模式发出
RAG富集
当 system.rag_enrichment 启用后,AuraRouter在计划或执行之前调用AuraXLM检索服务,并将检索到的上下文注入任务提示中。故障会干净地降级回原始提示。
独白
AuraMonologue使用AuraXLM潜在锚点检索和MAS评分来确定专家参与的资格。生成器、评论家和精炼者角色迭代操作,直到评论家批准、相似性收敛或最大迭代截止。
意图分类
0.5.5版本新增 --AuraRouter使用意图分类管道来确定每个任务的路由方式。意图将任务映射到角色,角色映射到模型链。
内置意图
无论哪个分析器处于活动状态,以下意图始终可用:
| 意图 | 目标角色 | 描述 |
|---|---|---|
DIRECT | coding | 不需要代码或多步推理的简单问题、笑话或单轮任务 |
SIMPLE_CODE | coding | 简单的代码生成或实现任务 |
COMPLEX_REASONING | reasoning | 多步推理、架构设计或复杂的分析任务 |
通过分析仪定制意图
分析器可以通过其 role_bindings 规范字段。每把钥匙 role_bindings 成为自定义意图,其值是目标角色:
catalog:
my-domain-analyzer:
kind: analyzer
display_name: My Domain Analyzer
analyzer_kind: intent_triage
role_bindings:
generate_code: coding
edit_code: coding
explain_code: reasoning
review: reasoning当此分析器处于活动状态时,其自定义意图将与内置意图一起注册。自定义意图具有更高的优先级,可以覆盖同名的内置意图。
模型还可以声明 supported_intents 以表明它们最适合哪些意图:
catalog:
specialist-model:
kind: model
display_name: Code Specialist
supported_intents: [generate_code, edit_code]CLI意图选择
强制特定意图而不是自动分类:
# List all available intents
aurarouter intent list
# Describe a specific intent
aurarouter intent describe SIMPLE_CODE
# Route with explicit intent
aurarouter run "Implement a REST API" --intent generate_codeGUI意图选择器
工作区面板在Execute按钮旁边包含一个intent组合框。它列出了“自动(分类)”(默认)、所有内置意图以及在活动分析器名称下分组的任何分析器声明的意图。选择一个特定意图以绕过自动分类。
MCP工具
这 list_intents MCP工具返回所有可用意图及其目标角色和来源:
{
"active_analyzer": "aurarouter-default",
"intents": [
{"name": "DIRECT", "target_role": "coding", "source": "builtin", "description": "..."},
{"name": "SIMPLE_CODE", "target_role": "coding", "source": "builtin", "description": "..."},
{"name": "COMPLEX_REASONING", "target_role": "reasoning", "source": "builtin", "description": "..."}
]
}有关构建具有自定义意图的分析器的完整指南,请参阅 docs/ANALYZER_GUIDE.md.
图形用户界面(v0.5.1-重新设计)
桌面GUI使用侧边栏驱动的布局,有六个主要部分:
- 工作区 --三列任务执行面板:历史侧栏、带DAG可视化工具的任务输入和语法突出显示的输出、上下文/设置侧栏
- 路由 --可视化流程图编辑器,用于角色到模型回退链,具有拖放重新排序和分类预览功能
- 模型 --具有基于卡片的布局、供应商目录、健康徽章和HuggingFace下载的统一模型管理器
- 监视器 --可观察性仪表板,带有子选项卡:概述、流量、隐私、健康、投资回报率和遥测
- 设置 --五个可折叠部分:MCP工具、预算、隐私、YAML编辑器和系统
- 帮助 --可搜索的上下文帮助浏览器,为首次用户提供入门向导
- 网格面板(AuraGrid) --部署策略编辑器、单元节点状态、事件日志
特征:
- 环境选择器 --在运行时在本地和AuraGrid部署之间切换
- 服务控制 --启动、停止和暂停MCP服务器或AuraGrid MAS
- 提供商目录 --发现、启动、停止和健康检查内置和外部MCP提供商
- 键盘快捷键 --Ctrl+Enter(执行)、Ctrl+N(新建)、Escape(取消)、Ctrl+1-6(部分)、F1(帮助)、Ctrl+(设置)
所有配置更改都将持久化到 auraconfig.yaml。参见 GUI_GUIDE.md 完整的指南。
CLI命令
| 命令 | 描述 |
|---|---|
aurarouter | 运行MCP服务器(默认) |
aurarouter gui | 启动桌面GUI |
aurarouter model list | 列出所有已配置的型号 |
aurarouter model add ID --provider P | 添加新模型 |
aurarouter model edit ID [--provider] [--endpoint] | 编辑现有模型 |
aurarouter model remove ID | 删除模型 |
aurarouter model test ID | 测试模型连接性 |
aurarouter model auto-tune ID | 自动调整模型参数 |
aurarouter route list | 列出路由角色和链 |
aurarouter route set ROLE MODEL... | 设置角色的回退链 |
aurarouter route append ROLE MODEL | 将模型附加到链 |
aurarouter route remove-model ROLE MODEL | 从链中删除模型 |
aurarouter route delete ROLE | 删除角色 |
aurarouter run TASK | 通过IPE循环执行任务 |
aurarouter compare PROMPT --models A,B | 比较不同模型的输出 |
aurarouter traffic [--range 24h] | 显示流量和使用统计数据 |
aurarouter privacy [--range 7d] | 显示隐私审核事件 |
aurarouter health [MODEL] | 检查模型运行状况 |
aurarouter budget | 显示预算状态 |
aurarouter config show | 显示当前配置 |
aurarouter config set KEY VALUE | 设置配置值 |
aurarouter config mcp-tool TOOL --enable/--disable | 切换MCP工具 |
aurarouter config save | 将配置保存到磁盘 |
aurarouter config reload | 从磁盘重新加载配置 |
aurarouter catalog list | 列出提供者目录 |
aurarouter catalog add NAME --endpoint URL | 添加提供者 |
aurarouter catalog remove NAME | 删除提供者 |
aurarouter catalog start NAME | 启动提供者 |
aurarouter catalog stop NAME | 停止提供者 |
aurarouter catalog health [NAME] | 检查提供者健康状况 |
aurarouter catalog discover NAME | 从供应商那里发现模型 |
aurarouter intent list | 列出所有可用意图(内置+声明分析器) |
aurarouter intent describe NAME | 显示特定意图的详细信息 |
aurarouter run TASK --intent NAME | 以强制意图执行任务(跳过自动分类) |
aurarouter migrate-config [--dry-run] | 将旧配置迁移到当前格式(添加目录、active_analyzer) |
aurarouter --install | MCP客户端的交互式安装程序 |
aurarouter --install-gemini | 注册Gemini CLI |
aurarouter download-model --repo REPO --file FILE | 下载GGUF模型(旧版) |
aurarouter list-models | 列出已下载的GGUF型号(旧版) |
aurarouter remove-model --file FILE | 删除下载的模型(旧版) |
所有命令支持 --json 用于机器可读输出和 --config 用于自定义配置路径。
MCP工具
MCP服务器向连接的客户端公开以下工具。工具可以在中单独启用/禁用 auraconfig.yaml 在...之下 mcp.tools.
核心路由
| 工具 | 说明 |
|---|---|
route_task | 通过具有自动模型回退的IPE循环路由任务 |
local_inference | 仅在本地/私有模型上执行(无云调用) |
generate_code | 带规划和审查的多步代码生成 |
compare_models | 跨多个模型运行提示并比较输出 |
list_models | 列出所有已配置的模型及其提供程序和端点信息 |
资产管理
| 工具 | 说明 |
|---|---|
aurarouter.assets.list | 列出本地存储中的物理GGUF模型文件 |
aurarouter.assets.register | 注册本地GGUF文件以进行即时路由 |
aurarouter.assets.register_remote | 注册远程模型端点以进行路由 |
aurarouter.assets.unregister | 从路由配置中删除模型(可选删除文件) |
统一工件目录
| 工具 | 说明 |
|---|---|
aurarouter.catalog.list | 列出目录工件,可选择按种类筛选(model, service, analyzer) |
aurarouter.catalog.get | 按ID获取单个目录工件的详细信息 |
aurarouter.catalog.register | 在目录中注册新工件(模型、服务或分析器) |
aurarouter.catalog.remove | 从目录中删除工件 |
路线分析仪
| 工具 | 说明 |
|---|---|
aurarouter.analyzer.set_active | 设置或清除用于路由决策的活动分析器 |
aurarouter.analyzer.get_active | 获取当前活动的分析器ID |
意图发现
| 工具 | 说明 |
|---|---|
list_intents | 列出所有可用意图(内置+声明分析器)以及目标角色和源 |
会话管理(选择加入)
会话工具在以下情况下注册 sessions.enabled: true 在配置中: create_session, session_message, session_status, list_sessions, delete_session.
网格服务工具(选择加入)
网格工具在以下情况下注册 grid_services.endpoints 已配置: list_grid_services, list_remote_tools, call_remote_tool.
AuraGrid集成(可选)
AuraRouter可以部署为 管理应用服务(MAS) 上 AuraGrid 用于分布式访问路由服务。
pip install aurarouter[auragrid]看 AURAGRID.md 获取完整的集成指南。
缩放指南
当您添加新的本地xLM资源时:
- 打开
auraconfig.yaml(或使用GUI配置选项卡)。 - 在下面添加新模型
models. - 将其添加到以下相应的角色链中
roles. - 重新启动路由器(或从GUI保存)。 无需更改代码。
故障排除
- “收到空响应”: 本地模型可能已超时或超时。检查
timeout融入auraconfig.yaml. - “找不到模型”: 确保
model_name在YAML匹配中ollama list确切地。 - “需要huggingface hub”: 跑
pip install aurarouter[local]启用模型下载和嵌入式llama.cpp。 - 无头服务器上的PySide6问题: PySide6是一个核心依赖。在无头/仅服务器部署中,使用MCP服务器模式(
aurarouter)其不启动GUI。
许可证
版权所有2026 AuraCore Dynamics股份有限公司。
