Skip to main content

rusty_genius_core/
protocol.rs

1use crate::manifest::InferenceConfig;
2use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Clone, Serialize, Deserialize)]
5pub enum InferenceEvent {
6    ProcessStart,
7    Thought(ThoughtEvent),
8    Content(String),
9    Complete,
10}
11
12#[derive(Debug, Clone, Serialize, Deserialize)]
13pub enum ThoughtEvent {
14    Start,
15    Delta(String),
16    Stop,
17}
18
19#[derive(Debug, Clone, Serialize, Deserialize)]
20pub enum BrainstemInput {
21    LoadModel(String),
22    Infer {
23        prompt: String,
24        config: InferenceConfig,
25    },
26    Stop,
27}
28
29#[derive(Debug, Clone, Serialize, Deserialize)]
30pub enum BrainstemOutput {
31    Event(InferenceEvent),
32    Error(String),
33}