From 9a488e21f5efc81d3a64dcd78a0dc2d5e3d9efea Mon Sep 17 00:00:00 2001 From: Meng Zhang Date: Mon, 29 May 2023 18:09:53 -0700 Subject: [PATCH] Add prefix / suffix --- crates/tabby/src/serve/completions.rs | 16 ++++++++++++++-- crates/tabby/src/serve/mod.rs | 1 + 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/crates/tabby/src/serve/completions.rs b/crates/tabby/src/serve/completions.rs index 7747f78..b497547 100644 --- a/crates/tabby/src/serve/completions.rs +++ b/crates/tabby/src/serve/completions.rs @@ -11,12 +11,24 @@ mod languages; #[derive(Serialize, Deserialize, ToSchema, Clone, Debug)] pub struct CompletionRequest { + #[schema(example = "def fib(n):")] + prompt: String, + /// https://code.visualstudio.com/docs/languages/identifiers #[schema(example = "python")] language: Option, - #[schema(example = "def fib(n):")] - prompt: String, + /// When segments are set, the `prompt` is ignored during the inference. + segments: Option, +} + +#[derive(Serialize, Deserialize, ToSchema, Clone, Debug)] +pub struct Segments { + /// Content that appears before the cursor in the editor window. + prefix: String, + + /// Content that appears after the cursor in the editor window. + suffix: String } #[derive(Serialize, Deserialize, ToSchema, Clone, Debug)] diff --git a/crates/tabby/src/serve/mod.rs b/crates/tabby/src/serve/mod.rs index 305bfe2..090fd8b 100644 --- a/crates/tabby/src/serve/mod.rs +++ b/crates/tabby/src/serve/mod.rs @@ -21,6 +21,7 @@ use utoipa_swagger_ui::SwaggerUi; events::LogEventRequest, completions::CompletionRequest, completions::CompletionResponse, + completions::Segments, completions::Choice )) )]