影刀RPA进阶教程_RPA与AI大模型融合的实战应用
影刀RPA进阶教程:RPA与AI大模型融合的实战应用——让自动化拥有"大脑"
RPA擅长"操作",AI大模型擅长"理解"。
把两者结合起来,自动化的能力边界会大幅扩展——以前只能做固定规则的操作,现在可以处理非结构化信息、做智能判断、甚至自动决策。
这篇文章不讲概念,只讲实际怎么在影刀里把大模型用起来。
一、RPA + AI 解决的三类问题
| 场景 | RPA 单独能做吗 | 加上 AI 后 |
|---|---|---|
| 商品评论情感分析 | ❌ | 输入评论文本,输出正面/负面/中性 |
| 网页内容智能分类 | ❌ | 标题+描述丢给大模型,返回分类标签 |
| 异常数据自动判断 | ❌ | 采集数据→大模型判断是否符合预期→分流处理 |
| 智能客服回复草稿 | ❌ | 把用户问题丢给大模型,生成回复草稿 |
| 图片内容识别 | ❌ | 截图传给大模型,返回图片里有什么 |
RPA 负责"拿数据",AI 负责"理解数据",RPA 再根据 AI 的结果执行操作——这个三角循环是核心模式。
二、影刀里调用大模型的三种方式
方式1:Python 代码指令直接调 API
这是最灵活的方式。在影刀里拖入"Python代码指令",直接写 requests 调大模型 API。
# 调用 DeepSeek / 豆包 / 通义千问 API 做文本分类importrequestsimportjson API_KEY="你的API密钥"# 建议存为全局变量API_URL="https://api.deepseek.com/v1/chat/completions"defclassify_product(title,description):"""用大模型判断商品类目"""prompt=f""" 请根据以下商品信息判断属于哪个类目。 可选类目:服饰、数码、家居、食品、美妆、母婴、其他 商品标题:{title}商品描述:{description}只回复类目名称,不要解释。 """headers={"Authorization":f"Bearer{API_KEY}","Content-Type":"application/json"}payload={"model":"deepseek-chat","messages":[{"role":"user","content":prompt}],"temperature":0.1,# 分类场景用低温,减少随机性"max_tokens":10}resp=requests.post(API_URL,json=payload,headers=headers,timeout=30)resp.raise_for_status()result=resp.json()category=result["choices"][0]["message"]["content"].strip()returncategory# 调用示例类目=classify_product("夏季薄款冰丝T恤","男士圆领纯色透气T恤")# 返回:"服饰"关键参数:
temperature=0.1→ 分类/提取场景用低温,减少随机性temperature=0.7→ 创意写作/回复生成场景用中温max_tokens→ 根据回复长度合理设置,别浪费
方式2:影刀魔法指令 3.0
魔法指令 3.0 已经内置了 AI 理解能力。你直接在指令面板搜索"AI"相关指令,但功能比较固定(主要是文本总结、翻译等)。
拼多多店群自动化报活动上架!
适合简单场景,复杂逻辑还是走 Python 直接调 API。
方式3:HTTP 请求指令直接调 API
不想写代码的话,可以用影刀的"HTTP请求"指令调大模型接口。
步骤:
- 拖入"HTTP请求",方法选 POST
- URL 填大模型 API 地址
- Headers 里加
Content-Type: application/json和Authorization: Bearer xxxx - Body 里写 JSON:
{"model":"deepseek-chat","messages":[{"role":"user","content":"帮我判断这段评论是好评还是差评:[提取的评论文本]"}],"temperature":0.1}- 解析返回的 JSON,提取
choices[0].message.content
灵活度不如 Python,但可以纯影刀指令完成。
三、实战案例:商品评论自动分类
这是一个完整的 RPA + AI 流程:
打开电商后台 → 采集今日评论列表 → 逐条提交大模型判断情感 → 将结果写入Excel → 负面评论自动截屏并发送企业微信通知核心技术实现
# 情感分析 + 分级处理importrequestsimportjson API_KEY=global_vars["deepseek_key"]# 从影刀全局变量获取defanalyze_sentiment(comment_text):"""返回 '正面' / '中性' / '负面'"""prompt=f""" 判断以下电商评论的情感倾向,只回复"正面""中性""负面"中的一个。 好评标准:有正面评价、推荐、满意等表达。 差评标准:有抱怨、不满、质量问题等表达。 评论内容:{comment_text}"""headers={"Authorization":f"Bearer{API_KEY}","Content-Type":"application/json"}payload={"model":"deepseek-chat","messages":[{"role":"user","content":prompt}],"temperature":0.1,"max_tokens":5}try:resp=requests.post(API_URL,json=payload,headers=headers,timeout=15)resp.raise_for_status()result=resp.json()["choices"][0]["message"]["content"].strip()# 归一化输出if"正面"inresult:return"正面"elif"负面"inresult:return"负面"else:return"中性"exceptExceptionase:returnf"分析失败:{str(e)[:20]}"重点:
- prompt 要精确约束输出格式(只回复一个词)
- 结果做归一化处理(大模型偶尔会多说几个字)
- 超时设 15 秒,大模型有时候响应慢
- 异常兜底:返回失败信息而不是中断流程
触发通知的过滤逻辑
# 只有负面评论才触发通知如果 情感=="负面":截图网页("当前评论区域")->截图路径 发送企业微信通知(webhook_url,f"⚠️ 发现负面评论\n内容:{评论[:50]}...\n时间:{当前时间}")四、RPA + AI 的成本控制
大模型 API 按 token 收费,无脑调用很烧钱。几个省钱技巧:
1. 批量处理
不要把 100 条评论逐条调 API,打包成一个 prompt。
# 批量分析(一次调API处理多条)comments_batch="\n---\n".join([f"{i+1}.{c}"fori,cinenumerate(评论列表)])prompt=f"""分析以下每条评论的情感,用编号+标签格式回复,例如: 1. 正面 2. 负面 3. {comments_batch}"""单次调用可以处理 20-50 条,API 成本降为原来的 1/20。
2. 规则预筛选
先用简单规则(关键词匹配)筛掉明显的,剩下的才送大模型。
defpre_filter(text):"""规则预筛选,明显的不用调大模型"""好评词=["好评","满意","不错","推荐","赞","好"]差评词=["差评","垃圾","后悔","退","烂","坑"]good=sum(1forwin好评词ifwintext)bad=sum(1forwin差评词ifwintext)ifgood>=2andbad==0:return"正面"ifbad>=2andgood==0:return"负面"return"待分析"# 这些才送大模型实测规则预筛能过滤掉 60% 的评论,剩下 40% 调 API。
3. 缓存结果
重复的文本不重复调 API。
cache={}# 跨循环可以用全局变量存defanalyze_with_cache(text):iftextincache:returncache[text]result=analyze_sentiment(text)cache[text]=resultreturnresultTEMU店群矩阵自动化运营核价报活动
五、对接不同大模型的关键差异
| 模型 | API 地址 | 特色 |
|---|---|---|
| DeepSeek | api.deepseek.com | 便宜、中文好、响应快 |
| 豆包 | ark.cn-beijing.volces.com | 字节系,和飞书生态联动好 |
| 通义千问 | dashscope.aliyuncs.com | 阿里系,电商场景有优势 |
| Kimi | api.moonshot.cn | 长文本处理能力强 |
一个通用的调用封装:
importrequestsdefcall_llm(prompt,model="deepseek",system_prompt=""):"""统一的大模型调用封装"""configs={"deepseek":{"url":"https://api.deepseek.com/v1/chat/completions","key":global_vars.get("deepseek_key",""),"model_name":"deepseek-chat"},"doubao":{"url":"https://ark.cn-beijing.volces.com/api/v3/chat/completions","key":global_vars.get("doubao_key",""),"model_name":"doubao-pro-32k"}}cfg=configs.get(model)ifnotcfgornotcfg["key"]:raiseValueError(f"模型{model}未配置或缺少密钥")messages=[]ifsystem_prompt:messages.append({"role":"system","content":system_prompt})messages.append({"role":"user","content":prompt})headers={"Authorization":f"Bearer{cfg['key']}","Content-Type":"application/json"}resp=requests.post(cfg["url"],json={"model":cfg["model_name"],"messages":messages,"temperature":0.1},headers=headers,timeout=30)resp.raise_for_status()returnresp.json()["choices"][0]["message"]["content"]后续换模型只改model参数,不用到处改代码。
六、常见坑
坑1:大模型偶尔不按格式回复
prompt 里说了"只回复正面/负面/中性",结果它回"经过分析,这个评论是正面的"。所以必须做归一化处理,用"正面" in result而不是result == "正面"。
坑2:API 超时
大模型有时候响应要 10 秒以上。Python 里一定设timeout,超时后做重试或降级处理(标记为"分析失败",不中断流程)。
坑3:费用失控
如果写死循环里每次都调 API,一天烧几百块很容易。批量 + 缓存 + 规则预筛选是必修课。
坑4:API Key 泄露
API Key 不要硬编码在流程里,用影刀的全局变量或环境变量存储。发布应用时也注意不要暴露。
七、选型建议
| 你的情况 | 建议 |
|---|---|
| 刚接触,想体验 | 用魔法指令 3.0 的内置 AI 功能 |
| 需要灵活判断 | Python 代码指令 + DeepSeek API(便宜好用) |
| 需要处理大量文本 | 批量调用 + 规则预筛选 + 缓存 |
| 飞书生态深度用户 | 优先豆包,和飞书联动更顺 |
| 长文本分析(如合同) | Kimi,128K 上下文 |
作者:林焱
本文为《影刀RPA学习手册》系列文章之一,内容源于实操经验的整理与分享。
