为保障生产环境的稳定性与安全性,企业应用开发与运维通常需要隔离开发、测试、预发布和生产等环境。LangStudio基于阿里云账号体系和PAI工作空间,提供两种环境隔离方案,并支持使用应用配置项简化跨环境的部署与配置管理,尤其适用于节点众多、结构复杂的工作流。
方案选择
LangStudio提供基于PAI工作空间和阿里云账号的两种环境隔离方案。您可以根据企业的安全合规要求、管理模式和成本考量选择最合适的方案。
对比维度 | PAI 工作空间隔离(单账号) | 阿里云账号隔离 (多账号) |
隔离方式 | 同一阿里云账号下,多个工作空间逻辑隔离。 | 多个阿里云账号,资源与权限完全隔离 |
适用场景 | 希望单一账号下管理多环境,降低跨账号操作复杂度 | 安全性和权限边界要求极高的企业环境 |
优势 |
|
|
前置条件 | 在同一账号下创建多个 PAI 工作空间 | 创建多个阿里云账号,在各账号中开通 PAI 服务并创建工作空间 |
推荐实践:
对于大多数企业,优先考虑工作空间隔离方案,管理简单,成本可控。
对于有严格安全合规要求的企业,选择账号隔离方案,实现资源与权限的完全隔离。
无论选择哪种方案,都建议使用应用配置项管理环境相关配置,降低跨环境迁移的复杂度。
工作流程
两种方案的工作流程基本相同,区别仅在于是否跨账号操作:
准备环境:
工作空间隔离:在同一阿里云账号下,为开发、测试、预发布和生产环境创建独立的工作空间。
账号隔离:在多个阿里云账号中分别创建 PAI 工作空间。
开发阶段:在开发环境的工作空间中,完成应用的构建、调试与验证。
导出应用:导出已完成的应用。
导入目标环境:将应用导入目标环境(如生产)的工作空间。
调整配置:根据目标环境的实际资源情况,更新应用中引用的资源配置(如 LLM 连接、知识库等)。关于应用配置项的详细使用方法,请参见使用应用配置项简化跨环境配置。
发布:完成配置后,在目标环境中发布服务。
使用应用配置项简化跨环境配置
无论是哪种隔离方案,当应用在不同环境间迁移时,其依赖的资源(如模型、连接、知识库)通常需要改变。为避免在工作流或代码中硬编码这些配置,推荐使用应用配置项简化跨环境配置,实现“一次配置、多处引用、灵活切换”。
工作流模式
如果您使用工作流模式开发应用,可以通过以下步骤使用应用配置项:
1. 创建应用配置项
在应用开发页面,选择设置 > 应用配置,创建所需的配置项键值对,例如 LLM 连接名、模型名称等。变量值设置为开发环境的实际资源名称。

2. 在工作流节点中引用配置项
以 LLM 节点为例:
在节点的模型设置中,选择引用变量。
在连接和模型下拉框中,选择对应的应用配置项。

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.yaml、config.prod.yaml),并在部署流程中自动加载对应配置。
2. 在代码中加载并使用配置
按需加载对应的配置文件,并在业务逻辑中解析和使用其中的参数。
3. 跨环境部署与配置切换
当应用从开发环境迁移到生产环境时,无需修改核心业务代码,只需指定目标环境的配置文件即可完成环境适配。