diff --git a/apps/chuanhuchat/README.md b/apps/chuanhuchat/README.md
new file mode 100644
index 00000000..8b557bfc
--- /dev/null
+++ b/apps/chuanhuchat/README.md
@@ -0,0 +1,183 @@
+# 使用说明
+
+## 功能相关由`config.json`决定,配置问题注意查看官方文档与教程
+
+- https://github.com/GaiZhenbiao/ChuanhuChatGPT/wiki
+
+# 原始相关
+***
+
+
+川虎 Chat 🐯 Chuanhu Chat
+
+
+
+
+
+
+
为ChatGPT等多种LLM提供了一个轻快好用的Web图形界面和众多附加功能
+
+
+
+
+
+
+
+
+
+
+
+ 支持 GPT-4 · 基于文件问答 · LLM本地部署 · 联网搜索 · Agent 助理 · 支持 Fine-tune
+
+
视频教程
+ ·
+
2.0介绍视频
+ ||
+
在线体验
+ ·
+
一键部署
+
+
+
+
+[](https://github.com/GaiZhenbiao/ChuanhuChatGPT/assets/51039745/0eee1598-c2fd-41c6-bda9-7b059a3ce6e7?autoplay=1)
+
+## 目录
+
+| [支持模型](#支持模型) | [使用技巧](#使用技巧) | [安装方式](https://github.com/GaiZhenbiao/ChuanhuChatGPT/wiki/使用教程) | [常见问题](https://github.com/GaiZhenbiao/ChuanhuChatGPT/wiki/常见问题) | [给作者买可乐🥤](#捐款) | [加入Telegram群组](https://t.me/tkdifferent) |
+| --- | --- | --- | --- | --- | --- |
+
+## 支持模型
+
+| API 调用模型 | 备注 | 本地部署模型 | 备注 |
+| :---: | --- | :---: | --- |
+| [ChatGPT(GPT-4)](https://chat.openai.com) | 支持微调 gpt-3.5 | [ChatGLM](https://github.com/THUDM/ChatGLM-6B) ([ChatGLM2](https://github.com/THUDM/ChatGLM2-6B)) |
+| [Azure OpenAI](https://azure.microsoft.com/en-us/products/ai-services/openai-service) | | [LLaMA](https://github.com/facebookresearch/llama) | 支持 Lora 模型
+| [Google PaLM](https://developers.generativeai.google/products/palm) | 不支持流式传输 | [StableLM](https://github.com/Stability-AI/StableLM)
+| [讯飞星火认知大模型](https://xinghuo.xfyun.cn) | | [MOSS](https://github.com/OpenLMLab/MOSS)
+| [Inspur Yuan 1.0](https://air.inspur.com/home) | | [通义千问](https://github.com/QwenLM/Qwen/tree/main)
+| [MiniMax](https://api.minimax.chat/) |
+| [XMChat](https://github.com/MILVLG/xmchat) | 不支持流式传输
+| [Midjourney](https://www.midjourney.com/) | 不支持流式传输
+| [Claude](https://www.anthropic.com/) |
+| DALL·E 3 |
+
+## 使用技巧
+
+### 💪 强力功能
+- **川虎助理**:类似 AutoGPT,全自动解决你的问题;
+- **在线搜索**:ChatGPT 的数据太旧?给 LLM 插上网络的翅膀;
+- **知识库**:让 ChatGPT 帮你量子速读!根据文件回答问题。
+- **本地部署LLM**:一键部署,获取属于你自己的大语言模型。
+
+### 🤖 System Prompt
+- 通过 System Prompt 设定前提条件,可以很有效地进行角色扮演;
+- 川虎Chat 预设了Prompt模板,点击`加载Prompt模板`,先选择 Prompt 模板集合,然后在下方选择想要的 Prompt。
+
+### 💬 基础对话
+- 如果回答不满意,可以使用 `重新生成` 按钮再试一次,或者直接 `删除这轮对话`;
+- 输入框支持换行,按 Shift + Enter即可;
+- 在输入框按 ↑ ↓ 方向键,可以在发送记录中快速切换;
+- 每次新建一个对话太麻烦,试试 `单论对话` 功能;
+- 回答气泡旁边的小按钮,不仅能 `一键复制`,还能 `查看Markdown原文`;
+- 指定回答语言,让 ChatGPT 固定以某种语言回答。
+
+### 📜 对话历史
+- 对话历史记录会被自动保存,不用担心问完之后找不到了;
+- 多用户历史记录隔离,除了你都看不到;
+- 重命名历史记录,方便日后查找;
+- New! 魔法般自动命名历史记录,让 LLM 理解对话内容,帮你自动为历史记录命名!
+- New! 搜索历史记录,支持正则表达式!
+
+### 🖼️ 小而美的体验
+- 自研 Small-and-Beautiful 主题,带给你小而美的体验;
+- 自动亮暗色切换,给你从早到晚的舒适体验;
+- 完美渲染 LaTeX / 表格 / 代码块,支持代码高亮;
+- New! 非线性动画、毛玻璃效果,精致得不像 Gradio!
+- New! 适配 Windows / macOS / Linux / iOS / Android,从图标到全面屏适配,给你最合适的体验!
+- New! 支持以 PWA应用程序 安装,体验更加原生!
+
+### 👨💻 极客功能
+- New! 支持 Fine-tune(微调)gpt-3.5!
+- 大量 LLM 参数可调;
+- 支持更换 api-host;
+- 支持自定义代理;
+- 支持多 api-key 负载均衡。
+
+### ⚒️ 部署相关
+- 部署到服务器:在 `config.json` 中设置 `"server_name": "0.0.0.0", "server_port": <你的端口号>,`。
+- 获取公共链接:在 `config.json` 中设置 `"share": true,`。注意程序必须在运行,才能通过公共链接访问。
+- 在Hugging Face上使用:建议在右上角 **复制Space** 再使用,这样App反应可能会快一点。
+
+## 快速上手
+
+在终端执行以下命令:
+
+```shell
+git clone https://github.com/GaiZhenbiao/ChuanhuChatGPT.git
+cd ChuanhuChatGPT
+pip install -r requirements.txt
+```
+
+然后,在项目文件夹中复制一份 `config_example.json`,并将其重命名为 `config.json`,在其中填入 `API-Key` 等设置。
+
+```shell
+python ChuanhuChatbot.py
+```
+
+一个浏览器窗口将会自动打开,此时您将可以使用 **川虎Chat** 与ChatGPT或其他模型进行对话。
+
+> **Note**
+>
+> 具体详尽的安装教程和使用教程请查看[本项目的wiki页面](https://github.com/GaiZhenbiao/ChuanhuChatGPT/wiki/使用教程)。
+
+## 疑难杂症解决
+
+在遇到各种问题查阅相关信息前,您可以先尝试 **手动拉取本项目的最新更改1** 并 **更新依赖库2**,然后重试。步骤为:
+
+1. 点击网页上的 `Download ZIP` 按钮,下载最新代码并解压覆盖,或
+ ```shell
+ git pull https://github.com/GaiZhenbiao/ChuanhuChatGPT.git main -f
+ ```
+2. 尝试再次安装依赖(可能本项目引入了新的依赖)
+ ```
+ pip install -r requirements.txt
+ ```
+
+很多时候,这样就可以解决问题。
+
+如果问题仍然存在,请查阅该页面:[常见问题](https://github.com/GaiZhenbiao/ChuanhuChatGPT/wiki/常见问题)
+
+该页面列出了**几乎所有**您可能遇到的各种问题,包括如何配置代理,以及遇到问题后您该采取的措施,**请务必认真阅读**。
+
+## 了解更多
+
+若需了解更多信息,请查看我们的 [wiki](https://github.com/GaiZhenbiao/ChuanhuChatGPT/wiki):
+
+- [想要做出贡献?](https://github.com/GaiZhenbiao/ChuanhuChatGPT/wiki/贡献指南)
+- [项目更新情况?](https://github.com/GaiZhenbiao/ChuanhuChatGPT/wiki/更新日志)
+- [二次开发许可?](https://github.com/GaiZhenbiao/ChuanhuChatGPT/wiki/使用许可)
+- [如何引用项目?](https://github.com/GaiZhenbiao/ChuanhuChatGPT/wiki/使用许可#如何引用该项目)
+
+## Starchart
+
+[](https://star-history.com/#GaiZhenbiao/ChuanhuChatGPT&Date)
+
+## Contributors
+
+
+
+
+
+## 捐款
+
+🐯如果觉得这个软件对你有所帮助,欢迎请作者喝可乐、喝咖啡~
+
+联系作者:请去[我的bilibili账号](https://space.bilibili.com/29125536)私信我。
+
+
+
+
diff --git a/apps/chuanhuchat/data.yml b/apps/chuanhuchat/data.yml
new file mode 100644
index 00000000..ddd3782a
--- /dev/null
+++ b/apps/chuanhuchat/data.yml
@@ -0,0 +1,20 @@
+name: 川虎 Chat (Chuanhu Chat)
+tags:
+ - 工具
+title: 为多种 LLM 提供了一个轻快好用的 Web 图形界面和众多附加功能
+type: 工具
+description: 为多种 LLM 提供了一个轻快好用的 Web 图形界面和众多附加功能
+additionalProperties:
+ key: chuanhuchat
+ name: 川虎 Chat (Chuanhu Chat)
+ tags:
+ - Tool
+ shortDescZh: 为多种 LLM 提供了一个轻快好用的 Web 图形界面和众多附加功能
+ shortDescEn: Lightweight and User-friendly Web-UI for LLMs
+ type: tool
+ crossVersionUpdate: true
+ limit: 0
+ recommend: 0
+ website: https://github.com/GaiZhenbiao/ChuanhuChatGPT
+ github: https://github.com/GaiZhenbiao/ChuanhuChatGPT
+ document: https://github.com/GaiZhenbiao/ChuanhuChatGPT/wiki
diff --git a/apps/chuanhuchat/latest/.env.sample b/apps/chuanhuchat/latest/.env.sample
new file mode 100644
index 00000000..44077e2a
--- /dev/null
+++ b/apps/chuanhuchat/latest/.env.sample
@@ -0,0 +1,2 @@
+CONTAINER_NAME="chuanhuchat"
+PANEL_APP_PORT_HTTP="40193"
diff --git a/apps/chuanhuchat/latest/data.yml b/apps/chuanhuchat/latest/data.yml
new file mode 100644
index 00000000..27359aaf
--- /dev/null
+++ b/apps/chuanhuchat/latest/data.yml
@@ -0,0 +1,10 @@
+additionalProperties:
+ formFields:
+ - default: 40193
+ edit: true
+ envKey: PANEL_APP_PORT_HTTP
+ labelEn: Port
+ labelZh: 端口
+ required: true
+ rule: paramPort
+ type: number
diff --git a/apps/chuanhuchat/latest/data/config.json b/apps/chuanhuchat/latest/data/config.json
new file mode 100644
index 00000000..1119150e
--- /dev/null
+++ b/apps/chuanhuchat/latest/data/config.json
@@ -0,0 +1,64 @@
+{
+ "openai_api_key": "",
+ "google_palm_api_key": "",
+ "xmchat_api_key": "",
+ "minimax_api_key": "",
+ "minimax_group_id": "",
+ "midjourney_proxy_api_base": "",
+ "midjourney_proxy_api_secret": "",
+ "midjourney_discord_proxy_url": "",
+ "midjourney_temp_folder": "./tmp",
+ "spark_appid": "",
+ "spark_api_key": "",
+ "spark_api_secret": "",
+ "claude_api_secret":"",
+ "ernie_api_key": "",
+ "ernie_secret_key": "",
+
+
+
+ "openai_api_type": "openai",
+ "azure_openai_api_key": "",
+ "azure_openai_api_base_url": "",
+ "azure_openai_api_version": "2023-05-15",
+ "azure_deployment_name": "",
+ "azure_embedding_deployment_name": "",
+ "azure_embedding_model_name": "text-embedding-ada-002",
+
+
+ "language": "zh_CN",
+ "users": [],
+ "local_embedding": false,
+ "hide_history_when_not_logged_in": false,
+ "check_update": true,
+ "default_model": "GPT3.5 Turbo",
+ "chat_name_method_index": 2,
+ "bot_avatar": "default",
+ "user_avatar": "default",
+
+
+ "show_api_billing": false,
+ "sensitive_id": "",
+ "usage_limit": 120,
+ "legacy_api_usage": false,
+
+
+ "default_chuanhu_assistant_model": "gpt-4",
+ "GOOGLE_CSE_ID": "",
+ "GOOGLE_API_KEY": "",
+ "WOLFRAM_ALPHA_APPID": "",
+ "SERPAPI_API_KEY": "",
+
+
+ "latex_option": "default",
+ "advance_docs": {
+ "pdf": {
+ "two_column": false,
+ "formula_ocr": true
+ }
+ },
+
+
+ "multi_api_key": false,
+ "hide_my_key": false
+}
diff --git a/apps/chuanhuchat/latest/data/config_example.json b/apps/chuanhuchat/latest/data/config_example.json
new file mode 100644
index 00000000..9c4180d1
--- /dev/null
+++ b/apps/chuanhuchat/latest/data/config_example.json
@@ -0,0 +1,87 @@
+{
+ // 各配置具体说明,见 [https://github.com/GaiZhenbiao/ChuanhuChatGPT/wiki/使用教程#配置-configjson]
+
+ //== API 配置 ==
+ "openai_api_key": "", // 你的 OpenAI API Key,一般必填,若空缺则需在图形界面中填入API Key
+ "google_palm_api_key": "", // 你的 Google PaLM API Key,用于 Google PaLM 对话模型
+ "xmchat_api_key": "", // 你的 xmchat API Key,用于 XMChat 对话模型
+ "minimax_api_key": "", // 你的 MiniMax API Key,用于 MiniMax 对话模型
+ "minimax_group_id": "", // 你的 MiniMax Group ID,用于 MiniMax 对话模型
+ "midjourney_proxy_api_base": "https://xxx/mj", // 你的 https://github.com/novicezk/midjourney-proxy 代理地址
+ "midjourney_proxy_api_secret": "", // 你的 MidJourney Proxy API Secret,用于鉴权访问 api,可选
+ "midjourney_discord_proxy_url": "", // 你的 MidJourney Discord Proxy URL,用于对生成对图进行反代,可选
+ "midjourney_temp_folder": "./tmp", // 你的 MidJourney 临时文件夹,用于存放生成的图片,填空则关闭自动下载切图(直接显示MJ的四宫格图)
+ "spark_appid": "", // 你的 讯飞星火大模型 API AppID,用于讯飞星火大模型对话模型
+ "spark_api_key": "", // 你的 讯飞星火大模型 API Key,用于讯飞星火大模型对话模型
+ "spark_api_secret": "", // 你的 讯飞星火大模型 API Secret,用于讯飞星火大模型对话模型
+ "claude_api_secret":"",// 你的 Claude API Secret,用于 Claude 对话模型
+ "ernie_api_key": "",// 你的文心一言在百度云中的API Key,用于文心一言对话模型
+ "ernie_secret_key": "",// 你的文心一言在百度云中的Secret Key,用于文心一言对话模型
+
+
+ //== Azure ==
+ "openai_api_type": "openai", // 可选项:azure, openai
+ "azure_openai_api_key": "", // 你的 Azure OpenAI API Key,用于 Azure OpenAI 对话模型
+ "azure_openai_api_base_url": "", // 你的 Azure Base URL
+ "azure_openai_api_version": "2023-05-15", // 你的 Azure OpenAI API 版本
+ "azure_deployment_name": "", // 你的 Azure OpenAI Chat 模型 Deployment 名称
+ "azure_embedding_deployment_name": "", // 你的 Azure OpenAI Embedding 模型 Deployment 名称
+ "azure_embedding_model_name": "text-embedding-ada-002", // 你的 Azure OpenAI Embedding 模型名称
+
+ //== 基础配置 ==
+ "language": "auto", // 界面语言,可选"auto", "zh_CN", "en_US", "ja_JP", "ko_KR", "sv_SE", "ru_RU", "vi_VN"
+ "users": [], // 用户列表,[[用户名1, 密码1], [用户名2, 密码2], ...]
+ "local_embedding": false, //是否在本地编制索引
+ "hide_history_when_not_logged_in": false, //未登录情况下是否不展示对话历史
+ "check_update": true, //是否启用检查更新
+ "default_model": "GPT3.5 Turbo", // 默认模型
+ "chat_name_method_index": 2, // 选择对话名称的方法。0: 使用日期时间命名;1: 使用第一条提问命名,2: 使用模型自动总结
+ "bot_avatar": "default", // 机器人头像,可填写本地或网络图片链接,或者"none"(不显示头像)
+ "user_avatar": "default", // 用户头像,可填写本地或网络图片链接,或者"none"(不显示头像)
+
+ //== API 用量 ==
+ "show_api_billing": false, //是否显示OpenAI API用量(启用需要填写sensitive_id)
+ "sensitive_id": "", // 你 OpenAI 账户的 Sensitive ID,用于查询 API 用量
+ "usage_limit": 120, // 该 OpenAI API Key 的当月限额,单位:美元,用于计算百分比和显示上限
+ "legacy_api_usage": false, // 是否使用旧版 API 用量查询接口(OpenAI现已关闭该接口,但是如果你在使用第三方 API,第三方可能仍然支持此接口)
+
+ //== 川虎助理设置 ==
+ "default_chuanhu_assistant_model": "gpt-4", //川虎助理使用的模型,可选gpt-3.5-turbo或者gpt-4等
+ "GOOGLE_CSE_ID": "", //谷歌搜索引擎ID,用于川虎助理Pro模式,获取方式请看 https://stackoverflow.com/questions/37083058/programmatically-searching-google-in-python-using-custom-search
+ "GOOGLE_API_KEY": "", //谷歌API Key,用于川虎助理Pro模式
+ "WOLFRAM_ALPHA_APPID": "", //Wolfram Alpha API Key,用于川虎助理Pro模式,获取方式请看 https://products.wolframalpha.com/api/
+ "SERPAPI_API_KEY": "", //SerpAPI API Key,用于川虎助理Pro模式,获取方式请看 https://serpapi.com/
+
+ //== 文档处理与显示 ==
+ "latex_option": "default", // LaTeX 公式渲染策略,可选"default", "strict", "all"或者"disabled"
+ "advance_docs": {
+ "pdf": {
+ "two_column": false, // 是否认为PDF是双栏的
+ "formula_ocr": true // 是否使用OCR识别PDF中的公式
+ }
+ },
+
+ //== 高级配置 ==
+ // 是否多个API Key轮换使用
+ "multi_api_key": false,
+ "hide_my_key": false, // 如果你想在UI中隐藏 API 密钥输入框,将此值设置为 true
+ // "available_models": ["GPT3.5 Turbo", "GPT4 Turbo", "GPT4 Vision"], // 可用的模型列表,将覆盖默认的可用模型列表
+ // "extra_models": ["模型名称3", "模型名称4", ...], // 额外的模型,将添加到可用的模型列表之后
+ // "api_key_list": [
+ // "sk-xxxxxxxxxxxxxxxxxxxxxxxx1",
+ // "sk-xxxxxxxxxxxxxxxxxxxxxxxx2",
+ // "sk-xxxxxxxxxxxxxxxxxxxxxxxx3"
+ // ],
+ // 自定义OpenAI API Base
+ // "openai_api_base": "https://api.openai.com",
+ // 自定义使用代理(请替换代理URL)
+ // "https_proxy": "http://127.0.0.1:1079",
+ // "http_proxy": "http://127.0.0.1:1079",
+ // 自定义端口、自定义ip(请替换对应内容)
+ // "server_name": "0.0.0.0",
+ // "server_port": 7860,
+ // 如果要share到gradio,设置为true
+ // "share": false,
+ //如果不想自动打开浏览器,设置为false
+ //"autobrowser": false
+}
diff --git a/apps/chuanhuchat/latest/docker-compose.yml b/apps/chuanhuchat/latest/docker-compose.yml
new file mode 100644
index 00000000..a5bdab20
--- /dev/null
+++ b/apps/chuanhuchat/latest/docker-compose.yml
@@ -0,0 +1,19 @@
+version: '3'
+services:
+ chuanhuchat:
+ container_name: ${CONTAINER_NAME}
+ restart: always
+ networks:
+ - 1panel-network
+ ports:
+ - "${PANEL_APP_PORT_HTTP}:7860"
+ volumes:
+ - ./data/history:/app/history
+ - ./data/config.json:/app/config.json
+ image: tuchuanhuhuhu/chuanhuchatgpt:latest
+ labels:
+ createdBy: "Apps"
+
+networks:
+ 1panel-network:
+ external: true
diff --git a/apps/chuanhuchat/logo.png b/apps/chuanhuchat/logo.png
new file mode 100644
index 00000000..4cb36f46
Binary files /dev/null and b/apps/chuanhuchat/logo.png differ