菜单

配置选项

相关源文件

本页面记录了GPT Academic中所有可用的配置选项。该系统使用灵活的配置系统,允许您自定义其行为的几乎每一个方面——从API连接到UI布局和插件行为。有关部署应用程序的说明,请参阅Docker部署

配置优先级

GPT Academic 使用三层配置系统

来源: config.py1-8

当应用程序请求配置值时,它会按照优先级顺序进行解析

  1. 环境变量(最高优先级)
  2. 来自 config_private.py 的值(如果存在)
  3. 来自 config.py 的默认值

config_private.py 文件用于不应提交到版本控制的个人配置。它通过 .gitignore 自动排除在git之外。

核心配置类别

来源: config.py10-350 main.py50-54

LLM集成设置

API密钥和模型选择

主要的配置始于设置您的语言模型API密钥

API_KEY = "sk-..."  # OpenAI API key

您可以通过用逗号分隔来配置多个API密钥。系统将随机选择一个以进行负载均衡。

关于模型选择

LLM_MODEL = "gpt-3.5-turbo-16k"  # Default model
AVAIL_LLM_MODELS = ["gpt-3.5-turbo", "gpt-4", ...]  # Available models

该系统支持许多不同的LLM提供商,包括

  • OpenAI (GPT 模型)
  • Anthropic (Claude 模型)
  • 智谱 (GLM 模型)
  • 本地模型 (ChatGLM, LLaMA)
  • Azure OpenAI 服务
  • 通过集成支持的许多其他模型

来源: config.py10-69

模型连接关系图

来源: config.py10-69 config.py356-429 main.py47-55

支持的API密钥格式

系统可以检测并使用不同服务的不同API密钥格式

提供商API密钥格式配置变量
OpenAI(48或92个字符) sk-...API_KEY
Azure OpenAI32个字符的字符串AZURE_API_KEY
Claude (Anthropic)各种格式ANTHROPIC_API_KEY
智谱 AI各种格式ZHIPUAI_API_KEY
Moonshot各种格式MOONSHOT_API_KEY
Yi Model各种格式YIMODEL_API_KEY
DashScope (阿里云)各种格式DASHSCOPE_API_KEY
百度各种格式BAIDU_CLOUD_API_KEY + BAIDU_CLOUD_SECRET_KEY

您也可以使用 CUSTOM_API_KEY_PATTERN 定义自定义API密钥正则表达式。

来源: config.py10-290 shared_utils/key_pattern_manager.py1-129

网络设置

代理配置

如果您需要使用代理来访问API服务(特别是面向地理限制的API)

您可以使用 WHEN_TO_USE_PROXY 指定哪些操作应使用代理。

API URL 重定向

对于需要将API请求重定向到另一个端点的特殊情况

⚠️ 警告:这是一个高风险设置,会将您的API密钥暴露给重定向目标。

其他网络设置

  • TIMEOUT_SECONDS:API请求超时(默认为30秒)
  • MAX_RETRY:失败请求的重试次数(默认为2次)
  • WEB_PORT:Web服务器端口(-1 表示随机端口)

来源: config.py19-36 config.py78-81 config.py141-155

UI和布局设置

来源: config.py89-139 main.py81-82 main.py105-139

布局选项

  • LAYOUT:设置为 "LEFT-RIGHT" 实现并排布局,或 "TOP-DOWN" 实现堆叠布局
  • CHATBOT_HEIGHT:聊天窗口的高度(仅适用于 "TOP-DOWN" 布局)
  • DARK_MODE:设置为 True 可使用深色主题,设置为 False 可使用浅色主题
  • AUTO_CLEAR_TXT:提交后自动清除输入框

主题和视觉设置

  • THEME:从可用主题中选择,例如 "Default", "Chuanhu-Small-and-Beautiful", "High-Contrast" 或自定义 Gradio 主题
  • AVAIL_THEMES:可用主题列表
  • FONT:字体选择(包括中文在内的各种选项)
  • AVAIL_FONTS:可用字体列表
  • CODE_HIGHLIGHT:启用/禁用代码的语法高亮

