1use serde::Serialize;
2
3pub mod chat;
4pub mod classify;
5pub mod detokenize;
6pub mod embed;
7pub mod generate;
8pub mod rerank;
9pub mod tokenize;
10
11#[derive(strum_macros::Display, Serialize, Debug)]
12pub enum Truncate {
13 #[strum(serialize = "NONE")]
14 #[serde(rename = "NONE")]
15 None,
16 #[strum(serialize = "START")]
17 #[serde(rename = "START")]
18 Start,
19 #[strum(serialize = "END")]
20 #[serde(rename = "END")]
21 End,
22}
23
24#[derive(strum_macros::Display, Serialize, Debug)]
25pub enum EmbedModel {
26 #[strum(serialize = "embed-english-light-v2.0")]
27 #[serde(rename = "embed-english-light-v2.0")]
28 EnglishLightV2,
29 #[strum(serialize = "embed-english-v2.0")]
30 #[serde(rename = "embed-english-v2.0")]
31 EnglishV2,
32 #[strum(serialize = "embed-multilingual-v2.0")]
33 #[serde(rename = "embed-multilingual-v2.0")]
34 MultilingualV2,
35 #[strum(serialize = "embed-english-light-v3.0")]
36 #[serde(rename = "embed-english-light-v3.0")]
37 EnglishLightV3,
38 #[strum(serialize = "embed-english-v3.0")]
39 #[serde(rename = "embed-english-v3.0")]
40 EnglishV3,
41 #[strum(serialize = "embed-multilingual-v3.0")]
42 #[serde(rename = "embed-multilingual-v3.0")]
43 MultilingualV3,
44 Custom(String),
46}
47
48#[derive(strum_macros::Display, Serialize, Debug)]
49pub enum GenerateModel {
50 #[strum(serialize = "command")]
51 #[serde(rename = "command")]
52 Command,
53 #[strum(serialize = "command-light")]
54 #[serde(rename = "command-light")]
55 CommandLight,
56 #[strum(serialize = "command-r")]
57 #[serde(rename = "command-r")]
58 CommandR,
59 #[strum(serialize = "command-r-plus")]
60 #[serde(rename = "command-r-plus")]
61 CommandRPlus,
62 #[strum(serialize = "command-r-08-2024")]
63 #[serde(rename = "command-r-08-2024")]
64 CommandR082024,
65 #[strum(serialize = "command-r-plus-08-2024")]
66 #[serde(rename = "command-r-plus-08-2024")]
67 CommandRPlus082024,
68 #[strum(serialize = "command-nightly")]
69 #[serde(rename = "command-nightly")]
70 CommandNightly,
71 Custom(String),
72}