
OneUptime LLM Providers 配置指南为自建监控平台接入 AI 大模型能力【免费下载链接】oneuptimeComplete open-source monitoring and observability platform.项目地址: https://gitcode.com/GitHub_Trending/on/oneuptime本指南围绕 OneUptime 的LLM Provider大语言模型提供商功能展开讲解如何在 OneUptime 中接入 OpenAI、Anthropic、Ollama、vLLM 等各类大模型从而驱动自主事件调查、事件备注、告警描述、维护通知、事后复盘与代码改进等 AI 能力。读完本文你将掌握两条完整的配置路径自托管实例通过GLOBAL_LLM_PROVIDER_*环境变量实现零配置全局接入以及在 Dashboard 中为单个项目创建自定义 LLM Provider 的详细步骤与最佳实践。LLM Provider 在 OneUptime 中扮演什么角色LLM Provider 是 OneUptime AI 能力的模型底座。在 OneUptime 中所有 AI 驱动的功能都依赖一个已配置的 LLM Provider 来执行推理任务。根据官方文档LLM Provider 主要支撑以下工作流自主调查Autonomous Investigations自动调查新发生的事件与告警并将带引用来源的根因分析root cause analysis发布到事件时间线参见 AI SRE事件备注Incident Notes自动生成详细的事件备注与状态更新告警备注Alert Notes生成有意义的告警描述与上下文计划维护备注Scheduled Maintenance Notes自动生成维护事件的说明文本事件事后复盘Incident Postmortems自动起草完整的事件复盘报告代码改进Code Improvements当你将代码仓库连接到 OneUptime 后OneUptime 会使用你的 LLM Provider 分析遥测数据日志、链路、指标、异常并给出代码改进建议。从数据模型看每个 LLM Provider 在数据库中对应一张LlmProvider表其 核心字段 包括名称name、描述description、提供商类型llmType、API KeyapiKey、模型名modelName、Base URLbaseUrl、附加参数additionalParams、所属项目projectId、是否为全局 LLMisGlobalLlm以及是否为项目默认isDefault等。两种使用场景SaaS 与自托管OneUptime SaaS 用户如果你使用的是OneUptime SaaS云端托管版默认情况下可直接使用Global LLM Provider全局 LLM Provider无需任何额外配置——该全局 Provider 已预配置好开箱即用支撑全部 AI 功能。如果你希望使用自己的 API Key 或指定特定的模型供应商也可以按照本文后面的说明配置自定义的 LLM Provider。自托管通过环境变量实现零配置全局接入在自托管实例上最快让所有项目一次性启用 AI 功能的方式是在 OneUptime 服务器上设置GLOBAL_LLM_PROVIDER_*环境变量——Docker Compose 部署时写入config.envHelm 部署时通过 Helm values 传入。启动时OneUptime 会根据这些变量注册并持续同步一个 Global LLM Provider无需在每个项目下逐个配置。当某个项目没有自己的 Provider 时AI 修复任务AI fix tasks也会默认使用这个全局 Provider。相关环境变量说明如下变量说明GLOBAL_LLM_PROVIDER_TYPE启用全局 Provider 的必填开关。可选值OpenAI、AzureOpenAI、Anthropic、Groq、Mistral、Ollama、OpenAICompatibleGLOBAL_LLM_PROVIDER_API_KEYAPI Key。OpenAI、Azure OpenAI、Anthropic、Groq、Mistral 必填Ollama 或无鉴权的 OpenAI 兼容服务器无需填写GLOBAL_LLM_PROVIDER_BASE_URLAPI 端点地址。Azure OpenAI、Ollama、OpenAI 兼容服务器必填GLOBAL_LLM_PROVIDER_MODEL_NAME要使用的模型名OpenAI 兼容服务器必填其他类型建议填写GLOBAL_LLM_PROVIDER_NAME可选。在 Dashboard 中显示的友好名称环境变量中还额外支持GLOBAL_LLM_PROVIDER_DESCRIPTIONProvider 的展示描述详见 config.example.env。示例接入本地 OllamaGLOBAL_LLM_PROVIDER_TYPEOllama GLOBAL_LLM_PROVIDER_BASE_URLhttp://your-ollama-host:11434 GLOBAL_LLM_PROVIDER_MODEL_NAMEllama3.1 # Ollama 无需 API Key示例接入 OpenAIGLOBAL_LLM_PROVIDER_TYPEOpenAI GLOBAL_LLM_PROVIDER_API_KEYsk-xxxxxxxxxxxxxxxxxxxx GLOBAL_LLM_PROVIDER_MODEL_NAMEgpt-5.1这种同步是**声明式declarative**的修改环境变量后下次重启即会更新该 Provider取消设置GLOBAL_LLM_PROVIDER_TYPE则会移除它。管理员在 Admin Dashboard 中手动创建的全局 Provider 永远不会被此机制触碰。此外项目仍然可以在Project Settings AI LLM Providers中添加自己的 Provider——项目自有 Provider 永远优先于全局 Provider。源码视角环境变量是如何工作的这套零配置机制在代码中由启动迁移 SeedGlobalLlmProviderFromEnv.ts 实现。每次 Worker 启动时该迁移会读取GLOBAL_LLM_PROVIDER_TYPE若该变量为空则删除如果存在此前由环境变量种子化出的 Provider 行并返回若变量值不在LlmType枚举OpenAI、AzureOpenAI、Anthropic、Groq、Mistral、Ollama、OpenAICompatible见 LlmType.ts内则在启动日志中报错并跳过校验各类型所需的字段是否齐全——例如非 Ollama/OpenAICompatible 类型必须有 API KeyAzureOpenAI/Ollama/OpenAICompatible 必须有 Base URLOpenAICompatible 还必须指定 Model Name——缺失时打印启动告警AI requests will fail until it is使用固定的知名 ID00000000-0000-0000-0000-000000000001创建或更新种子 Provider 行并显式设置isGlobalLlm true、isDefault false从而保证只影响这一条由环境变量管理的记录不影响管理员在 Admin Dashboard 中手动创建的全局 Provider若数据与现有行完全一致则跳过写入API Key 加密带盐避免每次启动都重写该行。这也解释了文档中全局 Provider 由环境变量声明式管理、手动创建的全局 Provider 不受影响的承诺为何成立。支持的 Provider 一览OneUptime 目前支持以下 LLM ProviderProvider说明需要 API Key需要 Base URLOpenAIGPT-5.1 及其他 OpenAI 模型是否使用默认地址Azure OpenAI托管在 Azure 部署上的 OpenAI 模型是是AnthropicClaude Sonnet 5、Claude Opus 5、Claude Haiku 4.5 及其他 Claude 模型是否使用默认地址Groq面向 Llama、Mixtral 等开放模型的快速推理服务是否使用默认地址MistralMistral 托管的模型是否使用默认地址Ollama自托管开源模型如 Llama 3.1、Mistral、Qwen 等否是OpenAI Compatible任何兼容 OpenAI API 的服务器vLLM、LocalAI、LM Studio 等否可选是从源码看这 7 种类型与 LlmType 枚举 一一对应其中OpenAICompatible专门针对那些遵循 OpenAI/chat/completions协议、但通常自托管且无需 API Key 的通用服务器vLLM、LocalAI、LM Studio、text-generation-webui 等。在 Dashboard 中创建 LLM Provider第一步进入 LLM Provider 设置页登录 OneUptime Dashboard进入Project Settings AI LLM Providers点击Create LLM Provider添加新的 Provider。第二步填写配置字段需要填写以下字段Name该 LLM 配置的友好名称例如 Production OpenAI、Local OllamaDescription可选帮助辨识该 Provider 用途的描述LLM Provider选择 Provider 类型OpenAI、Azure OpenAI、Anthropic、Groq、Mistral、Ollama 或 OpenAI CompatibleAPI Key你的 API KeyOpenAI、Azure OpenAI、Anthropic、Groq、Mistral 必填Ollama 与 OpenAI 兼容服务器可选Model Name要使用的具体模型如gpt-5.1、claude-sonnet-5、llama3.1Base URL可选自定义 API 端点地址Azure OpenAI、Ollama、OpenAI Compatible 必填其他类型可选。从 LlmProvider 模型 可以看到这些字段的底层实现细节apiKey字段带有encrypted: true标记即API Key 在数据库中加密存储modelName、baseUrl字段长度受限ShortText / ShortURL 列类型每个 Provider 记录projectId——为空的记录即为全局 LLMisGlobalLlm标记additionalParams是可选 JSON 对象会被最后合并并直接透传给 Provider API可用于覆盖默认参数isDefault标记控制是否为项目默认 Provider。在 LlmProviderService 的onBeforeCreate/onBeforeUpdate钩子中新创建的 Provider 若未显式指定默认isDefault true同时同项目内其他isDefault true的 Provider 会被自动取消默认保证一个项目只有一个默认 Provider。此外该表还记录了costPerMillionTokensInUSDCents每百万 token 的成本以美分计用于使用全局 LLM Provider 时的计费统计。Provider 专属配置详解OpenAI在 OpenAI Platform 获取 API Key选择OpenAI作为 LLM Provider填入你的 API Key选择模型名gpt-5.1推荐默认工具调用tool-calling能力强适合复杂调查gpt-5.1-mini更快、更具性价比。配置示例Name: Production OpenAI LLM Provider: OpenAI API Key: sk-xxxxxxxxxxxxxxxxxxxx Model Name: gpt-5.1Anthropic在 Anthropic Console 获取 API Key选择Anthropic作为 LLM Provider填入你的 API Key选择模型名claude-sonnet-5推荐默认智能、速度与成本的平衡最佳claude-opus-5能力最强的模型用于最困难的调查claude-haiku-4-5最快、最具性价比。配置示例Name: Production Anthropic LLM Provider: Anthropic API Key: sk-ant-xxxxxxxxxxxxxxxxxxxx Model Name: claude-sonnet-5Ollama自托管Ollama 允许你在本地或自有基础设施上运行开源 LLM。从 ollama.ai 安装 Ollama拉取目标模型ollama pull llama3.1确保 Ollama 正在运行且可访问选择Ollama作为 LLM Provider填入 Base URL例如http://localhost:11434填入你拉取的模型名。配置示例Name: Local Ollama LLM Provider: Ollama Base URL: http://localhost:11434 Model Name: llama3.1常用 Ollama 模型llama3.1Meta 的 Llama 3.1 模型是支持工具调用tool-calling的最早 Llama 版本llama3.3Meta 的 Llama 3.3 模型qwen2.5阿里 Qwen 2.5 模型mistral-nemoMistral AI 的 Nemo 模型。注意OneUptime 的 AI 功能是**智能体式agentic**的高度依赖工具调用。请使用llama3.1或更新的版本或其他支持工具调用的模型。小模型或不支持工具调用的模型如llama2、初版llama3会产生糟糕的结果它们无法查询你的监控器、事件或遥测数据导致调查结果为空或产生幻觉。OpenAI CompatiblevLLM、LocalAI、LM Studio 等对于任何实现了 OpenAI/chat/completionsAPI 但并非 OpenAI 本身的服务器例如 vLLM、LocalAI、LM Studio 或 text-generation-webui请使用OpenAI CompatibleProvider。这类服务通常自托管在自有 URL 下并且常常无需鉴权。启动你的 OpenAI 兼容服务器记下其 Base URL通常以/v1结尾选择OpenAI Compatible作为 LLM Provider填入Base URL必填例如http://your-server:8000/v1填入Model Name必填——必须与服务器暴露的模型名一致仅当服务器要求鉴权时才填API Key无鉴权服务器留空即可。配置示例无鉴权 vLLMName: Self-Hosted vLLM LLM Provider: OpenAI Compatible Base URL: http://vllm.internal:8000/v1 Model Name: meta-llama/Llama-3.1-8B-Instruct API Key: (leave blank)提示保存后可使用 Provider 上的Test按钮验证连接、模型名和 Base URL 是否正确。在 KubernetesHelm中自托管 vLLM如果你使用 Helm chart 自托管 OneUptime可以在集群内运行 vLLM——一个 OpenAI 兼容的推理服务器——在你自己的 GPU 上提供本地模型服务数据完全不出基础设施。在 Helm values 中启用它需要 NVIDIA GPU 节点vllm: enabled: true model: Qwen/Qwen2.5-1.5B-Instruct执行helm upgrade等待 vLLM Pod 进入 Ready 状态首次启动会下载模型完成——vLLM 会在启动时自动注册为 Global LLM Providervllm.globalProvider.enabled默认true因此所有项目的 AI 功能包括 AI 修复任务都可直接使用。无论 Cloud 还是自托管当项目没有自己的 Provider 时Agent 修复任务都会使用全局 Provider在 Cloud 上该用量按 AI token 计量收费。项目自有 Provider 始终优先。如果关闭了自动注册vllm.globalProvider.enabled: false则需要手动创建 Provider选择OpenAI Compatible作为 LLM ProvidervLLM 使用 OpenAI API 协议填入集群内 Base URLhttp://release-vllm.namespace.svc.cluster.local:8000/v1填入 Model Name完整的 HuggingFace 模型 ID或你设置的vllm.servedModelName仅当设置了vllm.apiKey时填 API Key无鉴权 vLLM 留空。配置示例Name: In-Cluster vLLM LLM Provider: OpenAI Compatible Base URL: http://oneuptime-vllm.default.svc.cluster.local:8000/v1 Model Name: Qwen/Qwen2.5-1.5B-Instruct API Key: (leave blank unless vllm.apiKey is set)Helm values 中的 vLLM 细节在 HelmChart/Public/oneuptime/values.yaml 中可以找到 vLLM 相关的完整配置项以下是几个关键点默认enabled: false启用前提是集群中安装了 NVIDIA GPU 设备插件或 GPU Operatorimage.repository: vllm/vllm-openai默认镜像 tag 为v0.24.0镜像约 10GB首次拉取可能需要数分钟默认模型为Qwen/Qwen2.5-1.5B-Instruct小体积、Apache-2.0 许可、非 gated 模型无需 HuggingFace tokenservedModelName可设置模型别名--served-model-name留空时 OneUptime 表单中的 Model Name 必须填完整的 HuggingFace 模型 IDtoolCalling.enabled默认true且注入--enable-auto-tool-choice与--tool-call-parserparser默认hermes。必须开启工具调用否则 OneUptime 的 Ask AI 与 AI Agent 功能基于 OpenAI 风格的工具调用驱动模型每次请求都会以auto tool choice requires --enable-auto-tool-choice...报错切换模型族时需同步调整 parser如 Llama 用llama3_json/pythonicMistral 用mistralapiKey为空时服务器无鉴权仅集群内 ClusterIP设置后/v1/*需要Authorization: Bearer keyglobalProvider.name默认为OneUptime AIglobalProvider.description默认为 Investigate, analyze and fix with OneUptime AI.persistence.size默认 50Gi建议约为模型权重的 23 倍修改大小/存储类/开关后需要重建 StatefulSetvolumeClaimTemplates 不可变。使用自定义 Base URL对于企业部署或使用代理服务的情况可以指定自定义 Base URLAzure OpenAI使用你的 Azure 端点 URLOpenAI 兼容 API任何遵循 OpenAI API 规范的 API私有 Ollama 实例你的内部 Ollama 服务器 URL。项目 Provider 与全局 Provider 的优先级规则理解 OneUptime 的 Provider 解析顺序有助于排障。从 LlmProviderService 的源码可以看到以下规则getLLMProviderForProject先查询该项目的isDefault trueProvider若不存在则回退到projectId为空且isGlobalLlm true的全局 ProvidergetProjectOwnedLlmProvider只解析项目自有的 Provider优先默认 Provider其次按创建时间最早的绝不回退到全局getLlmProviderForMeteredAgentPathAI 修复任务的计费路径——项目自有 Provider 优先项目没有时包括 Cloud回退到共享全局 Provider其用量按计量 AI token 计费isProviderUsableBy全局 Provider 对所有项目可用项目自有 Provider 仅对所属项目可用。聊天、Runbook 等所有接受llmProviderId的入口都统一经过这一谓词校验防止出现某个入口接受的 Provider 被另一个入口拒绝的漂移getSelectableProvidersForProject聊天 Provider 切换器展示项目自有 全局两类 Provider且绝不返回apiKey字段仅供选择器 UI 使用。在 CodeFixReadiness 中还能看到 AI 修复任务的就绪检查逻辑它解析出最终 Provider 后会根据其作用域给出三种提示——项目自有 ProviderTasks run on your API key and consume no AI credits、有计费的全局 Provider按 AI 余额计费、无计费全局 Provider实例内所有项目共享。当全局 Provider 有计费且项目 AI 余额为空时就绪检查会直接给出充值提示。最佳实践使用描述性名称清晰命名你的 Provider如 Production OpenAI、Development Ollama保护好 API KeyAPI Key 在数据库中加密存储但应避免在团队间随意分享测试配置配置完成后务必验证 Provider 能配合 AI 功能正常工作可用设置页的 Test 按钮监控用量跟踪 API 使用量以控制成本。故障排查连接问题OpenAI / Anthropic确认 API Key 有效且账户有足够余额Ollama确保 Ollama 服务器正在运行且 Base URL 正确OpenAI Compatible确保 Base URL 以/v1结尾或与你的服务器匹配Model Name 与服务器暴露的模型一致且仅当服务器要求时才设置 API Key防火墙检查网络是否允许到 Provider API 的出站连接。模型未找到Model Not Found确认模型名拼写正确对于 Ollama确认已用ollama pull model-name拉取模型检查模型在你所在区域是否可用部分模型存在区域限制。从环境变量到 AI 能力的完整链路回顾整条链路自托管时config.envDocker Compose或 Helm values 中的GLOBAL_LLM_PROVIDER_*变量在 Worker 启动时由 SeedGlobalLlmProviderFromEnv 声明式同步为一条isGlobalLlm true的数据库记录各项目未配置自有 Provider 时服务层 LlmProviderService 按项目默认 → 全局的顺序解析出可用 Provider随后 AI 调查、AI 修复、Ask AI 等上游功能统一通过它发起模型调用并将每次调用记入LlmLog含isGlobalProvider、totalTokens等字段用于计量与计费见 AIService.ts。这套设计让自托管实例只需几行环境变量即可为全部项目启用 AI 能力同时保留了按项目精细控制的灵活性。【免费下载链接】oneuptimeComplete open-source monitoring and observability platform.项目地址: https://gitcode.com/GitHub_Trending/on/oneuptime创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考