跳至主要內容

config.json配置

Kevin大约 3 分钟

  • 以下是一个示例config.json文件
    json
{
  "bind": "127.0.0.1:8181",
  "tls": {
    "enabled": false,
    "cert_file": "",
    "key_file": ""
  },
  "timeout": 600,
  "proxy_url": "",
  "license_id": "",
  "public_share": false,
  "site_password": "",
  "setup_password": "",
  "server_tokens": true,
  "proxy_api_prefix": "",
  "isolated_conv_title": "*",
  "disable_signup": false,
  "auto_conv_arkose": false,
  "proxy_file_service": false,
  "captcha": {
    "provider": "",
    "site_key": "",
    "site_secret": "",
    "site_login": false,
    "setup_login": false,
    "oai_username": false,
    "oai_password": false
  },
  "whitelist": null
}

:::

  • bind指定绑定IP和端口,在docker内,IP只能用0.0.0.0,否则映射不出来。
    • 如果你不打算套nginx等反代,bind参数的IP请使用0.0.0.0!!!
  • tls配置PandoraNext直接以https启动。
    • enabled 是否启用,truefalse。启用时必须配置证书和密钥文件路径。
    • cert_file 证书文件路径。
    • key_file 密钥文件路径。
  • timeout是请求的超时时间,单位为
  • proxy_url指定部署服务流量走代理,如:http://127.0.0.1:8888socks5://127.0.0.1:7980
  • license_id指定你的License Id,可以在这里获取
  • public_share对于GPT中创建的对话分享,是否需要登录才能查看。为true则无需登录即可查看。
  • site_password设置整站密码,需要先输入这个密码,正确才能进行后续步骤。充分保障私密性。
  • setup_password定义一个设置密码,用于调用/setup/开头的设置接口,为空则不可调用。
  • server_tokens设置是否在响应头中显示版本号,true显示,false则不显示。
  • proxy_api_prefix可以给你的proxy模式接口地址添加前缀,让人意想不到。注意设置的字符应该是url中允许的字符。包括:a-z A-Z 0-9 - _ . ~
    • proxy_api_prefix 你必须设置一个不少于8位,且同时包含数字字母的前缀才能开启proxy模式!
      • /backend-api/conversation proxy模式比例 1:4
      • /v1/chat/completions 3.5模型比例 1:4
      • /v1/chat/completions 4模型比例 1:10, 无需打码
      • /api/auth/login 登录接口比例 1:100,无需打码
  • isolated_conv_title现在隔离会话可以设置标题了,而不再是千篇一律的*号。
  • disable_signup 禁用注册账号功能,truefalse
  • auto_conv_arkoseproxy模式使用gpt-4模型调用/backend-api/conversation接口是否自动打码,使用消耗为4+10
  • proxy_file_serviceproxy模式是否使用PandoraNext的文件代理服务,避免官方文件服务的墙。
  • custom_doh_host 配置自定义的DoH主机名,建议使用IP形式。默认启动时在公共DoH中挑选你所在地区最快的那个。
  • captcha配置一些关键页面的验证码。
    • provider验证码提供商,支持:recaptcha_v2recaptcha_enterprisehcaptchaturnstilefriendly_captcha
    • site_key验证码供应商后台获取的网站参数,是可以公布的信息。
    • site_secret验证码供应商后台获取的秘密参数,不要公布出来。有些供应商也称作API Key
    • site_login是否在全站密码登录界面显示验证码,truefalse
    • setup_login是否在设置入口登录界面显示验证码,truefalse
    • oai_username是否输入用户名界面显示验证码,truefalse
    • oai_password是否在输入登录密码界面显示验证码,truefalse
  • whitelist邮箱数组指定哪些用户可以登录使用,用户名/密码登录受限制,各种Token登录受限。内置tokens不受限。
    • whitelistnull则不限制,为空数组[]则限制所有账号,内置tokens不受限。
    • 一个whitelist的例子:"whitelist": ["mail2@test.com", "mail2@test.com"]
  • 如果你希望从SQLite读取tokens,程序启动时指定参数-token tokens.db,文件名随意,后缀需要.db

设置页面

  • 必须先在config.json中设置setup_password为非空!
  • 浏览器打开:<Base URL>/setup,其中<Base URL>是你部署服务的地址。

注意

Bind不支持动态更新,如果你需要更改Bind,请修改后重启服务。