Skip to content

simple‐one‐api代理配置说明

fruitbars edited this page Jul 4, 2024 · 2 revisions

simple-one-api代理配置说明

本说明文档将帮助用户理解如何在simple-one-api配置文件中设置代理策略。通过配置代理,用户可以控制请求是否通过代理服务器进行。

注意:本文所描述的代理模式只在v0.9.1版本及以上支持。

配置格式

代理配置位于 proxy 字段中,支持 httpsocks5 两种类型的代理。每种代理类型可以设置不同的策略。

以下是配置的示例:

{
  "proxy": {
    "type": "http",
    "http_proxy": "http://127.0.0.1:7890",
    "strategy": "all"
  }
}

{
  "proxy": {
    "type": "socks5",
    "socks5_proxy": "socks5://127.0.0.1:7890",
    "strategy": "all"
  }
}

配置字段说明

  • type:代理类型,可以是 httpsocks5
  • http_proxy:HTTP 代理服务器的地址,格式为 http://{IP}:{端口}
  • socks5_proxy:SOCKS5 代理服务器的地址,格式为 socks5://{IP}:{端口}
  • strategy:代理策略,控制是否启用代理。支持以下取值:
    • force_all:全部强制启用代理,即使服务内配置了 false 也忽略。
    • all:根据配置启用代理,如果服务内配置了 false,则不使用代理。
    • default:默认启用代理,只有在服务内明确配置了 true 时才使用代理。
    • disabled:全部禁用代理,无论服务内的配置如何。

示例说明

  1. HTTP 代理示例

    {
      "proxy": {
        "type": "http",
        "http_proxy": "http://127.0.0.1:7890",
        "strategy": "all"
      }
    }
    • 类型:HTTP 代理
    • 代理服务器地址:http://127.0.0.1:7890
    • 策略:all,所有请求都使用代理,除非服务内配置了 false
  2. SOCKS5 代理示例

    {
      "proxy": {
        "type": "socks5",
        "socks5_proxy": "socks5://127.0.0.1:7890",
        "strategy": "all"
      }
    }
    • 类型:SOCKS5 代理
    • 代理服务器地址:socks5://127.0.0.1:7890
    • 策略:all,所有请求都使用代理,除非服务内配置了 false
  3. 服务内字段填写

    以下全局是使用的default策略,每个service默认是不启用代理,我们可以通过 "use_proxy":true来为其中的一个服务配置启用代理服务。

    {
      "log_level": "dev",
      "load_balancing": "random",
      "proxy":{
        "type":"http",
        "http_proxy": "http://127.0.0.1:7890",
        "strategy": "default"
      },
      "services": {
        "gemini": [
          {
            "models": ["gemini-1.0-pro", "gemini-1.0-pro-latest", "gemini-pro", "gemini-1.5-pro", "gemini-1.5-pro-latest", "gemini-1.5-flash", "gemini-1.5-flash-latest"],
            "enabled": true,
            "credentials": {
              "api_key": "xxx"
            },
            "use_proxy":true
          }
        ]
      }
    }

策略说明

  • force_all:无条件使用代理。适用于所有请求都必须通过代理的情况。
  • all:默认使用代理,但如果服务内配置了 false 则不使用代理。适用于大多数请求需要代理,但允许特定服务禁用代理的情况。
  • default:默认不使用代理,只有服务内明确配置了 true 时才使用代理。适用于需要精细化控制代理使用的情况。
  • disabled:禁用代理,所有请求都不使用代理。适用于不需要使用代理的情况。

通过设置上述配置,用户可以灵活控制请求是否通过代理服务器,从而满足不同的网络访问需求。