From c2cdb6dba512ecdb1f21110f3ac2ac675f8e679d Mon Sep 17 00:00:00 2001 From: ylzhangah <1194926515@qq.com> Date: Sat, 11 Oct 2025 17:40:55 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=83=A8=E7=BD=B2=E6=8C=87?= =?UTF-8?q?=E5=8D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...50\347\275\262\346\214\207\345\215\227.md" | 150 +++++++++++------- ...50\347\275\262\346\214\207\345\215\227.md" | 149 ++++++++++------- 2 files changed, 186 insertions(+), 113 deletions(-) diff --git "a/documents/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/\346\227\240\347\275\221\347\273\234\347\216\257\345\242\203\344\270\213\351\203\250\347\275\262\346\214\207\345\215\227.md" "b/documents/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/\346\227\240\347\275\221\347\273\234\347\216\257\345\242\203\344\270\213\351\203\250\347\275\262\346\214\207\345\215\227.md" index 4c3f504ef..9d6fb5b7c 100644 --- "a/documents/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/\346\227\240\347\275\221\347\273\234\347\216\257\345\242\203\344\270\213\351\203\250\347\275\262\346\214\207\345\215\227.md" +++ "b/documents/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/\346\227\240\347\275\221\347\273\234\347\216\257\345\242\203\344\270\213\351\203\250\347\275\262\346\214\207\345\215\227.md" @@ -102,9 +102,27 @@ scp /home/eulercopilot/images/* root@target-server:/home/eulercopilot/images/ - 需通过可访问外网的 Windows 环境下载后传输至离线环境 - 脚本下载仅支持在联网服务器操作 -### 2. 部署 openEuler Intelligence +#### **一键部署** -#### 一键部署 +一键自动部署模式主要适用于**没有预先部署大语言模型资源**的用户: + +1. **自动安装和配置所有必需组件**: + - 部署轻量级Kubernetes发行版k3s + - 安装包管理工具helm + - 部署Ollama模型服务框架 + - 下载并部署Deepseek大语言模型(deepseek-llm-7b-chat) + - 下载并部署Embedding模型(bge-m3) + - 安装数据库、Authhub认证服务和openEuler Intelligence应用 + +2. **支持多种硬件环境**: + - 可在纯CPU环境运行 + - 如有GPU资源会自动利用加速推理 + - 自动配置模型接口供openEuler Intelligence调用 + +3. **简化部署流程**: + - 无需手动配置模型端点 + - 自动设置所有依赖关系 + - 适合快速体验和测试环境 ```bash bash deploy.sh @@ -114,7 +132,7 @@ bash deploy.sh ============================== 主部署菜单 ============================== -0) 一键自动部署 +0) 一键自动部署 # 自动安装所有组件,包括Ollama和模型(推荐新手) 1) 手动分步部署 2) 重启服务 3) 卸载所有组件并清除数据 @@ -123,7 +141,67 @@ bash deploy.sh 请输入选项编号(0-3): 0 ``` -#### 手动分步部署 +#### 分步部署 + +分步部署模式主要适用于**已有部署好的大语言模型接口和embedding模型接口**的场景。使用此模式前,用户需要: + +1. **预先准备模型服务**: + - 确保大语言模型服务已部署并可访问 + - 确保embedding模型服务已部署并可访问 + - 获取各模型的API端点URL和认证密钥 + +2. **配置values.yaml文件**: + - 在部署前编辑values.yaml文件,预先填写已有的模型服务信息 + - 配置问答模型、函数调用模型和embedding模型的具体参数 + - 配置示例: + +```yaml +models: + # 用于问答的大语言模型;需要OpenAI兼容的API + answer: + # [必需] API端点URL(请根据API提供商文档确认是否包含"v1"后缀) + endpoint: https://$ip:$port/v1 + # [必需] API密钥;默认为空 + key: sk-123456 + # [必需] 模型名称 + name: qwen3-32b + # [必需] 模型最大上下文长度;推荐>=8192 + ctxLength: 8192 + # 模型最大输出长度,推荐>=2048 + maxTokens: 8192 + # 用于函数调用的模型;推荐使用特定的推理框架 + functionCall: + # 推理框架类型,默认为ollama + # 可用框架类型:["vllm", "sglang", "ollama", "openai"] + backend: openai + # [必需] 模型端点;请根据API提供商文档确认是否包含"v1"后缀 + # 留空则使用与问答模型相同的配置 + endpoint: https://$ip:$port/v1 + # API密钥;留空则使用与问答模型相同的配置 + key: sk-123456 + # 模型名称;留空则使用与问答模型相同的配置 + name: qwen3-32b + # 模型最大上下文长度;留空则使用与问答模型相同的配置 + ctxLength: 8192 + # 模型最大输出长度;留空则使用与问答模型相同的配置 + maxTokens: 8192 + # 用于数据嵌入的模型 + embedding: + # 推理框架类型,默认为openai + # [必需] Embedding API类型:["openai", "mindie"] + type: openai + # [必需] Embedding URL(需要包含"v1"后缀) + endpoint: https://$ip:$port/v1 + # [必需] Embedding模型API密钥 + key: sk-123456 + # [必需] Embedding模型名称 + name: BAAI/bge-m3 +``` + +3. **按需选择部署步骤**: + - 需跳过无需部署的步骤3、步骤4、步骤5; + - 只部署其余必要的应用和组件 + - 适合生产环境和已有基础设施的用户 ```bash bash deploy.sh @@ -133,8 +211,8 @@ bash deploy.sh ============================== 主部署菜单 ============================== -0) 一键自动部署 -1) 手动分步部署 +0) 一键自动部署 - 自动安装所有组件,包括Ollama和模型(推荐新手) +1) 手动分步部署 - 已有模型服务时使用,可自定义配置 2) 重启服务 3) 卸载所有组件并清除数据 4) 退出程序 @@ -148,9 +226,9 @@ bash deploy.sh ============================== 1) 执行环境检查脚本 2) 安装k3s和helm -3) 安装Ollama -4) 部署Deepseek模型 -5) 部署Embedding模型 +3) 安装Ollama - 如已有模型服务可跳过 +4) 部署Deepseek模型 - 如已有模型服务可跳过 +5) 部署Embedding模型 - 如已有模型服务可跳过 6) 安装数据库 7) 安装AuthHub 8) 安装openEuler Intelligence @@ -159,10 +237,11 @@ bash deploy.sh 请输入选项编号(1-9): ``` -**关键说明**: +**选择建议**: -1. 部署前需准备好所有资源 -2. 需输入 openEuler Intelligence 的访问IP(默认使用 127.0.0.l`) +- **新手用户或试用环境**:选择**一键自动部署** + +- **现有模型服务**:选择**手动分步部署**,并预先配置values.yaml文件 #### 重启服务 @@ -309,51 +388,6 @@ k3s ctr image import $image_tar vim /home/euler-copilot-framework/deploy/chart/euler_copilot/values.yaml ``` - 修改如下部分 - ```yaml - # 模型设置 - models: - # 用于问答的大模型;需要为OpenAI兼容接口 - answer: - # [必填] 接口URL(请根据 API 提供商文档确定是否需要带上“v1”后缀) - endpoint: http://$host:11434/v1 - # [必填] 接口API Key;默认置空 - key: sk-123456 - # [必填] 模型名称 - name: deepseek-llm-7b-chat - # [必填] 模型最大上下文数;建议>=8192 - ctxLength: 8192 - # 模型最大输出长度,建议>=2048 - maxTokens: 8192 - # 用于Function Call的模型;建议使用特定推理框架 - functionCall: - # 推理框架类型,默认为ollama - # 可用的框架类型:["vllm", "sglang", "ollama", "openai"] - backend: ollama - # 模型地址;根据 API 提供商文档确定是否需要带上“v1”后缀 - # 如果选择不填则与问答模型一致 - endpoint: http://$host:11434 - # API Key;不填则与问答模型一致 - key: - # 模型名称;不填则与问答模型一致 - name: - # 模型最大上下文数;不填则与问答模型一致 - ctxLength: 8192 - # 模型最大输出长度;不填则与问答模型一致 - maxTokens: 8192 - # 用于数据向量化(Embedding)的模型 - embedding: - # 推理框架类型,默认为openai - # [必填] Embedding接口类型:["openai", "mindie"] - type: openai - # [必填] Embedding URL(需要带上“v1”后缀) - endpoint: http://$host:11434/v1 - # [必填] Embedding 模型API Key - key: sk-123456 - # [必填] Embedding 模型名称 - name: bge-m3:latest - ``` - 5. 更新服务: ```bash @@ -476,7 +510,7 @@ mkcert example.com 最后,将生成的证书和私钥拷贝到 values.yaml 中, 并应用至 Kubernetes Secret. ```bash -vim /home/euler-copilot-framework_openeuler/deploy/chart_ssl/traefik-secret.yaml +vim /home/euler-copilot-framework_openeuler/deploy/common/chart_ssl/traefik-secret.yaml ``` ```bash diff --git "a/documents/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/\347\275\221\347\273\234\347\216\257\345\242\203\344\270\213\351\203\250\347\275\262\346\214\207\345\215\227.md" "b/documents/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/\347\275\221\347\273\234\347\216\257\345\242\203\344\270\213\351\203\250\347\275\262\346\214\207\345\215\227.md" index 621e94e20..98d74f18c 100644 --- "a/documents/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/\347\275\221\347\273\234\347\216\257\345\242\203\344\270\213\351\203\250\347\275\262\346\214\207\345\215\227.md" +++ "b/documents/user-guide/\351\203\250\347\275\262\346\214\207\345\215\227/\347\275\221\347\273\234\347\216\257\345\242\203\344\270\213\351\203\250\347\275\262\346\214\207\345\215\227.md" @@ -63,12 +63,31 @@ openEuler Intelligence 是一款智能问答工具,使用 openEuler Intelligen cd /home git clone https://gitee.com/openeuler/euler-copilot-framework.git -b release-0.10.0 cd euler-copilot-framework/deploy/scripts -chmod -R +x ./* ``` ### 2. 部署 openEuler Intelligence -#### 一键部署 +#### **一键部署** + +一键自动部署模式主要适用于**没有预先部署大语言模型资源**的用户: + +1. **自动安装和配置所有必需组件**: + - 部署轻量级Kubernetes发行版k3s + - 安装包管理工具helm + - 部署Ollama模型服务框架 + - 下载并部署Deepseek大语言模型(deepseek-llm-7b-chat) + - 下载并部署Embedding模型(bge-m3) + - 安装数据库、Authhub认证服务和openEuler Intelligence应用 + +2. **支持多种硬件环境**: + - 可在纯CPU环境运行 + - 如有GPU资源会自动利用加速推理 + - 自动配置模型接口供openEuler Intelligence调用 + +3. **简化部署流程**: + - 无需手动配置模型端点 + - 自动设置所有依赖关系 + - 适合快速体验和测试环境 ```bash bash deploy.sh @@ -78,7 +97,7 @@ bash deploy.sh ============================== 主部署菜单 ============================== -0) 一键自动部署 +0) 一键自动部署 # 自动安装所有组件,包括Ollama和模型(推荐新手) 1) 手动分步部署 2) 重启服务 3) 卸载所有组件并清除数据 @@ -89,6 +108,66 @@ bash deploy.sh #### 分步部署 +分步部署模式主要适用于**已有部署好的大语言模型接口和embedding模型接口**的场景。使用此模式前,用户需要: + +1. **预先准备模型服务**: + - 确保大语言模型服务已部署并可访问 + - 确保embedding模型服务已部署并可访问 + - 获取各模型的API端点URL和认证密钥 + +2. **配置values.yaml文件**: + - 在部署前编辑values.yaml文件,预先填写已有的模型服务信息 + - 配置问答模型、函数调用模型和embedding模型的具体参数 + - 配置示例: + +```yaml +models: + # 用于问答的大语言模型;需要OpenAI兼容的API + answer: + # [必需] API端点URL(请根据API提供商文档确认是否包含"v1"后缀) + endpoint: https://$ip:$port/v1 + # [必需] API密钥;默认为空 + key: sk-123456 + # [必需] 模型名称 + name: qwen3-32b + # [必需] 模型最大上下文长度;推荐>=8192 + ctxLength: 8192 + # 模型最大输出长度,推荐>=2048 + maxTokens: 8192 + # 用于函数调用的模型;推荐使用特定的推理框架 + functionCall: + # 推理框架类型,默认为ollama + # 可用框架类型:["vllm", "sglang", "ollama", "openai"] + backend: openai + # [必需] 模型端点;请根据API提供商文档确认是否包含"v1"后缀 + # 留空则使用与问答模型相同的配置 + endpoint: https://$ip:$port/v1 + # API密钥;留空则使用与问答模型相同的配置 + key: sk-123456 + # 模型名称;留空则使用与问答模型相同的配置 + name: qwen3-32b + # 模型最大上下文长度;留空则使用与问答模型相同的配置 + ctxLength: 8192 + # 模型最大输出长度;留空则使用与问答模型相同的配置 + maxTokens: 8192 + # 用于数据嵌入的模型 + embedding: + # 推理框架类型,默认为openai + # [必需] Embedding API类型:["openai", "mindie"] + type: openai + # [必需] Embedding URL(需要包含"v1"后缀) + endpoint: https://$ip:$port/v1 + # [必需] Embedding模型API密钥 + key: sk-123456 + # [必需] Embedding模型名称 + name: BAAI/bge-m3 +``` + +3. **按需选择部署步骤**: + - 需跳过无需部署的步骤3、步骤4、步骤5; + - 只部署其余必要的应用和组件 + - 适合生产环境和已有基础设施的用户 + ```bash bash deploy.sh ``` @@ -97,8 +176,8 @@ bash deploy.sh ============================== 主部署菜单 ============================== -0) 一键自动部署 -1) 手动分步部署 +0) 一键自动部署 - 自动安装所有组件,包括Ollama和模型(推荐新手) +1) 手动分步部署 - 已有模型服务时使用,可自定义配置 2) 重启服务 3) 卸载所有组件并清除数据 4) 退出程序 @@ -112,9 +191,9 @@ bash deploy.sh ============================== 1) 执行环境检查脚本 2) 安装k3s和helm -3) 安装Ollama -4) 部署Deepseek模型 -5) 部署Embedding模型 +3) 安装Ollama - 如已有模型服务可跳过 +4) 部署Deepseek模型 - 如已有模型服务可跳过 +5) 部署Embedding模型 - 如已有模型服务可跳过 6) 安装数据库 7) 安装AuthHub 8) 安装openEuler Intelligence @@ -123,6 +202,12 @@ bash deploy.sh 请输入选项编号(1-9): ``` +**选择建议**: + +- **新手用户或试用环境**:选择**一键自动部署** + +- **现有模型服务**:选择**手动分步部署**,并预先配置values.yaml文件 + #### 重启服务 ```bash @@ -266,52 +351,6 @@ k3s ctr image import $image_tar vim /home/euler-copilot-framework/deploy/chart/euler_copilot/values.yaml ``` - 修改如下部分 - - ```yaml - # 模型设置 - models: - # 用于问答的大模型;需要为OpenAI兼容接口 - answer: - # [必填] 接口URL(请根据 API 提供商文档确定是否需要带上“v1”后缀) - endpoint: http://$host:11434/v1 - # [必填] 接口API Key;默认置空 - key: sk-123456 - # [必填] 模型名称 - name: deepseek-llm-7b-chat - # [必填] 模型最大上下文数;建议>=8192 - ctxLength: 8192 - # 模型最大输出长度,建议>=2048 - maxTokens: 8192 - # 用于Function Call的模型;建议使用特定推理框架 - functionCall: - # 推理框架类型,默认为ollama - # 可用的框架类型:["vllm", "sglang", "ollama", "openai"] - backend: ollama - # 模型地址;根据 API 提供商文档确定是否需要带上“v1”后缀 - # 如果选择不填则与问答模型一致 - endpoint: http://$host:11434 - # API Key;不填则与问答模型一致 - key: - # 模型名称;不填则与问答模型一致 - name: - # 模型最大上下文数;不填则与问答模型一致 - ctxLength: 8192 - # 模型最大输出长度;不填则与问答模型一致 - maxTokens: 8192 - # 用于数据向量化(Embedding)的模型 - embedding: - # 推理框架类型,默认为openai - # [必填] Embedding接口类型:["openai", "mindie"] - type: openai - # [必填] Embedding URL(需要带上“v1”后缀) - endpoint: http://$host:11434/v1 - # [必填] Embedding 模型API Key - key: sk-123456 - # [必填] Embedding 模型名称 - name: bge-m3:latest - ``` - 5. 更新服务: ```bash @@ -434,7 +473,7 @@ mkcert example.com 最后,将生成的证书和私钥拷贝到 values.yaml 中, 并应用至 Kubernetes Secret. ```bash -vim /home/euler-copilot-framework_openeuler/deploy/chart_ssl/traefik-secret.yaml +vim /home/euler-copilot-framework_openeuler/deploy/common/chart_ssl/traefik-secret.yaml ``` ```bash -- Gitee