高代码应用是阿里云百炼平台为开发者提供的、基于完整 Python 项目结构部署 AI 后端服务的能力。与“低代码/无代码”拖拽式开发不同,高代码应用允许您使用代码编程的方式构建复杂AI服务,并使用单条命令即可部署到云上生产环境,支持自动化运维、可观测、日志服务、API网关等企业级能力。
调用接口后,即可在应用观测页面可以观测到 API 调用的详细信息。
代码中上报的信息可使用 AgentScope-AI 的 Tracing模块自定义。
准备工作
Python 开发环境要求
python >= 3.10
。授权或开通相关云服务依赖。
前往阿里云百炼-应用管理,点击高代码类型,并对相关云服务使用进行一键授权。
如果一键授权失败,请联系您的账号管理员或 IT 管理员获取相关授权。
确保
、
、
三个服务在“已授权”状态。
前往阿里云百炼-应用观测页面,授权开通应用观测功能。
前往阿里云 OSS 服务控制台,开通 OSS 服务,用于保存 Python 代码。
快速开始
步骤一:准备本地环境
为了能够将 Python 代码上传并部署到阿里云百炼,安装 AgentScope-AI 的相关依赖,用于向阿里云百炼上传代码包:
pip install agentscope-runtime==0.1.5b2
pip install "agentscope-runtime[deployment]==0.1.5b2"
步骤二:打包模板应用
阿里云百炼-应用管理,下载高代码应用的模板代码包并在本地解压。
根据模板工程中 README.md 的描述,配置和测试下载的模板。
构建模板工程的软件包,需要在项目根目录下(即 setup.py 文件所在的目录)执行打包命令。
python setup.py bdist_wheel
打包好的软件包存储在
dist/
目录下。
步骤三:部署模板
获取并配置以下环境变量(以 Linux 系统为例)
获取阿里云的 获取 AccessKey (AK 和 SK)用于上传软件包时的鉴权。
获取阿里云百炼的 Workspace ID,以
llm-
开头,用于指定存储高代码应用的百炼业务空间。将以上获取到的内容配置为环境变量:
export ALIBABA_CLOUD_ACCESS_KEY_ID=LTAI************ #替换为阿里云AccessKey(AK) export ALIBABA_CLOUD_ACCESS_KEY_SECRET=**************** #替换为阿里云SecretKey(SK) export MODELSTUDIO_WORKSPACE_ID=llm-**************** #替换为百炼的业务空间ID,该空间将部署高代码应用
使用
AgentScope-AI
上传构建好的.whl
软件包,并自动部署到阿里云百炼。--telemetry enable
用于打开可观测能力,并需要结合 AgenScope 的 Tracing模块进行应用开发。runtime-fc-deploy --deploy-name 我的第一个高代码应用 --whl-path <PATH_TO_YOUR_NEW_WHL_FILE> --telemetry enable
部署成功后会打印出 应用名、百炼业务空间、访问应用的控制台链接、应用 ID。
前往阿里云百炼-应用管理,等待应用发布。应用发布后将会根据部署时长,产生较少的费用。(<0.1元/小时)
步骤四:测试高代码应用
使用预先定义的默认接口测试代码工程是否部署成功。
也可以一键复制用于调用的 cURL 命令,该命令可用于命令行上访问到高代码应用。
步骤五:查看 API 调用信息
前往阿里云百炼-应用观测 页面,将自动展示收集到的相关信息。
仅使用 AgentScope-Ai 的 Tracing模块进行 AI 应用开发,才可自动上传调用数据。
发送大模型调用请求
应用部署成功并完成基础测试后,本节将指导您如何为应用配置环境变量,并调用其与大模型交互的接口。
为了让高代码应用与百炼 API 正常进行交互,需要为部署环境添加阿里云百炼的 API KEY。
点击修改按钮。
将
"DASHSCOPE_API_KEY": "sk-****************"
添加到环境变量 JSON 对象中,并点击右下角的保存。请将
sk-****************
替换为阿里云百炼的真实 API Key。配置 input 为
{"message": "介绍一下云栖大会"}
,向/chat
接口发送 POST 请求,与大模型进行交互。
更新已发布的高代码应用
当高代码应用需要更新时,可以使用 AgentScope-AI 的更新命令重新上传.whl
软件包。软件包上传成功后,高代码应用将自动更新并重新部署运行。
前往阿里云百炼-应用管理,复制应用 ID。
在本地使用以下命令,上传更新的本地
.whl
软件包。runtime-fc-deploy --update <HIGH_CODE_APP_ID> --whl-path <PATH_TO_YOUR_NEW_WHL_FILE>
更新成功后显示:
通过 API 网关正式发布高代码应用
如果需要在生产环境部署
应用,或者希望使用独立域名
的 API 网关建议开启应用网关功能。
在阿里云百炼-应用管理的详情页面中,点击应用网关,根据控制台引导,前往阿里云的 API 网关页面,根据需求创建云原生API网关。(将会产生一定量的 API 网关使用费用,具体价格表请参考:云原生 API 网关计费概述)
创建 云原生API网关完成后,选择创建的实例和路由,点击确认。
如果应用停止部署,API 网关需要重新绑定。
新的 API 路由生效后也能正常访问高代码应用。
推荐开启
Token 鉴权
,并通过添加“鉴权Token”,保证生产用 API 网关调用时需要身份验证。在生产环境中使用应用:推荐打开测试域名的“禁止公网访问”开关,测试用 API 网关将禁用(不再能够通过公网访问)。
常见问题
上传失败了如何排查?
请检查阿里云的 AK/SK 与 阿里云百炼的 Workspace ID 是否属于同一个账号。
请检查各项准备工作项均已满足或开通。
如果报错 OSS 相关问题,例如:
请检查是否拥有
AliyunOSSFullAccess
权限,以及是否开通了 OSS 服务。
控制台显示部署失败可能是什么原因?
Python 后端程序的
/health
接口无法调用,导致百炼认为程序启动失败。Python 后端程序的入口文件一定是
main.py
。