diff --git a/docs/decision-retrieval.md b/docs/decision-retrieval.md index d1933cf..ed71cc2 100644 --- a/docs/decision-retrieval.md +++ b/docs/decision-retrieval.md @@ -6,6 +6,10 @@ additive evaluation path over native lexical/vector retrieval. When the provider is disabled, unavailable, or returns an invalid response, Noema keeps native retrieval results. +The default local endpoint is `http://127.0.0.1:18788/v1/decision`. Providers +that still expose the older TypeSafe-compatible path `/v1/systemone` can be +selected with an explicit `endpoint:`. + ## Provider configuration Configure under `decision` in the Noema config file: diff --git a/docs/testing/native-decision.md b/docs/testing/native-decision.md index 178f6f3..d815de1 100644 --- a/docs/testing/native-decision.md +++ b/docs/testing/native-decision.md @@ -5,6 +5,10 @@ evaluate retrieval candidates. Inference uses a configured endpoint; model weights are not bundled. When evaluation is disabled or fails closed, native retrieval results are preserved. +The default local endpoint is `http://127.0.0.1:18788/v1/decision`. Providers +that still expose the older TypeSafe-compatible path `/v1/systemone` can be +selected with an explicit `endpoint:`. + ## Configuration ```yaml diff --git a/src/decision.rs b/src/decision.rs index 0956062..1c5c86e 100644 --- a/src/decision.rs +++ b/src/decision.rs @@ -12,7 +12,7 @@ use std::{ }; use tokio::sync::Semaphore; -const DEFAULT_ENDPOINT: &str = "http://127.0.0.1:18788/v1/systemone"; +const DEFAULT_ENDPOINT: &str = "http://127.0.0.1:18788/v1/decision"; const MAX_REQUEST_BYTES: usize = 30_000; pub(crate) const RESCUE_MARKER: &str = " [retrieval rescue; verify date and scope]"; static CONCURRENCY: std::sync::OnceLock> = std::sync::OnceLock::new(); @@ -979,7 +979,7 @@ mod tests { let client = Client { token: "local".into(), model: "clef-flash".into(), - endpoint: "http://127.0.0.1:18788/v1/systemone".into(), + endpoint: "http://127.0.0.1:18788/v1/decision".into(), timeout: Duration::from_secs(30), }; let (state, questions) = batch_fixture(16); @@ -1298,12 +1298,12 @@ mod tests { enabled: Enablement::Explicit(true), provider: Provider::Local, model: "any-local-model".into(), - endpoint: "http://127.0.0.1:9/v1/systemone".into(), + endpoint: "http://127.0.0.1:9/v1/decision".into(), ..DecisionConfig::default() }; let client = config.client().unwrap().unwrap(); assert_eq!(client.token, "local-clef"); - assert_eq!(client.endpoint, "http://127.0.0.1:9/v1/systemone"); + assert_eq!(client.endpoint, "http://127.0.0.1:9/v1/decision"); assert_eq!(config.credential().0, "local-clef"); } diff --git a/tests/decision_enablement.rs b/tests/decision_enablement.rs index 7136556..e71d247 100644 --- a/tests/decision_enablement.rs +++ b/tests/decision_enablement.rs @@ -186,7 +186,7 @@ fn local_clef_auto_does_not_use_cloud_key() { #[test] fn explicit_local_provider_activates_without_cloud_key() { let (_dir, mut command) = command( - "decision:\n provider: local\n enabled: true\n model: local-eval\n endpoint: http://127.0.0.1:18788/v1/systemone\n", + "decision:\n provider: local\n enabled: true\n model: local-eval\n endpoint: http://127.0.0.1:18788/v1/decision\n", ); command .env("TYPESAFE_API_KEY", "synthetic-cloud-key-must-not-be-used")