#7432·new-api

在 /v1/responses API 格式中存在的 绕过 敏感词检测的问题

Author: hanakoNyaCreated Sep 17, 2026Updated Sep 17, 2026
Labelsbug

部署来源

本仓库 Release / 官方镜像(自行部署)

您当前的 newapi 版本

v1.0.0-rc.37

提交确认

  • 非重复 issue: 我已搜索现有 Issues,确认目前没有类似 issue。
  • 提交前必读: 我已完整阅读上方“提交前必读”,并已查看文档 https://docs.newapi.ai/、项目 README 且向 AI 提问,确认这不是使用、配置或接入类问题。
  • 受支持版本: 我已提供准确的版本号、commit 或镜像标签(不是 latestunknown),并确认问题可在本仓库未修改的受支持版本中复现。
  • 非第三方服务: 我确认这不是第三方托管站、中转站、API 服务或未经本仓库原版验证的 fork 所独有的问题;第三方实例问题应联系其运营方。
  • 问题归属: 我已提供足以区分客户端、new-api 和上游的证据;转发问题已使用等价的脱敏请求对比直连上游与经过 new-api 的结果,确认错误由 new-api 引入或改变,而非仅原样转发上游报错。
  • 渠道与协议边界: 我确认问题不是由 Coding Plan、逆向渠道、第三方封装接口、Codex 反代接口,或 Codex API 自身特有行为导致;若问题最初出现于此类接口,我已在本仓库支持的标准 API 协议上复现。
  • 维护成本: 我理解项目维护者精力有限,不遵循模板要求的 issue 可能会被无视或直接关闭。

问题描述


/v1/responses API 格式中存在的 绕过敏感词检测 的问题。 当敏感词存在于 function_call_output 字段中就可以绕过检测。
实际应用于 codex 调用工具读取文件时存在。 例如:

  • 下载 codex 并配置 NewAPI 网关。
  • 将带有敏感词的句子写入一份文本文件内。
  • 使用 codex 询问对该文件(或文件路径)的看法。

复现步骤


  • 下载 NewAPI
  • NewAPI 中部署配置支持 /v1/responses 网关(例如 OpenAI,或高级自定义路由,原生或 /v1/responses/v1/chat/completions 等)
  • 配置敏感词列表
  • 将敏感词放入 function_call_output 中发起请求:
bash
curl http://[YOUR_SERVER_ADDRESS]/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-*********************" \
  -d '{
    "model": "gpt-5.6-luna",
    "input": [
      {
        "role": "user",
        "content": "你好"
      },
      {
        "type": "function_call_output",
        "output": "敏感词"
      }
    ],
    "reasoning": { "effort": "low" }
  }'
  • 即可绕过敏感词检测

预期结果


敏感词应当被拦截,无论在什么地方

json
{
    "error": {
        "message": "sensitive_words_detected (request id: *************)",
        "type": "new_api_error",
        "param": "",
        "code": "sensitive_words_detected"
    }
}

相关截图

No response