diff --git a/docs/llmgw-intro.pdf b/docs/llmgw-intro.pdf new file mode 100644 index 0000000..0f21b1a Binary files /dev/null and b/docs/llmgw-intro.pdf differ diff --git a/internal/web/about.go b/internal/web/about.go index d7f5164..a9e2014 100644 --- a/internal/web/about.go +++ b/internal/web/about.go @@ -50,6 +50,13 @@ func (d AboutData) InstallURL() string { return "/install" } +// DeckURL is the introduction for decision makers, as a PDF. It lives in the +// repository rather than in the binary, so every gateway does not carry a +// megabyte of slides; gateway and website link to the same file. +func (AboutData) DeckURL() string { + return repoURL + "/raw/branch/main/docs/llmgw-intro.pdf" +} + // Still is a screen of the install guide's recording, for the steps here. func (d AboutData) Still(name string) template.HTML { return InstallData{Site: d.Site}.Still(name) diff --git a/internal/web/locales/en/about.json b/internal/web/locales/en/about.json index 4901f99..c577991 100644 --- a/internal/web/locales/en/about.json +++ b/internal/web/locales/en/about.json @@ -7,6 +7,7 @@ "about.nav.install": "Install", "about.nav.proxy": "Reverse proxy", "about.nav.download": "Download", + "about.nav.deck": "Presentation", "about.nav.source": "Source", "about.nav.gateway": "This gateway", "about.hero.eyebrow": "Self-hosted LLM gateway · %s", @@ -14,6 +15,7 @@ "about.hero.lede": "llmgw runs vLLM, SGLang and llama.cpp across your servers and serves them behind one OpenAI-compatible API. It knows which GPUs share an NVLink domain or an InfiniBand fabric, and a model split across machines never straddles two.", "about.hero.download": "Download", "about.hero.guide": "Install guide", + "about.hero.deck": "Presentation (PDF)", "about.hero.oneline_label": "Set up a control plane", "about.copy": "Copy", "about.copied": "Copied", diff --git a/internal/web/locales/tr/about.json b/internal/web/locales/tr/about.json index 7999c1e..3ced734 100644 --- a/internal/web/locales/tr/about.json +++ b/internal/web/locales/tr/about.json @@ -7,6 +7,7 @@ "about.nav.install": "Kurulum", "about.nav.proxy": "Ters proxy", "about.nav.download": "İndir", + "about.nav.deck": "Sunum", "about.nav.source": "Kaynak kod", "about.nav.gateway": "Bu ağ geçidi", "about.hero.eyebrow": "Kendi sunucunuzda çalışan LLM ağ geçidi · %s", @@ -14,6 +15,7 @@ "about.hero.lede": "llmgw; vLLM, SGLang ve llama.cpp'yi sunucularınızda çalıştırır ve hepsini OpenAI uyumlu tek bir API'nin arkasından sunar. Hangi GPU'ların aynı NVLink alanını ya da aynı InfiniBand fabric'ini paylaştığını bilir; makinelere bölünmüş bir model hiçbir zaman iki fabric'e birden yayılmaz.", "about.hero.download": "İndir", "about.hero.guide": "Kurulum kılavuzu", + "about.hero.deck": "Tanıtım sunumu (PDF)", "about.hero.oneline_label": "Bir kontrol düzlemi kurun", "about.copy": "Kopyala", "about.copied": "Kopyalandı", diff --git a/internal/web/templates/about.html b/internal/web/templates/about.html index c9f7ac1..3bf2bc8 100644 --- a/internal/web/templates/about.html +++ b/internal/web/templates/about.html @@ -21,6 +21,7 @@ {{t "about.nav.install"}} {{t "about.nav.proxy"}} {{t "about.nav.download"}} + {{t "about.nav.deck"}} {{t "about.nav.source"}} {{if not .Site}}{{t "about.nav.gateway"}}{{end}} @@ -34,6 +35,7 @@
{{t "about.hero.download"}}{{with .Release}} {{.}}{{end}} {{t "about.hero.guide"}} + {{t "about.hero.deck"}}
$ sudo llmgw server init --admin you@example.com