环境隔离开发

更新时间:
复制为 MD 格式

为保障生产环境的稳定性与安全性,企业应用开发与运维通常需要隔离开发、测试、预发布和生产等环境。LangStudio基于阿里云账号体系和PAI工作空间,提供两种环境隔离方案,并支持使用应用配置项简化跨环境的部署与配置管理,尤其适用于节点众多、结构复杂的工作流。

方案选择

LangStudio提供基于PAI工作空间和阿里云账号的两种环境隔离方案。您可以根据企业的安全合规要求、管理模式和成本考量选择最合适的方案。

对比维度

PAI 工作空间隔离(单账号)

阿里云账号隔离 (多账号)

隔离方式

同一阿里云账号下,多个工作空间逻辑隔离。

多个阿里云账号,资源与权限完全隔离

适用场景

希望单一账号下管理多环境,降低跨账号操作复杂度

安全性和权限边界要求极高的企业环境

优势

  • 账号管理简单

  • 应用迁移灵活

  • 成本统一管控

  • 资源与权限隔离彻底,安全性高

  • 开发运维人员权限管理简单

  • 符合企业安全合规要求

前置条件

在同一账号下创建多个 PAI 工作空间

创建多个阿里云账号,在各账号中开通 PAI 服务并创建工作空间

推荐实践

  • 对于大多数企业,优先考虑工作空间隔离方案,管理简单,成本可控。

  • 对于有严格安全合规要求的企业,选择账号隔离方案,实现资源与权限的完全隔离。

  • 无论选择哪种方案,都建议使用应用配置项管理环境相关配置,降低跨环境迁移的复杂度。

工作流程

两种方案的工作流程基本相同,区别仅在于是否跨账号操作:

  1. 准备环境

    • 工作空间隔离:在同一阿里云账号下,为开发、测试、预发布和生产环境创建独立的工作空间。

    • 账号隔离:在多个阿里云账号中分别创建 PAI 工作空间。

  2. 开发阶段:在开发环境的工作空间中,完成应用的构建、调试与验证。

  3. 导出应用:导出已完成的应用。

  4. 导入目标环境:将应用导入目标环境(如生产)的工作空间。

  5. 调整配置:根据目标环境的实际资源情况,更新应用中引用的资源配置(如 LLM 连接、知识库等)。关于应用配置项的详细使用方法,请参见使用应用配置项简化跨环境配置

  6. 发布:完成配置后,在目标环境中发布服务。

使用应用配置项简化跨环境配置

无论是哪种隔离方案,当应用在不同环境间迁移时,其依赖的资源(如模型、连接、知识库)通常需要改变。为避免在工作流或代码中硬编码这些配置,推荐使用应用配置项简化跨环境配置,实现“一次配置、多处引用、灵活切换”。

工作流模式

如果您使用工作流模式开发应用,可以通过以下步骤使用应用配置项:

1. 创建应用配置项

在应用开发页面,选择设置 > 应用配置,创建所需的配置项键值对,例如 LLM 连接名、模型名称等。变量值设置为开发环境的实际资源名称。

image

2. 在工作流节点中引用配置项

以 LLM 节点为例:

  1. 在节点的模型设置中,选择引用变量

  2. 连接模型下拉框中,选择对应的应用配置项。

image

3. 运行时自动解析

工作流执行时,系统会自动从当前环境的应用配置中读取配置项的实际值,并动态注入到节点中,完成资源调用。

4. 跨环境迁移

当您通过导出工作流和导入的方式将应用迁移到新环境(如生产环境)后,只需再次进入 设置 > 应用配置,将变量值修改为生产环境对应的资源即可,无需逐个修改工作流中节点。

代码模式

代码模式下,通常通过配置文件来管理环境依赖,并通过环境变量注入敏感信息,以遵循安全最佳实践。

1. 定义环境配置文件

在项目根目录下创建 config.yaml(或自定义名称)文件,集中管理当前环境所需的资源标识和敏感信息。

# config.yaml 示例
llm:
  provider: dashscope
  model_name: qwen-max
  api_key: {LLM_API_KEY}

knowledge_base:
  index_name: prod_kb_v2
  embedding_model: text-embedding-v2

最佳实践

  • 避免在配置文件中硬编码敏感信息(如密钥、密码)。

  • 推荐使用 "${ENV_VAR}" 形式引用环境变量,实际值由目标环境的安全机制注入。

  • 可为不同环境维护独立的配置文件(如 config.dev.yamlconfig.prod.yaml),并在部署流程中自动加载对应配置。

2. 在代码中加载并使用配置

按需加载对应的配置文件,并在业务逻辑中解析和使用其中的参数。

3. 跨环境部署与配置切换

当应用从开发环境迁移到生产环境时,无需修改核心业务代码,只需指定目标环境的配置文件即可完成环境适配。