Move preferences from the database to a YAML config file
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -484,13 +484,13 @@ pub(super) fn parse_chat_request(
|
||||
return Err((400, "missing messages".into()));
|
||||
}
|
||||
let requested_id = request.model.as_deref().unwrap_or_default();
|
||||
let preferences = state
|
||||
.preferences
|
||||
let config = state
|
||||
.config
|
||||
.read()
|
||||
.map_err(|_| (500, "preferences are unavailable".to_owned()))?
|
||||
.clone();
|
||||
let model = if requested_id.is_empty() {
|
||||
ModelChoice::from_id(&preferences.selected_model)
|
||||
Some(config.model)
|
||||
} else {
|
||||
model_alias(requested_id)
|
||||
}
|
||||
@@ -499,7 +499,7 @@ pub(super) fn parse_chat_request(
|
||||
return Err((400, format!("model is not installed and verified: {model}")));
|
||||
}
|
||||
|
||||
let mut generation = preferences.generation().map_err(|error| (500, error))?;
|
||||
let mut generation = config.generation.clone();
|
||||
generation.system_prompt.clear();
|
||||
generation.max_generated_tokens = request
|
||||
.max_completion_tokens
|
||||
@@ -525,8 +525,7 @@ pub(super) fn parse_chat_request(
|
||||
protocol,
|
||||
)?;
|
||||
generation.system_prompt = system;
|
||||
let runtime = preferences.runtime().map_err(|error| (500, error))?;
|
||||
let mut effective = effective_settings(model, &generation, &runtime, &state.models_path)
|
||||
let mut effective = effective_settings(model, &generation, &config.runtime, &state.models_path)
|
||||
.map_err(|error| (400, error))?;
|
||||
effective.turn.top_k = request.top_k.unwrap_or(0);
|
||||
if effective.turn.top_k < 0 {
|
||||
@@ -549,7 +548,7 @@ pub(super) fn parse_chat_request(
|
||||
messages,
|
||||
turn: effective.turn,
|
||||
engine: effective.engine,
|
||||
idle_timeout: Duration::from_secs(preferences.idle_timeout_minutes.max(1) as u64 * 60),
|
||||
idle_timeout: Duration::from_secs(config.idle_timeout_minutes.max(1) as u64 * 60),
|
||||
stream: request.stream,
|
||||
include_usage: request
|
||||
.stream_options
|
||||
|
||||
Reference in New Issue
Block a user