AI Agent请求去重:同一个问题别处理两次

📘 AI教程 💬 🔥 Trending

🩺 摘要

用户手抖点了两次提交。Agent收到了两个同样的请求,处理了两次——浪费双倍时间和钱。

📝 详情

一个真实场景

网络延迟,用户以为没点上,又点了一次。Agent收到了两个完全一样的查询请求,各自独立处理了一遍,返回了两个一样的答案。

请求去重的实现

import hashlib, time

class Deduplicator:
    def __init__(self, ttl=300):
        self.cache = {}  # 实际用Redis
        self.ttl = ttl

    def is_duplicate(self, request_id, query):
        key = hashlib.md5(query.encode()).hexdigest()
        if key in self.cache:
            return True
        self.cache[key] = time.time() + self.ttl
        return False

去重时机

在请求进入队列之前做去重。同一个用户5秒内的相同请求直接丢弃。

效果

去重后重复请求减少15-25%。不算多,但这是白捡的节省。

总结

请求去重防的是意外,不是常态。但意外发生时,它能省掉你双倍的费用。