tinyhumansai/openhuman · error · anyhow::Error

[chat-factory] unrecognised provider string '{}' for role '{

Error message

[chat-factory] unrecognised provider string '{}' for role '{}'. Valid forms: openhuman, ollama:<model>, lmstudio:<model>, mlx:<model>, omlx:<model>, local-openai:<model>, claude_agent_sdk, claude_agent_sdk:<model>, <slug>:<model>. Configured slugs: [{}]

What it means

Error "[chat-factory] unrecognised provider string '{}' for role '{}'. Valid forms: openhuman, ollama:<model>, lmstudio:<model>, mlx:<model>, omlx:<model>, local-openai:<model>, claude_agent_sdk, claude_agent_sdk:<model>, <slug>:<model>. Configured slugs: [{}]" thrown in tinyhumansai/openhuman.

Source

Thrown at src/openhuman/inference/provider/factory.rs:1032

        if slug.trim().is_empty() {
            return anyhow::anyhow!(
                "[chat-factory] provider string '{}' for role '{}' has an empty slug",
                p,
                role
            );
        }
        let (model, _) = split_model_and_temperature(model_with_temperature);
        return match resolve_cloud_slug(role, slug.trim(), &model, config) {
            Err(error) => error,
            Ok(_) => anyhow::anyhow!(
                "[chat-factory] configured provider '{}' for role '{}' did not produce a crate-native chat model",
                p,
                role
            ),
        };
    }

    anyhow::anyhow!(
        "[chat-factory] unrecognised provider string '{}' for role '{}'. \
         Valid forms: openhuman, ollama:<model>, lmstudio:<model>, mlx:<model>, omlx:<model>, \
         local-openai:<model>, claude_agent_sdk, claude_agent_sdk:<model>, <slug>:<model>. \
         Configured slugs: [{}]",
        p,
        role,
        config
            .cloud_providers
            .iter()
            .map(|entry| entry.slug.as_str())
            .collect::<Vec<_>>()
            .join(", ")
    )
}

// ── Internal helpers ──────────────────────────────────────────────────────────

/// Canonical managed-backend tier for a specialised workload role.

View on GitHub (pinned to 7491200858)

Solutions

  1. Use a valid provider form: openhuman, ollama:<model>, lmstudio:<model>, mlx:<model>, omlx:<model>, local-openai:<model>, claude_agent_sdk[:<model>]
  2. Or use a configured cloud_providers slug as <slug>:<model>
  3. Check the listed configured slugs and match one exactly
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at src/openhuman/inference/provider/factory.rs:1032 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17). Data as JSON: /api/errors/c23a6807ad258592. Report an issue: GitHub.