llama-stack

This commit is contained in:
Bryan Ramos 2026-04-13 23:28:14 -04:00
parent c41a6ff637
commit cb5b10493f

View file

@ -125,14 +125,8 @@ in
}; };
}; };
virtualHosts."ai.${domain}" = { virtualHosts."ai.${domain}" = let
useACMEHost = domain; apiKeyAuth = ''
forceSSL = true;
locations."/" = {
proxyPass = "http://192.168.0.23:8321";
proxyWebsockets = true;
extraConfig = ''
# API key auth — validated against the sops-managed key
set $api_key ""; set $api_key "";
if ($http_authorization ~* "^Bearer (.+)$") { if ($http_authorization ~* "^Bearer (.+)$") {
set $api_key $1; set $api_key $1;
@ -142,6 +136,29 @@ in
} }
include ${config.sops.templates."nginx-ai-auth.conf".path}; include ${config.sops.templates."nginx-ai-auth.conf".path};
''; '';
in {
useACMEHost = domain;
forceSSL = true;
# Web UI — llama.cpp chat interface (browser)
# Auth handled by llama.cpp itself (--api-key flag)
locations."/" = {
proxyPass = "http://192.168.0.23:8000";
proxyWebsockets = true;
};
# API — Llama Stack (opencode, programmatic clients)
locations."/v1/" = {
proxyPass = "http://192.168.0.23:8321/v1/";
proxyWebsockets = true;
extraConfig = apiKeyAuth;
};
# Llama Stack beta API
locations."/v1beta/" = {
proxyPass = "http://192.168.0.23:8321/v1beta/";
proxyWebsockets = true;
extraConfig = apiKeyAuth;
}; };
}; };