objectiveai_api/chat/completions/upstream/upstream.rs
1//! Upstream provider enumeration.
2
3use serde::{Deserialize, Serialize};
4
5/// Supported upstream LLM providers.
6#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
7#[serde(rename_all = "snake_case")]
8pub enum Upstream {
9 /// OpenRouter provider.
10 OpenRouter,
11}
12
13/// Returns an iterator over available upstream providers for a request.
14pub fn upstreams(
15 _ensemble_llm: &objectiveai::ensemble_llm::EnsembleLlm,
16 _request: super::Params,
17) -> impl Iterator<Item = Upstream> {
18 const ALL_UPSTREAMS: [Upstream; 1] = [Upstream::OpenRouter];
19 ALL_UPSTREAMS.iter().copied()
20}