基于RexUniNLU的Skill Creator开发:零代码构建AI技能平台
最近跟几个做电商和客服的朋友聊天,他们都在抱怨同一个问题:想用AI处理点业务数据,比如从用户评价里自动提取产品反馈,或者把客服对话自动分类,但一看到要写代码、调模型就头大。技术团队忙不过来,业务人员又搞不定,最后只能手动处理,效率低还容易出错。
这让我想起之前接触过的一个工具——RexUniNLU。它本身是个挺厉害的通用自然语言理解模型,能处理信息抽取、文本分类这些任务。但更让我感兴趣的是,能不能基于它做个“零代码”的平台,让不懂技术的人也能快速搭建自己的AI技能?比如,电商运营想自动分析商品评论里的“价格-质量-服务”三个维度的情感,他只需要在界面上点一点、拖一拖,就能生成一个可用的分析工具。
这就是今天想跟大家聊的“Skill Creator”开发思路。我们不写复杂的代码,而是利用RexUniNLU的能力,通过配置化的方式,让业务人员自己就能构建定制化的NLP应用。整个过程就像搭积木一样简单。
1. 为什么需要零代码AI技能平台?
先说说我观察到的几个痛点。
第一个是技术门槛高。现在很多AI模型能力很强,但要用起来,你得懂Python、知道怎么调API、明白模型参数是什么意思。这对业务人员来说太难了。他们只关心“能不能帮我自动处理这些文本”,而不是“这个模型用的什么架构”。
第二个是开发周期长。业务部门提个需求,比如“帮我们做个从合同里抽关键条款的工具”,技术团队评估、开发、测试,一圈下来可能一两周就过去了。业务等不起,很多时候需求就黄了。
第三个是灵活性差。今天想分析评论情感,明天想提取会议纪要里的待办事项,每个需求都得重新开发。如果有个平台,能让业务人员自己根据不同的文本和任务,快速配置出一个“技能”,那效率就完全不一样了。
RexUniNLU这类通用NLU模型,正好给了我们做这种平台的基础。它不用针对每个任务单独训练模型,通过“提示”(Schema)就能理解你要做什么,非常适合做成可配置的“技能模板”。
2. Skill Creator的核心设计思路
我们的目标很简单:做一个Web界面,用户在里面通过填空、选择的方式,定义一个“技能”。然后系统在后台,根据这个定义,自动组装成RexUniNLU能理解的查询,并提供一个API给用户调用。
整个平台可以分成几个关键部分:
2.1 技能模板库
这是给用户“打样”的。我们预先做好一些常见的技能模板,比如:
- 情感分析模板:输入一段评论,输出“正面”、“负面”或“中性”的情感标签。
- 实体抽取模板:输入一篇新闻,自动抽出里面的人名、地名、机构名。
- 关系抽取模板:输入一段文本,找出“谁在什么公司任职”这样的关系。
- 自定义分类模板:用户自己定义几个类别(比如“咨询产品”、“投诉物流”、“寻求售后”),让模型把输入的文本分到这些类别里。
用户可以直接使用这些模板,也可以基于模板修改,大大降低了起步难度。
2.2 可视化意图配置器
这是核心操作区。用户在这里定义他的“技能”具体要干什么。
举个例子,一个电商经理想分析评论。他不需要写代码,只需要在界面上:
- 给技能起个名字:“商品评论三维度分析”。
- 描述输入:“一段用户对商品的评论文字”。
- 定义输出结构(这就是RexUniNLU的Schema):
- 我想抽取出关于“价格”的评论片段,并判断其情感是
好评、中评还是差评。 - 我想抽取出关于“质量”的评论片段,并判断其情感。
- 我想抽取出关于“服务”的评论片段,并判断其情感。
- 我想抽取出关于“价格”的评论片段,并判断其情感是
- 提供几个例子(可选,但能提升效果):
- 输入:“价格有点贵,但质量确实好,客服回复也快。”
- 输出:{“价格”: {“片段”: “价格有点贵”, “情感”: “差评”}, “质量”: {“片段”: “质量确实好”, “情感”: “好评”}, “服务”: {“片段”: “客服回复也快”, “情感”: “好评”}}
这个配置器在后台,其实就是把用户友好的描述,翻译成RexUniNLU需要的、带有明确模式指示的查询格式。
2.3 一键测试与部署
配置好了不能光看,得立刻试试效果。平台会提供一个测试框,用户贴一段自己的文本进去,点“测试”,马上就能看到模型返回的结果。
如果效果满意,就可以“发布”这个技能。发布后,平台会生成一个唯一的API接口地址和密钥。用户就可以在自己的系统里(比如电商后台、CRM系统)调用这个API了,整个过程不需要关心服务器、模型加载这些技术细节。
2.4 技能管理与监控
用户可以在后台看到自己创建的所有技能,每个技能的调用次数、平均响应时间、最近是否有错误等信息。对于重要的技能,还可以设置一个“校验规则”,比如随机抽查1%的调用结果,人工判断一下对错,用来持续监控技能的准确率。
3. 从配置到API:后台如何工作?
用户在前台点点划划,后台其实在忙这几件事:
第一步,Schema转换。把用户定义的“价格-情感”、“质量-情感”这样的自然语言描述,转换成RexUniNLU模型能处理的正式Schema。比如,可能会转换成类似这样的结构:
schema = { "价格": { "抽取类型": "片段", "后续任务": { "任务类型": "分类", "选项": ["好评", "中评", "差评"] } }, "质量": { ... }, # 类似结构 "服务": { ... } # 类似结构 }第二步,模型调用封装。平台会维护一个预加载好的RexUniNLU模型服务。当API被调用时,后台接收用户输入的文本,结合上面转换好的Schema,调用模型管道(pipeline)进行推理。
# 简化的后台处理伪代码 from modelscope.pipelines import pipeline # 模型在服务启动时已加载,全局复用 nlp_pipeline = pipeline('rex-uninlu', model='damo/nlp_deberta_rex-uninlu_chinese-base') def skill_inference(user_input_text, skill_schema): """执行技能推理""" result = nlp_pipeline(input=user_input_text, schema=skill_schema) # 对原始结果进行后处理,使其更符合用户定义的输出格式 formatted_result = format_output(result, skill_schema) return formatted_result第三步,API暴露。使用像FastAPI这样的框架,为每个发布的技能动态创建一个端点。
from fastapi import FastAPI, HTTPException from pydantic import BaseModel app = FastAPI() class SkillRequest(BaseModel): text: str # 用户要分析的文本 # 其他可能的参数,如置信度阈值等 # 这个路由路径 /skill/{skill_id} 是动态生成的 @app.post("/skill/{skill_id}") async def run_skill(skill_id: str, request: SkillRequest): skill_config = get_skill_config_from_db(skill_id) # 从数据库获取该技能的配置 if not skill_config: raise HTTPException(status_code=404, detail="Skill not found") schema = skill_config['schema'] result = skill_inference(request.text, schema) return {"skill_id": skill_id, "result": result}第四步,并发与性能。这里需要注意,像之前社区反馈的,RexUniNLU模型在多线程调用时可能需要一些特殊处理。在平台化部署时,我们可以采用一些策略,比如为每个工作进程单独加载模型副本,或者使用队列来管理推理请求,避免直接的多线程冲突,确保平台的稳定性和并发处理能力。
4. 真实场景:电商评论分析技能搭建实录
光说思路可能有点虚,我带大家走一遍一个电商运营同学“小李”的实际操作。
小李的烦恼:他负责一款智能音箱的产品线,每天要看上百条用户评论,手动总结大家在价格、音质、智能程度和售后服务上的反馈,耗时耗力。
他的解决过程:
- 登录Skill Creator平台,点击“创建新技能”。
- 选择模板:他看到有一个“多维情感-实体抽取”模板比较接近,就以此为基础创建。
- 配置意图:
- 技能名:“智能音箱用户评论分析”。
- 输入描述:“用户购买智能音箱后的评价文本”。
- 输出定义:他删掉了模板里不相关的项,定义了四个维度:
价格:找出谈论价格的句子,并判断情感倾向(觉得值,有点贵,不讨论)。音质:找出谈论音质的句子,并判断情感倾向(好评,一般,差评)。智能水平:找出谈论智能功能(如唤醒、识别)的句子,并判断情感倾向(聪明,一般,迟钝)。售后服务:找出谈论售后、客服的句子,并判断情感倾向(满意,一般,不满意)。
- 提供示例:他输入了两条真实评论作为例子,并标注好期望的输出,帮助模型更好地理解他的意图。
- 测试:他输入一条新评论:“音质震撼,低音有力,这个价钱完全值了。就是有时候叫它名字反应慢半拍。” 点击测试。
- 查看结果:几秒钟后,平台返回:
小李一看,提取得很准,情感判断也符合直觉。{ "价格": {"片段": "这个价钱完全值了", "情感": "觉得值"}, "音质": {"片段": "音质震撼,低音有力", "情感": "好评"}, "智能水平": {"片段": "有时候叫它名字反应慢半拍", "情感": "迟钝"}, "售后服务": {"片段": null, "情感": "不讨论"} } - 发布:他点击发布,获得一个API端点:
https://api.skill-creator.com/run/abc123xyz。 - 集成:他把这个API地址和密钥交给公司的IT同事,IT同事很快就把这个功能接入了他们的电商后台系统。现在,所有新的用户评论都能自动分析,并生成可视化的报表给小李看。
小李从有一个想法,到获得一个可用的AI工具,全程没有写一行代码,只花了大概20分钟在页面上配置。这就是零代码AI技能平台带来的效率变革。
5. 总结
基于RexUniNLU开发Skill Creator这样的平台,其价值不在于技术的炫酷,而在于它真正把AI能力做成了“水电煤”一样的基础设施。业务人员可以按需取用,快速组合,解决自己眼前最紧迫的问题。
这种模式特别适合那些有大量文本处理需求,但技术资源又相对紧张的团队,比如电商、教育、内容审核、客服质检等领域。它降低了AI的应用门槛,加速了AI从“技术模型”到“业务工具”的转化过程。
当然,目前这还是一个初步的思路。在实际开发中,我们还需要考虑很多工程问题,比如技能配置的版本管理、模型效果下降的预警和迭代、平台本身的高可用性等等。但方向是清晰的:让AI变得更易用、更普惠。未来,也许每个业务人员都能拥有一个属于自己的“AI技能工具箱”,随时打造解决特定问题的智能小助手,那会是一个很有意思的场景。
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。