影刀RPA进阶教程:RPA与AI大模型融合的实战应用——让自动化拥有"大脑"

RPA擅长"操作",AI大模型擅长"理解"。

把两者结合起来,自动化的能力边界会大幅扩展——以前只能做固定规则的操作,现在可以处理非结构化信息、做智能判断、甚至自动决策。

这篇文章不讲概念,只讲实际怎么在影刀里把大模型用起来。


一、RPA + AI 解决的三类问题

在这里插入图片描述

场景 RPA 单独能做吗 加上 AI 后
商品评论情感分析 输入评论文本,输出正面/负面/中性
网页内容智能分类 标题+描述丢给大模型,返回分类标签
异常数据自动判断 采集数据→大模型判断是否符合预期→分流处理
智能客服回复草稿 把用户问题丢给大模型,生成回复草稿
图片内容识别 截图传给大模型,返回图片里有什么

RPA 负责"拿数据",AI 负责"理解数据",RPA 再根据 AI 的结果执行操作——这个三角循环是核心模式。


二、影刀里调用大模型的三种方式

方式1:Python 代码指令直接调 API

这是最灵活的方式。在影刀里拖入"Python代码指令",直接写 requests 调大模型 API。

# 调用 DeepSeek / 豆包 / 通义千问 API 做文本分类
import requests
import json

API_KEY = "你的API密钥"  # 建议存为全局变量
API_URL = "https://api.deepseek.com/v1/chat/completions"

def classify_product(title, description):
    """用大模型判断商品类目"""
    prompt = f"""
    请根据以下商品信息判断属于哪个类目。
    可选类目:服饰、数码、家居、食品、美妆、母婴、其他
    
    商品标题:{title}
    商品描述:{description}
    
    只回复类目名称,不要解释。
    """
    
    headers = {"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"}
    ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/2fe11ba80c344c368931ed61e50f9c6d.png#pic_center)

    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()
    return category

# 调用示例
类目 = 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请求"指令调大模型接口。

在这里插入图片描述

步骤:

  1. 拖入"HTTP请求",方法选 POST
  2. URL 填大模型 API 地址
  3. Headers 里加 Content-Type: application/jsonAuthorization: Bearer xxxx
  4. Body 里写 JSON:
{
    "model": "deepseek-chat",
    "messages": [{"role": "user", "content": "帮我判断这段评论是好评还是差评:[提取的评论文本]"}],
    "temperature": 0.1
}
  1. 解析返回的 JSON,提取 choices[0].message.content

灵活度不如 Python,但可以纯影刀指令完成。


三、实战案例:商品评论自动分类

在这里插入图片描述

这是一个完整的 RPA + AI 流程:

打开电商后台 → 采集今日评论列表 → 
逐条提交大模型判断情感 → 将结果写入Excel → 
负面评论自动截屏并发送企业微信通知

核心技术实现

# 情感分析 + 分级处理
import requests
import json

API_KEY = global_vars["deepseek_key"]  # 从影刀全局变量获取

def analyze_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 "正面" in result: return "正面"
        elif "负面" in result: return "负面"
        else: return "中性"
    except Exception as e:
        return f"分析失败:{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}" for i, c in enumerate(评论列表)])
prompt = f"""分析以下每条评论的情感,用编号+标签格式回复,例如:
1. 正面
2. 负面
3. ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/91ee754478644947b095c718ed21b250.png#pic_center)


{comments_batch}"""

单次调用可以处理 20-50 条,API 成本降为原来的 1/20。

2. 规则预筛选

先用简单规则(关键词匹配)筛掉明显的,剩下的才送大模型。

def pre_filter(text):
    """规则预筛选,明显的不用调大模型"""
    好评词 = ["好评", "满意", "不错", "推荐", "赞", "好"]
    差评词 = ["差评", "垃圾", "后悔", "退", "烂", "坑"]
    
    good = sum(1 for w in 好评词 if w in text)
    bad = sum(1 for w in 差评词 if w in text)
    
    if good >= 2 and bad == 0: return "正面"
    if bad >= 2 and good == 0: return "负面"
    return "待分析"  # 这些才送大模型

实测规则预筛能过滤掉 60% 的评论,剩下 40% 调 API。

3. 缓存结果

重复的文本不重复调 API。

cache = {}  # 跨循环可以用全局变量存

def analyze_with_cache(text):
    if text in cache:
        return cache[text]
        ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/2f25289e8f0d44e793495fcdb92220d1.png#pic_center)

    result = analyze_sentiment(text)
    cache[text] = result
    return result

TEMU店群矩阵自动化运营核价报活动

五、对接不同大模型的关键差异

模型 API 地址 特色
DeepSeek api.deepseek.com 便宜、中文好、响应快
豆包 ark.cn-beijing.volces.com 字节系,和飞书生态联动好
通义千问 dashscope.aliyuncs.com 阿里系,电商场景有优势
Kimi api.moonshot.cn 长文本处理能力强

一个通用的调用封装

import requests

def call_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)
    if not cfg or not cfg["key"]:
        raise ValueError(f"模型 {model} 未配置或缺少密钥")
    
    messages = []
    if system_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()
    return resp.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学习手册》系列文章之一,内容源于实操经验的整理与分享。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