复制了创空间 https://modelscope.cn/studios/LaoLangAI/portrait_anime_stylization/summary 的项目后,在ModelScope中如何增加功能?
在ModelScope中增加功能,尤其是针对您复制的创空间项目(如portrait_anime_stylization
),可以通过以下步骤实现。这些步骤涵盖了从模型部署到服务调用的完整流程,并提供了扩展功能的方法。
在ModelScope中,每个创空间项目通常包含一个或多个模型及其相关配置。您需要先确认项目的以下关键信息: - MODEL_ID:模型的唯一标识符。 - TASK:模型对应的任务类型(例如图像风格迁移、文本生成等)。 - REVISION:模型的具体版本号(例如v1.0.0
)。
如果项目涉及非公开模型,还需要获取ACCESS_TOKEN,以便在后续步骤中使用。
根据需求,您可以通过以下两种方式为项目增加功能:
如果您希望快速扩展已有模型的功能,可以利用ModelScope提供的场景化部署能力: 1. 登录ModelScope控制台,进入模型部署页面。 2. 在场景化模型部署选项中,选择与当前项目相关的任务类型(例如图像处理、文本生成等)。 3. 配置关键参数,包括: - MODEL_ID:指定新增功能所需的模型ID。 - TASK:选择新增功能对应的任务类型。 - REVISION:指定模型版本。 4. 单击部署按钮,完成新增功能的部署。
如果您需要更灵活地扩展功能,可以选择自定义模型部署: 1. 选择模型: - 进入目标模型的详情页面,获取其MODEL_ID
、TASK
和REVISION
值。 - 如果模型为非公开模型,还需获取并配置ACCESS_TOKEN
。 2. 配置环境变量: - 将SDK访问令牌
配置到环境变量中,确保服务能够访问非公开模型。 3. 部署服务: - 使用ModelScope提供的API或CLI工具,手动部署新增功能的服务。 - 示例命令如下: bash arena serve custom \ -name=custom_service \ -version=v1 \ -gpus=1 \ -replicas=1 \ -restful-port=8000 \ -image=kube-ai-registry.cn-shanghai.cr.aliyuncs.com/kube-ai/quick-deploy-llm:v1 \ "MODEL_ID=<新功能模型ID> python3 server.py"
- 参数说明: - -name
:服务名称。 - -version
:服务版本。 - -gpus
:使用的GPU数量。 - -replicas
:服务副本数。 - -restful-port
:服务对外暴露的端口。 - -image
:镜像地址。 - MODEL_ID
:新增功能的模型ID。
部署完成后,您可以通过以下方式调用新增功能:
对于普通Pipeline模型(如图像风格迁移),可以使用以下代码示例:
import requests
import json
import base64
service_url = 'YOUR_SERVICE_URL'
token = 'YOUR_SERVICE_TOKEN'
# 示例:传入图片Base64编码
with open('input_image.jpg', 'rb') as img_file:
img_base64encoded = base64.b64encode(img_file.read())
request_data = json.dumps({
"input": {
"image": img_base64encoded.decode()
}
})
resp = requests.post(service_url, headers={"Authorization": token}, data=request_data)
print(resp.text) # 输出模型结果
注意:如果输入为图片URL,需确保服务具有公网访问权限。
v1.0.0
),不能使用master
分支。如果不再需要新增功能,可以通过以下命令删除相关服务:
arena serve del <服务名称>
通过上述步骤,您可以为复制的创空间项目增加新的功能,并确保其正常运行。如果有进一步的需求或问题,请随时联系技术支持团队。
ModelScope旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!欢迎加入技术交流群:微信公众号:魔搭ModelScope社区,钉钉群号:44837352