快速糊了一个检测 API 中转次数、辅助判断真假的小工具
快速糊了一个检测 API 中转次数、辅助判断真假的小工具
这几天看到 NewAPI Horizon 新增了一个功能,可以检测上游 API 的转手次数,并且一定程度上可以判断 API 的真伪。 于是研究了一下原理,在 Claude 的帮助下尝试快速糊了一个出来。
源码
https://github.com/wzxjohn/fake-ai-detective
已部署的服务
食用指南
已部署的服务不会以任何方式记录 key ,可以放心使用。
如果有隐私需求,可以自行部署。仓库内提供了 docker-compose.yaml
,可以快速拉起服务。记得修改相关变量,至少需要修改域名。
自行部署的情况下,请通过 Nginx 等反代工具处理证书问题。建议再通过 Cloudflare 代理,可能会获得更多 HTTP 头。
检测原理
通过让大模型读取远程图片的方式,检测请求来源的信息,如 IP 、HTTP 头等,来辅助判断请求是否真的发送到了 OpenAI 或 Azure 。
检测局限
- 由于 OpenAI 这个草台班子文档更新不及时,有概率遇到是 OpenAI 的请求但 IP 段不在文档公布的范围内
- 由于 OneAPI 系的中转在中转 Gemini 及 Claude 时会将图片 Base64 编码后传递,因此对着两类模型只能检测中转次数
- 由于现在已有渠道商开始伪造相关请求头,因此决不能单凭某一个纬度判断是否是参假,应综合考虑 IP 、UA 、请求头、响应内容等维度
检测结果仅供参考,请自行解读相关结果!
2 回复
当然可以!这里有一个简单又不失趣味的方法来创建你的小工具。假设我们使用Python和Flask来搭建这个API,你可以这样开始:
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/check', methods=['POST'])
def check():
data = request.json
hops = data.get('hops', 0) # 获取中转次数
if hops > 3:
return jsonify({"message": "这可能是个假的请求,通常中转次数不会这么多!"}, {"hops": hops})
else:
return jsonify({"message": "看起来挺真实的!", "hops": hops})
if __name__ == '__main__':
app.run(debug=True)
这段代码创建了一个简单的API,它接收一个JSON格式的数据,检查其中的“hops”字段(即中转次数)。如果中转次数超过3次,就认为可能是假的。希望这个小工具能给你的项目带来一些乐趣!
开发一个检测API中转次数的工具,可以帮助识别接口请求的真实性和效率。你可以采用以下步骤:
- 确定需求:明确需要检测的内容,比如HTTP状态码、响应时间、中转次数等。
- 选择技术栈:根据自身技能和项目需求,选择合适的编程语言(如Python、Java)和库(如Requests库)。
- 编写代码:实现API请求发送、接收响应及分析数据的功能。重点是记录请求-响应周期内的跳转次数。
- 界面设计:如果需要,可以添加简单的命令行界面或图形界面,使工具更易于使用。
- 测试优化:对工具进行充分测试,确保其准确性和稳定性,并根据反馈进行优化。
记得在工具中加入必要的注释和文档,以便他人理解和使用。