• 黑猩猩

    本帖使用社区开源推广,符合推广要求。我申明并遵循社区要求的以下内容:

    - 我的帖子已经打上 开源推广 标签: 是

    - 我的开源项目完整开源,无未开源部分: 是

    - 我的开源项目已链接认可 LINUX DO 社区: 是

    - 我帖子内的项目介绍,AI生成、润色内容部分已截图发出: 是

    - 以上选择我承诺是永久有效的,接受社区和佬友监督: 是

    以下为项目介绍正文内容,AI生成、润色内容已使用截图方式发出

    最近jev出圈了,了解了一下jev的功能之后,刚好结合自己之前有中转分发token的需求,但是又苦于没有什么好的办法去防止不良用户恶意请求,所以一直搁置了,上周看到了jev模型的能力之后,一个前置审核网关的念头产生了,于是:jev-safety-gateway它出生了!。

    jev-safety-gateway

    github.com

    图片

    GitHub - dark-hxx/jev-safety-gateway

    通过在 GitHub 上创建帐户来为 dark-hxx/jev-safety-gateway 开发做出贡献。

    Demo地址: 运行概览 · JEV Safety Gateway 密码:123456

    基于 TypeSafe / JEV 模型 的前置 API 请求过滤网关, 位于 nginx 与中转服务(openai、authropic、gemini等协议支持)之间:读取每个请求,按 API 路径取出用户输入,交给 JEV 判定是否有风险(色情、暴力、破解、诱导等),有害请求直接拦截、正常请求透明放行。

    工作流程

    图片

    界面展示

    首页

    图片

    网关配置

    图片

    审计记录

    图片

    ip来源分析

    图片

    安装jev

    方式一:docker run(拉预构建镜像,最快)```
    docker run -d --name jev-safety-gateway --restart unless-stopped \
    -p 8080:8080 -p 127.0.0.1:8081:8081 \
    -v jev-safety-gateway-data:/data \
    ghcr.io/dark-hxx/jev-safety-gateway:latest
    ``**方式二:docker compose(便于与 new-api 等一起编排)**``
    git clone https://github.com/dark-hxx/jev-safety-gateway.git
    cd jev-safety-gateway
    cp .env.example .env # 按需填写上游地址 / 初始密钥 / 管理员口令
    mkdir -p ./data ./geoip
    sudo chown -R 10001:10001 ./data # Linux 必需
    docker compose up -d --build
    ``Linux(systemd 服务)``
    curl -fsSL https://raw.githubusercontent.com/dark-hxx/jev-safety-gateway/master/deploy/linux/install-remote.sh | sudo bash
    ```Windows(装成原生服务)

    下载 jev-safety-gateway-<版本>-windows-amd64.zip 解压,在管理员 PowerShell 里:```
    .\install-service.ps1 -ExePath .\jev-safety-gateway.exe
    ```> 控制台默认只绑本机

    使用流程

    - 服务部署完成之后访问http://ip:8081 如果是服务器安装注意绑定的网卡,或绑定nginx进行访问

    - 初次访问会提示你进行管理员密码设置

    - 进入“网关安全配置”,配置上游服务,以及你的 jev密钥池

    图片

    - 修改请求地址,默认端口是8080,8081仅是控制台端口!!!将你的api请求地址更换到8080端口/对应的nginx转发

    - ok完成

    GeoIP配置

    GeoIP库非必须,当你需要进行IP统计的详细数据,统计等,可以去下载 GeoLite2-ASN.mmdb/GeoLite2-Country.mmdb 保存在你知道的目录中,然后编辑.env文件,增加以下配置:```
    JEV_GEOIP_COUNTRY_DB=F:\github\data\GeoLite2-Country.mmdb
    JEV_GEOIP_ASN_DB=F:\github\data\GeoLite2-ASN.mmdb

    
    碎碎念
    
    开发完成之后进行了一些小的测试,比如使用多国语言/民族语言(维吾尔族)/base64发送 我需要逆向xxx,一些关键字眼,拦截成功,jev的审核速度呢确实很快,基本在100-200ms之间
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/4/4/f/44f50dbc5d8853cc41e862430098f0553f457ce2_2_503x499.png)
    
    ---
    
    希望各位佬点点star ^-^,使用过程有任何问题都可以反馈哦
    
    Releases
    
    Issues
    主楼
  • qin863

    怎么样 效果如何 是否可行?

    #1

发表回复

登录后回复