初始系统提示

设置提供给LLM指令的默认系统提示

来源: config.py89-139 main.py331

插件和功能设置

插件分组和显示

  • DEFAULT_FN_GROUPS:默认要显示的插件类别(['对话', '编程', '学术', '智能体']
  • MULTI_QUERY_LLM_MODELS:用于多模型查询功能的模型
  • NUM_CUSTOM_BASIC_BTN:可自定义按钮的数量(默认为4)

专用插件设置

  • ALLOW_RESET_CONFIG:是否允许通过自然语言更改配置(存在安全风险)
  • AUTOGEN_USE_DOCKER:是否使用Docker执行AutoGen插件代码
  • PATH_PRIVATE_UPLOAD:临时上传目录位置
  • PATH_LOGGING:日志目录位置
  • ARXIV_CACHE_DIR:翻译的arXiv论文存储位置
  • PLUGIN_HOT_RELOAD:为开发启用插件热重载

来源: config.py156-158 config.py312-347 main.py72-74 main.py133-137

外部服务集成

GPT Academic 支持与各种外部服务集成

文档处理服务

  • GROBID_URLS: 高质量 PDF 文档阅读服务器
  • MATHPIX_APPIDMATHPIX_APPKEY: 用于数学内容的 OCR 处理
  • DOC2X_API_KEY: 用于 PDF 解析服务

搜索和媒体服务

  • SEARXNG_URLS: 互联网搜索服务终端
  • DAAS_SERVER_URLS: 媒体代理服务地址
  • JINA_API_KEY: 用于将搜索结果清理成 Markdown

音频和 TTS 服务

  • ENABLE_AUDIO: 启用音频输入功能
  • TTS_TYPE: 文本转语音服务类型 ("EDGE_TTS" / "LOCAL_SOVITS_API" / "DISABLE")
  • GPT_SOVITS_URL: GPT-SoVITS 文本转语音服务 URL
  • EDGE_TTS_VOICE: Edge TTS 的语音设置

来源: config.py234-247 config.py303-356 main.py321-322

认证和安全

GPT Academic 支持基本身份验证以保护您的实例

HTTPS 支持

子路径部署的路径自定义

来源: config.py200-213 main.py353-355

环境变量配置

config.py 中的所有设置也可以通过环境变量设置。这对于 Docker 部署尤其有用。通用格式是将配置变量名转换为大写,并加上 GPTAC_ 前缀。

例如

  • API_KEYGPTAC_API_KEY
  • LLM_MODELGPTAC_LLM_MODEL
  • DARK_MODEGPTAC_DARK_MODE

来源: config.py1-8

高级配置关系

该文件末尾包含详细的配置关系图,显示了不同设置如何相互作用

  • 在线模型配置关系
  • 本地模型设置
  • UI 布局依赖
  • 插件服务配置依赖

这说明更改一个设置可能会影响系统的多个组件。

来源: config.py356-459

运行时配置更改

一些配置选项可以通过 Web 界面在运行时进行更改

  1. 模型选择(通过下拉菜单)
  2. 主题和字体(通过设置面板)
  3. UI 布局选项(通过复选框)
  4. 系统提示(通过设置面板)

通过 UI 所做的更改将保存在浏览器 cookie 中,并在会话之间保持,但特定于每个浏览器。

来源: main.py175-185 main.py262-276 main.py324-332

默认配置详解

关键默认设置

设置默认值描述
API_KEY空字符串OpenAI API 密钥
LLM_MODEL"gpt-3.5-turbo-16k"默认 LLM 模型
USE_PROXY是否为 API 调用使用代理
TIMEOUT_SECONDS30API 请求超时(秒)
MAX_RETRY2API 调用最大重试次数
LAYOUT"LEFT-RIGHT"UI 布局方向
DARK_MODETrue默认启用暗黑模式
WEB_PORT-1随机 Web 端口
AUTO_OPEN_BROWSERTrue启动时自动打开浏览器
DEFAULT_WORKER_NUM8默认并行工作数

来源: config.py10-157