windmill_api/models/
ai_agent_input_transforms.rs

1/*
2 * Windmill API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: 1.592.1
7 * Contact: contact@windmill.dev
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// AiAgentInputTransforms : Input parameters for the AI agent mapped to their values
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct AiAgentInputTransforms {
17    #[serde(rename = "provider")]
18    pub provider: Box<models::InputTransform>,
19    #[serde(rename = "output_type")]
20    pub output_type: Box<models::InputTransform>,
21    #[serde(rename = "user_message")]
22    pub user_message: Box<models::InputTransform>,
23    #[serde(rename = "system_prompt", skip_serializing_if = "Option::is_none")]
24    pub system_prompt: Option<Box<models::InputTransform>>,
25    #[serde(rename = "streaming", skip_serializing_if = "Option::is_none")]
26    pub streaming: Option<Box<models::InputTransform>>,
27    #[serde(rename = "messages_context_length", skip_serializing_if = "Option::is_none")]
28    pub messages_context_length: Option<Box<models::InputTransform>>,
29    #[serde(rename = "output_schema", skip_serializing_if = "Option::is_none")]
30    pub output_schema: Option<Box<models::InputTransform>>,
31    #[serde(rename = "user_images", skip_serializing_if = "Option::is_none")]
32    pub user_images: Option<Box<models::InputTransform>>,
33    #[serde(rename = "max_completion_tokens", skip_serializing_if = "Option::is_none")]
34    pub max_completion_tokens: Option<Box<models::InputTransform>>,
35    #[serde(rename = "temperature", skip_serializing_if = "Option::is_none")]
36    pub temperature: Option<Box<models::InputTransform>>,
37}
38
39impl AiAgentInputTransforms {
40    /// Input parameters for the AI agent mapped to their values
41    pub fn new(provider: models::InputTransform, output_type: models::InputTransform, user_message: models::InputTransform) -> AiAgentInputTransforms {
42        AiAgentInputTransforms {
43            provider: Box::new(provider),
44            output_type: Box::new(output_type),
45            user_message: Box::new(user_message),
46            system_prompt: None,
47            streaming: None,
48            messages_context_length: None,
49            output_schema: None,
50            user_images: None,
51            max_completion_tokens: None,
52            temperature: None,
53        }
54    }
55}
56