From 2779d03caa6542eabb46cbaa559cdc4a26668d47 Mon Sep 17 00:00:00 2001 From: yetone Date: Fri, 25 Sep 2026 15:00:42 +0800 Subject: [PATCH] =?UTF-8?q?provider:=20Ollama=20Cloud=20is=20a=20preset=20?= =?UTF-8?q?of=20its=20own,=20with=20Ollama's=20icon=20and=20where=20to=20g?= =?UTF-8?q?et=20a=20key=20(ollama.com/settings/keys)=20=E2=80=94=20its=20h?= =?UTF-8?q?osted=20models=20answer=20the=20local=20server's=20API=20at=20o?= =?UTF-8?q?llama.com=20with=20a=20key:=20chat=20at=20https://ollama.com/v1?= =?UTF-8?q?,=20Anthropic's=20messages=20at=20https://ollama.com,=20and=20t?= =?UTF-8?q?he=20model=20list=20from=20/v1/models,=20and=20models.dev's=20o?= =?UTF-8?q?llama-cloud=20names=20them;=20the=20import=20links=20take=20it?= =?UTF-8?q?=20too?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/provider/presets.go | 5 +++++ site/public/docs/import.html | 4 ++-- site/public/import.html | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/internal/provider/presets.go b/internal/provider/presets.go index 80d3db9a..18bf7cb2 100644 --- a/internal/provider/presets.go +++ b/internal/provider/presets.go @@ -94,6 +94,11 @@ var presets = []PresetDef{ {ID: "groq", Name: "Groq", Icon: "groq", Kind: KindVendor, Catalog: "groq", Chat: "https://api.groq.com/openai/v1", Responses: "https://api.groq.com/openai/v1", Website: "https://console.groq.com", KeysURL: "https://console.groq.com/keys"}, + // Ollama's own hosted models: the local server's API, at ollama.com with a key + {ID: "ollama-cloud", Name: "Ollama Cloud", Icon: "ollama", Kind: KindVendor, Catalog: "ollama-cloud", + Chat: "https://ollama.com/v1", Anthropic: "https://ollama.com", + Note: "cloud models, with an API key", + Website: "https://docs.ollama.com/cloud", KeysURL: "https://ollama.com/settings/keys"}, {ID: "openrouter", Name: "OpenRouter", Icon: "openrouter", Kind: KindRelay, Catalog: "openrouter", Chat: "https://openrouter.ai/api/v1", Anthropic: "https://openrouter.ai/api", diff --git a/site/public/docs/import.html b/site/public/docs/import.html index 9b850cdc..9e2afaa7 100644 --- a/site/public/docs/import.html +++ b/site/public/docs/import.html @@ -121,7 +121,7 @@

Presets

Vendors magpie already knows. magpie presets prints the current list.

- anthropicopenaigoogledeepseekxaimoonshotKimimoonshot-cnzhipuGLMzaiminimaxminimax-cnqwenqwen-cnmistralgroqopenrouteropencode-goopencode-zentogetherfireworkssiliconflowaihubmix302aiyylxauto · global · cnollamalmstudio + anthropicopenaigoogledeepseekxaimoonshotKimimoonshot-cnzhipuGLMzaiminimaxminimax-cnqwenqwen-cnmistralgroqollama-cloudopenrouteropencode-goopencode-zentogetherfireworkssiliconflowaihubmix302aiyylxauto · global · cnollamalmstudio

A vendor with a preset only needs to add the key: magpie://import?preset=deepseek&key=sk-…. Want yours on the list? Open an issue.

@@ -277,7 +277,7 @@ href = "https://usemagpie.ai/import#" + urlencode({ ["anthropic", "Anthropic"], ["openai", "OpenAI"], ["google", "Google Gemini"], ["deepseek", "DeepSeek"], ["xai", "xAI"], ["moonshot", "Kimi"], ["moonshot-cn", "Kimi (China)"], ["zhipu", "Zhipu GLM"], ["zai", "Z.ai"], ["minimax", "MiniMax"], ["minimax-cn", "MiniMax (China)"], ["qwen", "Qwen"], ["qwen-cn", "Qwen (China)"], - ["mistral", "Mistral"], ["groq", "Groq"], ["openrouter", "OpenRouter"], ["opencode-go", "OpenCode Go"], + ["mistral", "Mistral"], ["groq", "Groq"], ["ollama-cloud", "Ollama Cloud"], ["openrouter", "OpenRouter"], ["opencode-go", "OpenCode Go"], ["opencode-zen", "OpenCode Zen"], ["together", "Together AI"], ["fireworks", "Fireworks"], ["siliconflow", "SiliconFlow"], ["aihubmix", "AiHubMix"], ["302ai", "302.AI"], ["yylx", "鱼鱼连线"], ["ollama", "Ollama"], ["lmstudio", "LM Studio"], diff --git a/site/public/import.html b/site/public/import.html index 63ea47dd..1fcfaee3 100644 --- a/site/public/import.html +++ b/site/public/import.html @@ -98,7 +98,7 @@ dd .m { display: inline-block; font-size: 12.5px; border: 1px solid var(--line); mistral: ["Mistral", "mistral-color.svg"], groq: ["Groq", "groq.svg"], openrouter: ["OpenRouter", "openrouter.svg"], "opencode-go": ["OpenCode Go", "opencode.svg"], "opencode-zen": ["OpenCode Zen", "opencode.svg"], together: ["Together AI"], fireworks: ["Fireworks"], siliconflow: ["SiliconFlow"], aihubmix: ["AiHubMix"], "302ai": ["302.AI"], yylx: ["鱼鱼连线"], - ollama: ["Ollama", "ollama.svg"], lmstudio: ["LM Studio"], + "ollama-cloud": ["Ollama Cloud", "ollama.svg"], ollama: ["Ollama", "ollama.svg"], lmstudio: ["LM Studio"], }; const preset = (q.get("preset") || "").toLowerCase(); const known = PRESETS[preset];