feat:添加川虎Chat到列表

This commit is contained in:
okxlin 2024-01-10 15:24:07 +08:00
parent 1ad549c540
commit fee0f86fe8
8 changed files with 385 additions and 0 deletions

183
apps/chuanhuchat/README.md Normal file
View File

@ -0,0 +1,183 @@
# 使用说明
## 功能相关由`config.json`决定,配置问题注意查看官方文档与教程
- https://github.com/GaiZhenbiao/ChuanhuChatGPT/wiki
# 原始相关
***
<div align="right">
<!-- 语言: -->
简体中文 | <a title="English" href="https://github.com/GaiZhenbiao/ChuanhuChatGPT/blob/main/readme/README_en.md">English</a> | <a title="Japanese" href="https://github.com/GaiZhenbiao/ChuanhuChatGPT/blob/main/readme/README_ja.md">日本語</a> | <a title="Russian" href="https://github.com/GaiZhenbiao/ChuanhuChatGPT/blob/main/readme/README_ru.md">Russian</a> | <a title="Korean" href="https://github.com/GaiZhenbiao/ChuanhuChatGPT/blob/main/readme/README_ko.md">한국어</a>
</div>
<h1 align="center">川虎 Chat 🐯 Chuanhu Chat</h1>
<div align="center">
<a href="https://github.com/GaiZhenBiao/ChuanhuChatGPT">
<img src="https://github.com/GaiZhenbiao/ChuanhuChatGPT/assets/70903329/aca3a7ec-4f1d-4667-890c-a6f47bf08f63" alt="Logo" height="156">
</a>
<p align="center">
<h3>为ChatGPT等多种LLM提供了一个轻快好用的Web图形界面和众多附加功能</h3>
<p align="center">
<a href="https://github.com/GaiZhenbiao/ChuanhuChatGPT/blob/main/LICENSE">
<img alt="Tests Passing" src="https://img.shields.io/github/license/GaiZhenbiao/ChuanhuChatGPT" />
</a>
<a href="https://gradio.app/">
<img alt="GitHub Contributors" src="https://img.shields.io/badge/Base-Gradio-fb7d1a?style=flat" />
</a>
<a href="https://t.me/tkdifferent">
<img alt="GitHub pull requests" src="https://img.shields.io/badge/Telegram-Group-blue.svg?logo=telegram" />
</a>
<p>
支持 GPT-4 · 基于文件问答 · LLM本地部署 · 联网搜索 · Agent 助理 · 支持 Fine-tune
</p>
<a href="https://www.bilibili.com/video/BV1mo4y1r7eE"><strong>视频教程</strong></a>
·
<a href="https://www.bilibili.com/video/BV1184y1w7aP"><strong>2.0介绍视频</strong></a>
||
<a href="https://huggingface.co/spaces/JohnSmith9982/ChuanhuChatGPT"><strong>在线体验</strong></a>
·
<a href="https://huggingface.co/login?next=%2Fspaces%2FJohnSmith9982%2FChuanhuChatGPT%3Fduplicate%3Dtrue"><strong>一键部署</strong></a>
</p>
</p>
</div>
[![Video Title](https://github.com/GaiZhenbiao/ChuanhuChatGPT/assets/51039745/0eee1598-c2fd-41c6-bda9-7b059a3ce6e7.jpg)](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。
### 💬 基础对话
- 如果回答不满意,可以使用 `重新生成` 按钮再试一次,或者直接 `删除这轮对话`;
- 输入框支持换行,按 <kbd>Shift</kbd> + <kbd>Enter</kbd>即可;
- 在输入框按 <kbd></kbd> <kbd></kbd> 方向键,可以在发送记录中快速切换;
- 每次新建一个对话太麻烦,试试 `单论对话` 功能;
- 回答气泡旁边的小按钮,不仅能 `一键复制`,还能 `查看Markdown原文`
- 指定回答语言,让 ChatGPT 固定以某种语言回答。
### 📜 对话历史
- 对话历史记录会被自动保存,不用担心问完之后找不到了;
- 多用户历史记录隔离,除了你都看不到;
- 重命名历史记录,方便日后查找;
- <sup>New!</sup> 魔法般自动命名历史记录,让 LLM 理解对话内容,帮你自动为历史记录命名!
- <sup>New!</sup> 搜索历史记录,支持正则表达式!
### 🖼️ 小而美的体验
- 自研 Small-and-Beautiful 主题,带给你小而美的体验;
- 自动亮暗色切换,给你从早到晚的舒适体验;
- 完美渲染 LaTeX / 表格 / 代码块,支持代码高亮;
- <sup>New!</sup> 非线性动画、毛玻璃效果,精致得不像 Gradio
- <sup>New!</sup> 适配 Windows / macOS / Linux / iOS / Android从图标到全面屏适配给你最合适的体验
- <sup>New!</sup> 支持以 PWA应用程序 安装,体验更加原生!
### 👨‍💻 极客功能
- <sup>New!</sup> 支持 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/使用教程)。
## 疑难杂症解决
在遇到各种问题查阅相关信息前,您可以先尝试 **手动拉取本项目的最新更改<sup>1</sup>****更新依赖库<sup>2</sup>**,然后重试。步骤为:
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
[![Star History Chart](https://api.star-history.com/svg?repos=GaiZhenbiao/ChuanhuChatGPT&type=Date)](https://star-history.com/#GaiZhenbiao/ChuanhuChatGPT&Date)
## Contributors
<a href="https://github.com/GaiZhenbiao/ChuanhuChatGPT/graphs/contributors">
<img src="https://contrib.rocks/image?repo=GaiZhenbiao/ChuanhuChatGPT" />
</a>
## 捐款
🐯如果觉得这个软件对你有所帮助,欢迎请作者喝可乐、喝咖啡~
联系作者:请去[我的bilibili账号](https://space.bilibili.com/29125536)私信我。
<a href="https://www.buymeacoffee.com/ChuanhuChat" ><img src="https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=ChuanhuChat&button_colour=219d53&font_colour=ffffff&font_family=Poppins&outline_colour=ffffff&coffee_colour=FFDD00" alt="Buy Me A Coffee" width="250"></a>
<img width="250" alt="image" src="https://user-images.githubusercontent.com/51039745/226920291-e8ec0b0a-400f-4c20-ac13-dafac0c3aeeb.JPG">

20
apps/chuanhuchat/data.yml Normal file
View File

@ -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

View File

@ -0,0 +1,2 @@
CONTAINER_NAME="chuanhuchat"
PANEL_APP_PORT_HTTP="40193"

View File

@ -0,0 +1,10 @@
additionalProperties:
formFields:
- default: 40193
edit: true
envKey: PANEL_APP_PORT_HTTP
labelEn: Port
labelZh: 端口
required: true
rule: paramPort
type: number

View File

@ -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
}

View File

@ -0,0 +1,87 @@
{
// [https://github.com/GaiZhenbiao/ChuanhuChatGPT/wiki/使#-configjson]
//== API ==
"openai_api_key": "", // OpenAI API KeyAPI 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 APIsensitive_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-turbogpt-4
"GOOGLE_CSE_ID": "", //IDPro https://stackoverflow.com/questions/37083058/programmatically-searching-google-in-python-using-custom-search
"GOOGLE_API_KEY": "", //API KeyPro
"WOLFRAM_ALPHA_APPID": "", //Wolfram Alpha API KeyPro https://products.wolframalpha.com/api/
"SERPAPI_API_KEY": "", //SerpAPI API KeyPro https://serpapi.com/
//== ==
"latex_option": "default", // LaTeX "default", "strict", "all""disabled"
"advance_docs": {
"pdf": {
"two_column": false, // PDF
"formula_ocr": true // 使OCRPDF
}
},
//== ==
// 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,
// sharegradiotrue
// "share": false,
//false
//"autobrowser": false
}

View File

@ -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

BIN
apps/chuanhuchat/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB