diff --git a/README.md b/README.md
index 0c06b73f05b..57d1972508f 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,7 @@
NextChat (ChatGPT Next Web)
-English / [简体中文](./README_CN.md)
+English / [简体中文](./README_CN.md) / [日本語](./README_JA.md)
One-Click to get a well-designed cross-platform ChatGPT web UI, with GPT3, GPT4 & Gemini Pro support.
@@ -207,17 +207,38 @@ After adding or modifying this environment variable, please redeploy the project
## Environment Variables
-> [简体中文 > 如何配置 api key、访问密码、接口代理](./README_CN.md#环境变量)
+> Most of this project's configurations are done through environment variables. Tutorial: [How to modify Vercel environment variables](./docs/vercel-en.md).
-### `CODE` (optional)
+### Basic Configuration
+
+#### `OPENAI_API_KEY` (required)
+
+Your OpenAI API key. You can separate multiple keys with commas for random polling between keys.
+
+#### `CODE` (optional)
+
+> Default: empty
Access password, separated by comma.
-### `OPENAI_API_KEY` (required)
+**Warning**: If you don't set this value, anyone can access your deployment. This may lead to rapid token consumption.
+
+#### `PROXY_URL` (optional)
+
+> Example: `http://127.0.0.1:7890`
+
+Proxy server URL. Supports HTTP and SOCKS proxies.
-Your openai api key, join multiple api keys with comma.
+If your proxy server requires authentication, you can use the following format:
+```bash
+http://username:password@127.0.0.1:7890
+```
+
+Note: This configuration only works when deploying with Docker.
-### `BASE_URL` (optional)
+### Model Configuration
+
+#### `BASE_URL` (optional)
> Default: `https://api.openai.com`
@@ -225,155 +246,318 @@ Your openai api key, join multiple api keys with comma.
Override openai api request base url.
-### `OPENAI_ORG_ID` (optional)
+> If you encounter SSL certificate issues, try setting the protocol to http.
+
+#### `OPENAI_ORG_ID` (optional)
+
+> Default: empty
Specify OpenAI organization ID.
-### `AZURE_URL` (optional)
+#### `AZURE_URL` (optional)
> Example: https://{azure-resource-url}/openai
Azure deploy url.
-### `AZURE_API_KEY` (optional)
+#### `AZURE_API_KEY` (optional)
Azure Api Key.
-### `AZURE_API_VERSION` (optional)
+#### `AZURE_API_VERSION` (optional)
Azure Api Version, find it at [Azure Documentation](https://learn.microsoft.com/en-us/azure/ai-services/openai/reference#chat-completions).
-### `GOOGLE_API_KEY` (optional)
+### Other Model Providers
+
+#### `GOOGLE_API_KEY` (optional)
Google Gemini Pro Api Key.
-### `GOOGLE_URL` (optional)
+#### `GOOGLE_URL` (optional)
+
+> Default: "https://generativelanguage.googleapis.com/"
Google Gemini Pro Api Url.
-### `ANTHROPIC_API_KEY` (optional)
+#### `ANTHROPIC_API_KEY` (optional)
-anthropic claude Api Key.
+Anthropic Claude Api Key.
-### `ANTHROPIC_API_VERSION` (optional)
+#### `ANTHROPIC_API_VERSION` (optional)
-anthropic claude Api version.
+Anthropic Claude Api version.
-### `ANTHROPIC_URL` (optional)
+#### `ANTHROPIC_URL` (optional)
-anthropic claude Api Url.
+> Default: "https://api.anthropic.com"
-### `BAIDU_API_KEY` (optional)
+Anthropic Claude Api Url.
+
+#### `BAIDU_API_KEY` (optional)
Baidu Api Key.
-### `BAIDU_SECRET_KEY` (optional)
+#### `BAIDU_SECRET_KEY` (optional)
Baidu Secret Key.
-### `BAIDU_URL` (optional)
+#### `BAIDU_URL` (optional)
+
+> Default: "https://aip.baidubce.com"
Baidu Api Url.
-### `BYTEDANCE_API_KEY` (optional)
+#### `BYTEDANCE_API_KEY` (optional)
ByteDance Api Key.
-### `BYTEDANCE_URL` (optional)
+#### `BYTEDANCE_URL` (optional)
+
+> Default: "https://ark.cn-beijing.volces.com/api/"
ByteDance Api Url.
-### `ALIBABA_API_KEY` (optional)
+#### `ALIBABA_API_KEY` (optional)
Alibaba Cloud Api Key.
-### `ALIBABA_URL` (optional)
+#### `ALIBABA_URL` (optional)
+
+> Default: "https://dashscope.aliyuncs.com/api/"
Alibaba Cloud Api Url.
-### `IFLYTEK_URL` (Optional)
+#### `IFLYTEK_API_KEY` (optional)
-iflytek Api Url.
+Iflytek Api Key.
-### `IFLYTEK_API_KEY` (Optional)
+#### `IFLYTEK_API_SECRET` (optional)
-iflytek Api Key.
+Iflytek Api Secret.
-### `IFLYTEK_API_SECRET` (Optional)
+#### `IFLYTEK_URL` (optional)
-iflytek Api Secret.
+> Default: "https://spark-api-open.xf-yun.com"
-### `CHATGLM_API_KEY` (optional)
+Iflytek Api Url.
-ChatGLM Api Key.
+#### `MOONSHOT_API_KEY` (optional)
-### `CHATGLM_URL` (optional)
+Moonshot API Key.
-ChatGLM Api Url.
+#### `MOONSHOT_URL` (optional)
-### `HIDE_USER_API_KEY` (optional)
+> Default: "https://api.moonshot.cn"
-> Default: Empty
+Moonshot API URL.
-If you do not want users to input their own API key, set this value to 1.
+#### `XAI_API_KEY` (optional)
-### `DISABLE_GPT4` (optional)
+XAI API Key.
-> Default: Empty
+#### `XAI_URL` (optional)
-If you do not want users to use GPT-4, set this value to 1.
+> Default: "https://api.x.ai"
-### `ENABLE_BALANCE_QUERY` (optional)
+XAI API URL.
-> Default: Empty
+#### `CHATGLM_API_KEY` (optional)
-If you do want users to query balance, set this value to 1.
+ChatGLM Api Key.
-### `DISABLE_FAST_LINK` (optional)
+#### `CHATGLM_URL` (optional)
-> Default: Empty
+> Default: "https://open.bigmodel.cn"
-If you want to disable parse settings from url, set this to 1.
+ChatGLM Api Url.
+
+#### `TENCENT_SECRET_ID` (optional)
+
+Tencent Cloud Secret ID.
-### `CUSTOM_MODELS` (optional)
+#### `TENCENT_SECRET_KEY` (optional)
+
+Tencent Cloud Secret Key.
+
+#### `TENCENT_URL` (optional)
+
+> Default: "https://hunyuan.tencentcloudapi.com"
+
+Tencent Cloud API URL.
+
+#### `CUSTOM_MODELS` (optional)
-> Default: Empty
> Example: `+llama,+claude-2,-gpt-3.5-turbo,gpt-4-1106-preview=gpt-4-turbo` means add `llama, claude-2` to model list, and remove `gpt-3.5-turbo` from list, and display `gpt-4-1106-preview` as `gpt-4-turbo`.
To control custom models, use `+` to add a custom model, use `-` to hide a model, use `name=displayName` to customize model name, separated by comma.
-User `-all` to disable all default models, `+all` to enable all default models.
+Use `-all` to disable all default models, `+all` to enable all default models.
For Azure: use `modelName@Azure=deploymentName` to customize model name and deployment name.
> Example: `+gpt-3.5-turbo@Azure=gpt35` will show option `gpt35(Azure)` in model list.
-> If you only can use Azure model, `-all,+gpt-3.5-turbo@Azure=gpt35` will `gpt35(Azure)` the only option in model list.
+> If you only can use Azure model, `-all,+gpt-3.5-turbo@Azure=gpt35` will make `gpt35(Azure)` the only option in model list.
For ByteDance: use `modelName@bytedance=deploymentName` to customize model name and deployment name.
> Example: `+Doubao-lite-4k@bytedance=ep-xxxxx-xxx` will show option `Doubao-lite-4k(ByteDance)` in model list.
-### `DEFAULT_MODEL` (optional)
+#### `DEFAULT_MODEL` (optional)
+
+> Default: empty
+
+Change default model.
+
+### Features
+
+#### `HIDE_USER_API_KEY` (optional)
+
+> Default: empty
+
+If you do not want users to input their own API key, set this value to 1.
+
+#### `DISABLE_GPT4` (optional)
+
+> Default: empty
+
+If you don't want users to use GPT-4, set this value to 1. This will hide all GPT-4 related models from the model list.
+
+#### `ENABLE_BALANCE_QUERY` (optional)
+
+> Default: empty
+
+If you do want users to query balance, set this value to 1.
+
+#### `DISABLE_FAST_LINK` (optional)
+
+> Default: empty
+
+If you want to disable parse settings from url, set this to 1.
+
+#### `CHAT_PAGE_SIZE` (optional)
+
+> Default: 15
+
+Number of chat messages to load per page.
-Change default model
+#### `MAX_RENDER_MSG_COUNT` (optional)
-### `WHITE_WEBDAV_ENDPOINTS` (optional)
+> Default: 45
-You can use this option if you want to increase the number of webdav service addresses you are allowed to access, as required by the format:
+Maximum number of messages to render in chat window.
+
+#### `DEFAULT_INPUT_TEMPLATE` (optional)
+
+> Default: "{{input}}"
+
+Customize the default template used to initialize the User Input Preprocessing configuration item in Settings.
+
+### TTS Related
+
+#### `DEFAULT_TTS_ENGINE` (optional)
+
+> Default: `OpenAI-TTS`
+
+Default text-to-speech engine.
+
+#### `DEFAULT_TTS_ENGINES` (optional)
+
+> Default: `["OpenAI-TTS", "Edge-TTS"]`
+
+Available text-to-speech engines.
+
+#### `DEFAULT_TTS_MODEL` (optional)
+
+> Default: `tts-1`
+
+Default OpenAI TTS model.
+
+#### `DEFAULT_TTS_VOICE` (optional)
+
+> Default: `alloy`
+
+Default TTS voice.
+
+#### `DEFAULT_TTS_MODELS` (optional)
+
+> Default: `["tts-1", "tts-1-hd"]`
+
+Available OpenAI TTS models.
+
+#### `DEFAULT_TTS_VOICES` (optional)
+
+> Default: `["alloy", "echo", "fable", "onyx", "nova", "shimmer"]`
+
+Available TTS voices.
+
+### Other Services
+
+#### `WHITE_WEBDAV_ENDPOINTS` (optional)
+
+You can use this option if you want to increase the number of webdav service addresses you are allowed to access, as required by the format:
- Each address must be a complete endpoint
> `https://xxxx/yyy`
- Multiple addresses are connected by ', '
-### `DEFAULT_INPUT_TEMPLATE` (optional)
+#### `STABILITY_API_KEY` (optional)
-Customize the default template used to initialize the User Input Preprocessing configuration item in Settings.
-
-### `STABILITY_API_KEY` (optional)
+> Default: empty
Stability API key.
-### `STABILITY_URL` (optional)
+#### `STABILITY_URL` (optional)
+
+> Default: "https://api.stability.ai"
Customize Stability API url.
+#### `CLOUDFLARE_ACCOUNT_ID` (optional)
+
+> Default: empty
+
+Cloudflare Account ID.
+
+#### `CLOUDFLARE_KV_NAMESPACE_ID` (optional)
+
+> Default: empty
+
+Cloudflare KV Namespace ID.
+
+#### `CLOUDFLARE_KV_API_KEY` (optional)
+
+> Default: empty
+
+Cloudflare KV API Key.
+
+#### `CLOUDFLARE_KV_TTL` (optional)
+
+> Default: empty
+
+Cloudflare KV cache expiration time.
+
+#### `GTM_ID` (optional)
+
+> Default: empty
+
+Google Tag Manager ID.
+
+#### `GA_ID` (optional)
+
+> Default: "G-89WN60ZK2E"
+
+Google Analytics ID. Will use default value if not set.
+
+#### `SAAS_CHAT_URL` (optional)
+
+> Default: "https://nextchat.dev/chat"
+
+SaaS chat URL.
+
+#### `SAAS_CHAT_UTM_URL` (optional)
+
+> Default: "https://nextchat.dev/chat?utm=github"
+
+SaaS chat URL with UTM parameters.
+
## Requirements
NodeJS >= 18, Docker >= 20
diff --git a/README_CN.md b/README_CN.md
index d4da8b9da13..2000892271c 100644
--- a/README_CN.md
+++ b/README_CN.md
@@ -6,6 +6,8 @@
NextChat
+[English](./README.md) / 简体中文 / [日本語](./README_JA.md)
+
一键免费部署你的私人 ChatGPT 网页应用,支持 GPT3, GPT4 & Gemini Pro 模型。
[NextChatAI](https://nextchat.dev/chat?utm_source=readme) / [企业版](#%E4%BC%81%E4%B8%9A%E7%89%88) / [演示 Demo](https://chat-gpt-next-web.vercel.app/) / [反馈 Issues](https://github.com/Yidadaa/ChatGPT-Next-Web/issues) / [加入 Discord](https://discord.gg/zrhvHCr79N)
@@ -86,137 +88,176 @@ code1,code2,code3
> 本项目大多数配置项都通过环境变量来设置,教程:[如何修改 Vercel 环境变量](./docs/vercel-cn.md)。
-### `OPENAI_API_KEY` (必填项)
+### 基本配置
+
+#### `OPENAI_API_KEY` (必填项)
OpanAI 密钥,你在 openai 账户页面申请的 api key,使用英文逗号隔开多个 key,这样可以随机轮询这些 key。
-### `CODE` (可选)
+#### `CODE` (可选)
+
+> 默认值: 空
访问密码,可选,可以使用逗号隔开多个密码。
**警告**:如果不填写此项,则任何人都可以直接使用你部署后的网站,可能会导致你的 token 被急速消耗完毕,建议填写此选项。
-### `BASE_URL` (可选)
+#### `PROXY_URL` (可选)
+
+> 示例:`http://127.0.0.1:7890`
+
+代理服务器地址。支持 HTTP 和 SOCKS 代理。
+
+如果代理服务器需要认证,可以使用以下格式:
+```bash
+http://username:password@127.0.0.1:7890
+```
-> Default: `https://api.openai.com`
+注意:此配置仅在使用 Docker 部署时有效。
-> Examples: `http://your-openai-proxy.com`
+### 模型配置相关
+
+#### `BASE_URL` (可选)
+
+> 默认值:`https://api.openai.com`
+
+> 示例:`http://your-openai-proxy.com`
OpenAI 接口代理 URL,如果你手动配置了 openai 接口代理,请填写此选项。
> 如果遇到 ssl 证书问题,请将 `BASE_URL` 的协议设置为 http。
-### `OPENAI_ORG_ID` (可选)
+#### `OPENAI_ORG_ID` (可选)
指定 OpenAI 中的组织 ID。
-### `AZURE_URL` (可选)
+#### `AZURE_URL` (可选)
> 形如:https://{azure-resource-url}/openai
Azure 部署地址。
-### `AZURE_API_KEY` (可选)
+#### `AZURE_API_KEY` (可选)
Azure 密钥。
-### `AZURE_API_VERSION` (可选)
+#### `AZURE_API_VERSION` (可选)
Azure Api 版本,你可以在这里找到:[Azure 文档](https://learn.microsoft.com/en-us/azure/ai-services/openai/reference#chat-completions)。
-### `GOOGLE_API_KEY` (可选)
+#### `GOOGLE_API_KEY` (可选)
-Google Gemini Pro 密钥.
+Google Gemini Pro 密钥。
-### `GOOGLE_URL` (可选)
+#### `GOOGLE_URL` (可选)
-Google Gemini Pro Api Url.
+Google Gemini Pro Api Url。
-### `ANTHROPIC_API_KEY` (可选)
+#### `ANTHROPIC_API_KEY` (可选)
-anthropic claude Api Key.
+Anthropic Claude Api Key。
-### `ANTHROPIC_API_VERSION` (可选)
+#### `ANTHROPIC_API_VERSION` (可选)
-anthropic claude Api version.
+Anthropic Claude Api version。
-### `ANTHROPIC_URL` (可选)
+#### `ANTHROPIC_URL` (可选)
-anthropic claude Api Url.
+Anthropic Claude Api Url。
-### `BAIDU_API_KEY` (可选)
+#### `BAIDU_API_KEY` (可选)
-Baidu Api Key.
+Baidu Api Key。
-### `BAIDU_SECRET_KEY` (可选)
+#### `BAIDU_SECRET_KEY` (可选)
-Baidu Secret Key.
+Baidu Secret Key。
-### `BAIDU_URL` (可选)
+#### `BAIDU_URL` (可选)
-Baidu Api Url.
+> 默认值: "https://aip.baidubce.com"
-### `BYTEDANCE_API_KEY` (可选)
+Baidu Api Url。
-ByteDance Api Key.
+#### `BYTEDANCE_API_KEY` (可选)
-### `BYTEDANCE_URL` (可选)
+ByteDance Api Key。
-ByteDance Api Url.
+#### `BYTEDANCE_URL` (可选)
-### `ALIBABA_API_KEY` (可选)
+> 默认值: "https://ark.cn-beijing.volces.com/api/"
-阿里云(千问)Api Key.
+ByteDance Api Url。
-### `ALIBABA_URL` (可选)
+#### `ALIBABA_API_KEY` (可选)
-阿里云(千问)Api Url.
+阿里云(千问)Api Key。
-### `IFLYTEK_URL` (可选)
+#### `ALIBABA_URL` (可选)
-讯飞星火Api Url.
+> 默认值: "https://dashscope.aliyuncs.com/api/"
-### `IFLYTEK_API_KEY` (可选)
+阿里云(千问)Api Url。
-讯飞星火Api Key.
+#### `IFLYTEK_API_KEY` (可选)
-### `IFLYTEK_API_SECRET` (可选)
+讯飞星火 Api Key。
-讯飞星火Api Secret.
+#### `IFLYTEK_API_SECRET` (可选)
-### `CHATGLM_API_KEY` (可选)
+讯飞星火 Api Secret。
-ChatGLM Api Key.
+#### `IFLYTEK_URL` (可选)
-### `CHATGLM_URL` (可选)
+> 默认值: "https://spark-api-open.xf-yun.com"
-ChatGLM Api Url.
+讯飞星火 Api Url。
+#### `MOONSHOT_API_KEY` (可选)
-### `HIDE_USER_API_KEY` (可选)
+Moonshot API 密钥。
-如果你不想让用户自行填入 API Key,将此环境变量设置为 1 即可。
+#### `MOONSHOT_URL` (可选)
-### `DISABLE_GPT4` (可选)
+> 默认值: "https://api.moonshot.cn"
-如果你不想让用户使用 GPT-4,将此环境变量设置为 1 即可。
+Moonshot API 地址。
-### `ENABLE_BALANCE_QUERY` (可选)
+#### `XAI_API_KEY` (可选)
-如果你想启用余额查询功能,将此环境变量设置为 1 即可。
+XAI API 密钥。
-### `DISABLE_FAST_LINK` (可选)
+#### `XAI_URL` (可选)
-如果你想禁用从链接解析预制设置,将此环境变量设置为 1 即可。
+> 默认值: "https://api.x.ai"
-### `WHITE_WEBDAV_ENDPOINTS` (可选)
+XAI API 地址。
-如果你想增加允许访问的webdav服务地址,可以使用该选项,格式要求:
-- 每一个地址必须是一个完整的 endpoint
-> `https://xxxx/xxx`
-- 多个地址以`,`相连
+#### `CHATGLM_API_KEY` (可选)
+
+ChatGLM Api Key。
+
+#### `CHATGLM_URL` (可选)
+
+> 默认值: "https://open.bigmodel.cn"
+
+ChatGLM Api Url。
+
+#### `TENCENT_SECRET_ID` (可选)
+
+腾讯云 Secret ID。
+
+#### `TENCENT_SECRET_KEY` (可选)
+
+腾讯云 Secret Key。
+
+#### `TENCENT_URL` (可选)
-### `CUSTOM_MODELS` (可选)
+> 默认值: "https://hunyuan.tencentcloudapi.com"
+
+腾讯云 API 地址。
+
+#### `CUSTOM_MODELS` (可选)
> 示例:`+qwen-7b-chat,+glm-6b,-gpt-3.5-turbo,gpt-4-1106-preview=gpt-4-turbo` 表示增加 `qwen-7b-chat` 和 `glm-6b` 到模型列表,而从列表中删除 `gpt-3.5-turbo`,并将 `gpt-4-1106-preview` 模型名字展示为 `gpt-4-turbo`。
> 如果你想先禁用所有模型,再启用指定模型,可以使用 `-all,+gpt-3.5-turbo`,则表示仅启用 `gpt-3.5-turbo`
@@ -230,23 +271,162 @@ ChatGLM Api Url.
在ByteDance的模式下,支持使用`modelName@bytedance=deploymentName`的方式配置模型名称和部署名称(deploy-name)
> 示例: `+Doubao-lite-4k@bytedance=ep-xxxxx-xxx`这个配置会在模型列表显示一个`Doubao-lite-4k(ByteDance)`的选项
+#### `DEFAULT_MODEL` (可选)
-### `DEFAULT_MODEL` (可选)
+> 默认值: 空
更改默认模型
-### `DEFAULT_INPUT_TEMPLATE` (可选)
+### 功能相关
+
+#### `HIDE_USER_API_KEY` (可选)
+
+> 默认值: 空
+
+如果你不想让用户自行填入 API Key,将此环境变量设置为 1 即可。
+
+#### `DISABLE_GPT4` (可选)
+
+> 默认值:空
+
+如果你不想让用户使用 GPT-4,将此环境变量设置为 1 即可。这将从模型列表中隐藏所有 GPT-4 相关的模型。
+
+#### `ENABLE_BALANCE_QUERY` (可选)
+
+> 默认值: 空
+
+如果你想启用余额查询功能,将此环境变量设置为 1 即可。
+
+#### `DISABLE_FAST_LINK` (可选)
+
+> 默认值: 空
+
+如果你想禁用从链接解析预制设置,将此环境变量设置为 1 即可。
+
+#### `CHAT_PAGE_SIZE` (可选)
+
+> 默认值: 15
+
+每页加载的聊天消息数量。
+
+#### `MAX_RENDER_MSG_COUNT` (可选)
+
+> 默认值: 45
+
+聊天窗口中最大渲染的消息数量。
+
+#### `DEFAULT_INPUT_TEMPLATE` (可选)
+
+> 默认值: "{{input}}"
自定义默认的 template,用于初始化『设置』中的『用户输入预处理』配置项
-### `STABILITY_API_KEY` (optional)
+### TTS 相关
+
+#### `DEFAULT_TTS_ENGINE` (可选)
+
+> 默认值: `OpenAI-TTS`
+
+默认的文字转语音引擎。
+
+#### `DEFAULT_TTS_ENGINES` (可选)
+
+> 默认值: `["OpenAI-TTS", "Edge-TTS"]`
+
+可用的文字转语音引擎列表。
+
+#### `DEFAULT_TTS_MODEL` (可选)
+
+> 默认值: `tts-1`
+
+默认的 OpenAI TTS 模型。
+
+#### `DEFAULT_TTS_VOICE` (可选)
+
+> 默认值: `alloy`
+
+默认的语音声音。
+
+#### `DEFAULT_TTS_MODELS` (可选)
+
+> 默认值: `["tts-1", "tts-1-hd"]`
+
+可用的 OpenAI TTS 模型列表。
+
+#### `DEFAULT_TTS_VOICES` (可选)
+
+> 默认值: `["alloy", "echo", "fable", "onyx", "nova", "shimmer"]`
+
+可用的语音声音列表。
+
+### 其他服务
+
+#### `WHITE_WEBDAV_ENDPOINTS` (可选)
+
+如果你想增加允许访问的webdav服务地址,可以使用该选项,格式要求:
+- 每一个地址必须是一个完整的 endpoint
+> `https://xxxx/xxx`
+- 多个地址以`,`相连
+
+#### `STABILITY_API_KEY` (optional)
+
+> 默认值: 空
Stability API密钥
-### `STABILITY_URL` (optional)
+#### `STABILITY_URL` (optional)
+
+> 默认值: "https://api.stability.ai"
自定义的Stability API请求地址
+#### `CLOUDFLARE_ACCOUNT_ID` (可选)
+
+> 默认值: 空
+
+Cloudflare 账户 ID。
+
+#### `CLOUDFLARE_KV_NAMESPACE_ID` (可选)
+
+> 默认值: 空
+
+Cloudflare KV 命名空间 ID。
+
+#### `CLOUDFLARE_KV_API_KEY` (可选)
+
+> 默认值: 空
+
+Cloudflare KV API 密钥。
+
+#### `CLOUDFLARE_KV_TTL` (可选)
+
+> 默认值: 空
+
+Cloudflare KV 缓存过期时间。
+
+#### `GTM_ID` (可选)
+
+> 默认值: 空
+
+Google Tag Manager ID。
+
+#### `GA_ID` (可选)
+
+> 默认值: "G-89WN60ZK2E"
+
+Google Analytics ID。如果不设置则使用默认值。
+
+#### `SAAS_CHAT_URL` (可选)
+
+> 默认值: "https://nextchat.dev/chat"
+
+SaaS 聊天 URL。
+
+#### `SAAS_CHAT_UTM_URL` (可选)
+
+> 默认值: "https://nextchat.dev/chat?utm=github"
+
+带 UTM 参数的 SaaS 聊天 URL。
## 开发
@@ -335,3 +515,5 @@ bash <(curl -s https://raw.githubusercontent.com/Yidadaa/ChatGPT-Next-Web/main/s
## 开源协议
[MIT](https://opensource.org/license/mit/)
+```
+
diff --git a/README_JA.md b/README_JA.md
index 062c112629d..9edb74b4cd9 100644
--- a/README_JA.md
+++ b/README_JA.md
@@ -3,6 +3,8 @@
NextChat
+[English](./README.md) / [简体中文](./README_CN.md) / 日本語
+
ワンクリックで無料であなた専用の ChatGPT ウェブアプリをデプロイ。GPT3、GPT4 & Gemini Pro モデルをサポート。
[NextChatAI](https://nextchat.dev/chat?utm_source=readme) / [企業版](#企業版) / [デモ](https://chat-gpt-next-web.vercel.app/) / [フィードバック](https://github.com/Yidadaa/ChatGPT-Next-Web/issues) / [Discordに参加](https://discord.gg/zrhvHCr79N)
@@ -90,19 +92,38 @@ code1,code2,code3
> 本プロジェクトのほとんどの設定は環境変数で行います。チュートリアル:[Vercel の環境変数を変更する方法](./docs/vercel-ja.md)。
-### `OPENAI_API_KEY` (必須)
+### 基本設定
+
+#### `OPENAI_API_KEY` (必須)
-OpenAI の API キー。OpenAI アカウントページで申請したキーをカンマで区切って複数設定できます。これにより、ランダムにキーが選択されます。
+OpenAI の API キー。複数のキーをカンマで区切って設定でき、ランダムに選択されます。
-### `CODE` (オプション)
+#### `CODE` (オプション)
+
+> デフォルト値: 空
アクセスパスワード。カンマで区切って複数設定可能。
**警告**:この項目を設定しないと、誰でもデプロイしたウェブサイトを利用でき、トークンが急速に消耗する可能性があるため、設定をお勧めします。
-### `BASE_URL` (オプション)
+#### `PROXY_URL` (オプション)
+
+> 例:`http://127.0.0.1:7890`
+
+プロキシサーバーの URL。HTTP および SOCKS プロキシをサポートしています。
+
+プロキシサーバーで認証が必要な場合は、以下の形式を使用できます:
+```bash
+http://username:password@127.0.0.1:7890
+```
+
+注意:この設定は Docker でデプロイする場合のみ有効です。
-> デフォルト: `https://api.openai.com`
+### モデル設定
+
+#### `BASE_URL` (オプション)
+
+> デフォルト値: `https://api.openai.com`
> 例: `http://your-openai-proxy.com`
@@ -110,116 +131,315 @@ OpenAI API のプロキシ URL。手動で OpenAI API のプロキシを設定
> SSL 証明書の問題がある場合は、`BASE_URL` のプロトコルを http に設定してください。
-### `OPENAI_ORG_ID` (オプション)
+#### `OPENAI_ORG_ID` (オプション)
+
+> デフォルト値: 空
OpenAI の組織 ID を指定します。
-### `AZURE_URL` (オプション)
+#### `AZURE_URL` (オプション)
> 形式: https://{azure-resource-url}/openai/deployments/{deploy-name}
-> `CUSTOM_MODELS` で `displayName` 形式で {deploy-name} を設定した場合、`AZURE_URL` から {deploy-name} を省略できます。
Azure のデプロイ URL。
-### `AZURE_API_KEY` (オプション)
+#### `AZURE_API_KEY` (オプション)
Azure の API キー。
-### `AZURE_API_VERSION` (オプション)
+#### `AZURE_API_VERSION` (オプション)
Azure API バージョン。[Azure ドキュメント](https://learn.microsoft.com/en-us/azure/ai-services/openai/reference#chat-completions)で確認できます。
-### `GOOGLE_API_KEY` (オプション)
+### その他のモデルプロバイダー
+
+#### `GOOGLE_API_KEY` (オプション)
Google Gemini Pro API キー。
-### `GOOGLE_URL` (オプション)
+#### `GOOGLE_URL` (オプション)
+
+> デフォルト値: "https://generativelanguage.googleapis.com/"
Google Gemini Pro API の URL。
-### `ANTHROPIC_API_KEY` (オプション)
+#### `ANTHROPIC_API_KEY` (オプション)
Anthropic Claude API キー。
-### `ANTHROPIC_API_VERSION` (オプション)
+#### `ANTHROPIC_API_VERSION` (オプション)
Anthropic Claude API バージョン。
-### `ANTHROPIC_URL` (オプション)
+#### `ANTHROPIC_URL` (オプション)
+
+> デフォルト値: "https://api.anthropic.com"
Anthropic Claude API の URL。
-### `BAIDU_API_KEY` (オプション)
+#### `BAIDU_API_KEY` (オプション)
Baidu API キー。
-### `BAIDU_SECRET_KEY` (オプション)
+#### `BAIDU_SECRET_KEY` (オプション)
Baidu シークレットキー。
-### `BAIDU_URL` (オプション)
+#### `BAIDU_URL` (オプション)
+
+> デフォルト値: "https://aip.baidubce.com"
Baidu API の URL。
-### `BYTEDANCE_API_KEY` (オプション)
+#### `BYTEDANCE_API_KEY` (オプション)
ByteDance API キー。
-### `BYTEDANCE_URL` (オプション)
+#### `BYTEDANCE_URL` (オプション)
+
+> デフォルト値: "https://ark.cn-beijing.volces.com/api/"
ByteDance API の URL。
-### `ALIBABA_API_KEY` (オプション)
+#### `ALIBABA_API_KEY` (オプション)
アリババ(千问)API キー。
-### `ALIBABA_URL` (オプション)
+#### `ALIBABA_URL` (オプション)
+
+> デフォルト値: "https://dashscope.aliyuncs.com/api/"
アリババ(千问)API の URL。
-### `HIDE_USER_API_KEY` (オプション)
+#### `IFLYTEK_API_KEY` (オプション)
-ユーザーが API キーを入力できないようにしたい場合は、この環境変数を 1 に設定します。
+讯飞星火 API キー。
-### `DISABLE_GPT4` (オプション)
+#### `IFLYTEK_API_SECRET` (オプション)
-ユーザーが GPT-4 を使用できないようにしたい場合は、この環境変数を 1 に設定します。
+讯飞星火 API シークレット。
-### `ENABLE_BALANCE_QUERY` (オプション)
+#### `IFLYTEK_URL` (オプション)
-バランスクエリ機能を有効にしたい場合は、この環境変数を 1 に設定します。
+> デフォルト値: "https://spark-api-open.xf-yun.com"
-### `DISABLE_FAST_LINK` (オプション)
+讯飞星火 API の URL。
-リンクからのプリセット設定解析を無効にしたい場合は、この環境変数を 1 に設定します。
+#### `MOONSHOT_API_KEY` (オプション)
-### `WHITE_WEBDAV_ENDPOINTS` (オプション)
+Moonshot API キー。
-アクセス許可を与える WebDAV サービスのアドレスを追加したい場合、このオプションを使用します。フォーマット要件:
-- 各アドレスは完全なエンドポイントでなければなりません。
-> `https://xxxx/xxx`
-- 複数のアドレスは `,` で接続します。
+#### `MOONSHOT_URL` (オプション)
+
+> デフォルト値: "https://api.moonshot.cn"
+
+Moonshot API の URL。
+
+#### `XAI_API_KEY` (オプション)
+
+XAI API キー。
+
+#### `XAI_URL` (オプション)
+
+> デフォルト値: "https://api.x.ai"
+
+XAI API の URL。
+
+#### `CHATGLM_API_KEY` (オプション)
+
+ChatGLM API キー。
-### `CUSTOM_MODELS` (オプション)
+#### `CHATGLM_URL` (オプション)
-> 例:`+qwen-7b-chat,+glm-6b,-gpt-3.5-turbo,gpt-4-1106-preview=gpt-4-turbo` は `qwen-7b-chat` と `glm-6b` をモデルリストに追加し、`gpt-3.5-turbo` を削除し、`gpt-4-1106-preview` のモデル名を `gpt-4-turbo` として表示します。
-> すべてのモデルを無効にし、特定のモデルを有効にしたい場合は、`-all,+gpt-3.5-turbo` を使用します。これは `gpt-3.5-turbo` のみを有効にすることを意味します。
+> デフォルト値: "https://open.bigmodel.cn"
+
+ChatGLM API の URL。
+
+#### `TENCENT_SECRET_ID` (オプション)
+
+Tencent Cloud シークレット ID。
+
+#### `TENCENT_SECRET_KEY` (オプション)
+
+Tencent Cloud シークレットキー。
+
+#### `TENCENT_URL` (オプション)
+
+> デフォルト値: "https://hunyuan.tencentcloudapi.com"
+
+Tencent Cloud API の URL。
+
+#### `CUSTOM_MODELS` (オプション)
+
+> 例:`+llama,+claude-2,-gpt-3.5-turbo,gpt-4-1106-preview=gpt-4-turbo` は `llama, claude-2` をモデルリストに追加し、`gpt-3.5-turbo` を削除し、`gpt-4-1106-preview` のモデル名を `gpt-4-turbo` として表示します。
モデルリストを管理します。`+` でモデルを追加し、`-` でモデルを非表示にし、`モデル名=表示名` でモデルの表示名をカスタマイズし、カンマで区切ります。
-Azure モードでは、`modelName@Azure=deploymentName` 形式でモデル名とデプロイ名(deploy-name)を設定できます。
+`-all` ですべてのデフォルトモデルを無効にし、`+all` ですべてのデフォルトモデルを有効にします。
+
+Azure モードでは、`modelName@Azure=deploymentName` 形式でモデル名とデプロイ名を設定できます。
> 例:`+gpt-3.5-turbo@Azure=gpt35` この設定でモデルリストに `gpt35(Azure)` のオプションが表示されます。
+> Azure モデルのみを使用する場合は、`-all,+gpt-3.5-turbo@Azure=gpt35` を設定すると `gpt35(Azure)` のみが選択可能になります。
-ByteDance モードでは、`modelName@bytedance=deploymentName` 形式でモデル名とデプロイ名(deploy-name)を設定できます。
+ByteDance モードでは、`modelName@bytedance=deploymentName` 形式でモデル名とデプロイ名を設定できます。
> 例: `+Doubao-lite-4k@bytedance=ep-xxxxx-xxx` この設定でモデルリストに `Doubao-lite-4k(ByteDance)` のオプションが表示されます。
-### `DEFAULT_MODEL` (オプション)
+#### `DEFAULT_MODEL` (オプション)
+
+> デフォルト値: 空
デフォルトのモデルを変更します。
-### `DEFAULT_INPUT_TEMPLATE` (オプション)
+### 機能関連
+
+#### `HIDE_USER_API_KEY` (オプション)
+
+> デフォルト値: 空
+
+ユーザーが API キーを入力できないようにしたい場合は、この環境変数を 1 に設定します。
+
+#### `DISABLE_GPT4` (オプション)
+
+> デフォルト値:空
+
+ユーザーが GPT-4 を使用できないようにしたい場合は、この環境変数を 1 に設定します。これにより、モデルリストから GPT-4 関連のすべてのモデルが非表示になります。
+
+#### `ENABLE_BALANCE_QUERY` (オプション)
+
+> デフォルト値: 空
+
+バランスクエリ機能を有効にしたい場合は、この環境変数を 1 に設定します。
+
+#### `DISABLE_FAST_LINK` (オプション)
+
+> デフォルト値: 空
+
+リンクからのプリセット設定解析を無効にしたい場合は、この環境変数を 1 に設定します。
+
+#### `CHAT_PAGE_SIZE` (オプション)
+
+> デフォルト値: 15
+
+1ページあたりのチャットメッセージ数。
+
+#### `MAX_RENDER_MSG_COUNT` (オプション)
+
+> デフォルト値: 45
+
+チャットウィンドウに表示できるメッセージの最大数。
+
+#### `DEFAULT_INPUT_TEMPLATE` (オプション)
+
+> デフォルト値: "{{input}}"
+
+『設定』の『ユーザー入力前処理』の初期設定に使用するテンプレート。
+
+### TTS 関連
+
+#### `DEFAULT_TTS_ENGINE` (オプション)
+
+> デフォルト値: `OpenAI-TTS`
+
+デフォルトの音声合成エンジン。
+
+#### `DEFAULT_TTS_ENGINES` (オプション)
+
+> デフォルト値: `["OpenAI-TTS", "Edge-TTS"]`
+
+利用可能な音声合成エンジンのリスト。
+
+#### `DEFAULT_TTS_MODEL` (オプション)
+
+> デフォルト値: `tts-1`
+
+デフォルトの OpenAI TTS モデル。
+
+#### `DEFAULT_TTS_VOICE` (オプション)
+
+> デフォルト値: `alloy`
+
+デフォルトの音声。
+
+#### `DEFAULT_TTS_MODELS` (オプション)
+
+> デフォルト値: `["tts-1", "tts-1-hd"]`
+
+利用可能な OpenAI TTS モデルのリスト。
+
+#### `DEFAULT_TTS_VOICES` (オプション)
+
+> デフォルト値: `["alloy", "echo", "fable", "onyx", "nova", "shimmer"]`
+
+利用可能な音声のリスト。
+
+### その他のサービス
+
+#### `WHITE_WEBDAV_ENDPOINTS` (オプション)
+
+アクセスを許可する WebDAV サービスのアドレスを追加する場合に使用します。フォーマット要件:
+- 各アドレスは完全なエンドポイントである必要があります
+> `https://xxxx/xxx`
+- 複数のアドレスは `,` で接続します
+
+#### `STABILITY_API_KEY` (オプション)
+
+> デフォルト値: 空
+
+Stability API キー。
+
+#### `STABILITY_URL` (オプション)
+
+> デフォルト値: "https://api.stability.ai"
+
+カスタム Stability API の URL。
+
+#### `CLOUDFLARE_ACCOUNT_ID` (オプション)
+
+> デフォルト値: 空
+
+Cloudflare アカウント ID。
+
+#### `CLOUDFLARE_KV_NAMESPACE_ID` (オプション)
+
+> デフォルト値: 空
+
+Cloudflare KV ネームスペース ID。
+
+#### `CLOUDFLARE_KV_API_KEY` (オプション)
+
+> デフォルト値: 空
+
+Cloudflare KV API キー。
+
+#### `CLOUDFLARE_KV_TTL` (オプション)
+
+> デフォルト値: 空
+
+Cloudflare KV キャッシュの有効期限。
+
+#### `GTM_ID` (オプション)
+
+> デフォルト値: 空
+
+Google Tag Manager ID。
+
+#### `GA_ID` (オプション)
+
+> デフォルト値: "G-89WN60ZK2E"
+
+Google Analytics ID。設定されていない場合はデフォルト値を使用します。
+
+#### `SAAS_CHAT_URL` (オプション)
+
+> デフォルト値: "https://nextchat.dev/chat"
+
+SaaS チャット URL。
+
+#### `SAAS_CHAT_UTM_URL` (オプション)
+
+> デフォルト値: "https://nextchat.dev/chat?utm=github"
-『設定』の『ユーザー入力前処理』の初期設定に使用するテンプレートをカスタマイズします。
+UTM パラメータ付きの SaaS チャット URL。
## 開発
diff --git a/docs/vercel-en.md b/docs/vercel-en.md
new file mode 100644
index 00000000000..cf09313a835
--- /dev/null
+++ b/docs/vercel-en.md
@@ -0,0 +1,39 @@
+# Vercel Usage Instructions
+
+## How to Create a New Project
+After forking this project from Github, you need to create a new Vercel project in Vercel to redeploy it. Follow these steps:
+
+![vercel-create-1](./images/vercel/vercel-create-1.jpg)
+1. Go to the Vercel console homepage;
+2. Click "Add New";
+3. Select "Project".
+
+![vercel-create-2](./images/vercel/vercel-create-2.jpg)
+1. In Import Git Repository, search for chatgpt-next-web;
+2. Select the newly forked project and click Import.
+
+![vercel-create-3](./images/vercel/vercel-create-3.jpg)
+1. On the project configuration page, click Environment Variables to start configuring environment variables;
+2. Add environment variables named OPENAI_API_KEY and CODE ([access password](https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/blob/main/docs/faq-en.md#what-is-the-environment-variable-code-is-it-necessary-to-set-it));
+3. Fill in the corresponding values for the environment variables;
+4. Click Add to confirm adding the environment variables;
+5. Make sure you've added OPENAI_API_KEY, otherwise it won't work;
+6. Click Deploy, complete the creation, and wait patiently for about 5 minutes for deployment to complete.
+
+## How to Add a Custom Domain
+[TODO]
+
+## How to Change Environment Variables
+![vercel-env-edit](./images/vercel/vercel-env-edit.jpg)
+1. Go to the Vercel project internal console and click the Settings button at the top;
+2. Click Environment Variables on the left;
+3. Click the button on the right of an existing entry;
+4. Select Edit to make changes, then save.
+
+⚠️️ Note: Every time you modify environment variables, you need to [redeploy the project](#how-to-redeploy) to make the changes take effect!
+
+## How to Redeploy
+![vercel-redeploy](./images/vercel/vercel-redeploy.jpg)
+1. Go to the Vercel project internal console and click the Deployments button at the top;
+2. Select the button on the right of the topmost item in the list;
+3. Click Redeploy to start redeployment.