objectiveai_api/chat/completions/upstream/params.rs
1//! Request parameters for upstream provider calls.
2
3use std::sync::Arc;
4
5/// Parameters for an upstream completion request.
6#[derive(Debug, Clone)]
7pub enum Params {
8 /// Parameters for a chat completion request.
9 Chat {
10 /// The chat completion request.
11 request: Arc<objectiveai::chat::completions::request::ChatCompletionCreateParams>,
12 },
13 /// Parameters for a chat completion used to collect an LLM vote for vector completions.
14 Vector {
15 /// The vector completion request.
16 request: Arc<objectiveai::vector::completions::request::VectorCompletionCreateParams>,
17 /// Maps prefix keys shown to the LLM (e.g., "`A`") to response indices in the original request.
18 vector_pfx_indices: Arc<Vec<(String, usize)>>,
19 },
20}