跳到主要内容

LLM 选择器

提示

在较早版本中,这个组件名为 LLM Router

LLM Selector 组件会基于 OpenRouter 提供的模型规格信息,将请求路由到最合适的 LLM。

在流程中使用它时,需要把多个语言模型组件连接到 LLM Selector。 其中一个模型作为 judge LLM,用来分析输入消息、理解评估上下文,并从其他已连接的 LLM 中选出最合适的模型;随后输入会被路由到该模型,由其完成处理并返回结果。

下面的示例流程中有三个语言模型组件: 其中一个是 judge LLM,另外两个组成待选择的模型池。 输入输出组件则让整个路由过程在用户看来保持为一次普通聊天:你发出消息,收到回复,但无需感知底层到底调用了哪个模型。

LLM Selector component

LLM Selector 参数

有些参数在可视化编辑器中默认处于隐藏状态。 你可以通过组件标题栏菜单中的 控件 来修改全部参数。

NameDisplay NameInfo
modelsLanguage Models输入参数。连接多个语言模型组件LanguageModel 输出,形成候选模型池。judge_llm 会从该模型池中选择模型进行路由。如果模型选择或路由失败,则默认使用你连接的第一个模型。
input_valueInput输入参数。待路由给 judge LLM 选中模型处理的输入查询。
judge_llmJudge LLM输入参数。连接 一个 Language Model 组件的 LanguageModel 输出,作为负责路由判定的 judge LLM。
optimizationOptimization输入参数。指定 judge LLM 在选模时优先考虑的特性。可选 quality(最高质量)、speed(最快速度)、cost(最低成本)或 balanced(质量、速度、成本均衡)。默认:balanced
use_openrouter_specsUse OpenRouter Specs输入参数。是否从 OpenRouter API 获取模型规格信息。若为 false,则 judge LLM 只能看到模型名称。默认:启用(true)。
timeoutAPI Timeout输入参数。路由器发起 API 请求时的超时时间(秒)。默认:10
fallback_to_firstFallback to First Model输入参数。若路由到选定模型失败,是否回退到 models 中的第一个 LLM。默认:启用(true)。

LLM Selector 输出

LLM Selector 提供三种输出选项。 你可以在组件输出端口附近切换所需输出类型。

  • Output:一个 Message,包含由被选中 LLM 针对原始查询生成的回复。 适合常规聊天交互。

  • Selected Model Info:一个 Data 对象,包含被选中模型的信息,例如名称与版本。

  • Routing Decision:一个 Message,包含 judge 模型为何选择某个模型的理由,例如输入长度和参与比较的模型数量。示例如下:


    _10
    Model Selection Decision:
    _10
    - Selected Model Index: 0
    _10
    - Selected Model Name: gpt-4o-mini
    _10
    - Selected API Model ID (if resolved): openai/gpt-4o-mini
    _10
    - Optimization Preference: cost
    _10
    - Input Query Length: 27 characters (~5 tokens)
    _10
    - Number of Models Considered: 2
    _10
    - Specifications Source: OpenRouter API

    当你怀疑 judge 模型没有选中最佳模型时,这个输出非常适合用于调试。