Spaces:
Sleeping
Sleeping
Upload 6 files
Browse files- Dockerfile +5 -27
- README.md +121 -121
- app.py +0 -0
- requirements.txt +0 -0
Dockerfile
CHANGED
@@ -1,46 +1,24 @@
|
|
1 |
FROM python:3.11-slim
|
2 |
|
3 |
-
#
|
4 |
-
|
5 |
|
6 |
-
|
7 |
-
RUN apt-get update && apt-get install -y \
|
8 |
-
build-essential \
|
9 |
-
curl \
|
10 |
-
&& rm -rf /var/lib/apt/lists/*
|
11 |
|
12 |
-
# 复制依赖文件
|
13 |
COPY requirements.txt .
|
|
|
14 |
|
15 |
-
# 安装Python依赖
|
16 |
-
RUN pip install --no-cache-dir --upgrade pip && \
|
17 |
-
pip install --no-cache-dir -r requirements.txt
|
18 |
-
|
19 |
-
# 复制应用代码
|
20 |
COPY . .
|
21 |
|
22 |
# 设置环境变量
|
23 |
ENV HOST=0.0.0.0
|
24 |
ENV PORT=7860
|
25 |
-
ENV PYTHONUNBUFFERED=1
|
26 |
-
ENV DEBIAN_FRONTEND=noninteractive
|
27 |
|
28 |
# 删除敏感文件
|
29 |
RUN rm -f config.json password.txt
|
30 |
|
31 |
-
# 创建非root用户
|
32 |
-
RUN useradd -m -u 1000 user && \
|
33 |
-
chown -R user:user /app
|
34 |
-
|
35 |
-
# 切换到非root用户
|
36 |
-
USER user
|
37 |
-
|
38 |
# 暴露端口(Hugging Face默认使用7860端口)
|
39 |
EXPOSE 7860
|
40 |
|
41 |
-
# 健康检查
|
42 |
-
HEALTHCHECK --interval=30s --timeout=30s --start-period=5s --retries=3 \
|
43 |
-
CMD curl -f http://localhost:7860/health || exit 1
|
44 |
-
|
45 |
# 启动命令
|
46 |
-
CMD ["python", "app.py"]
|
|
|
1 |
FROM python:3.11-slim
|
2 |
|
3 |
+
# 设置用户为root
|
4 |
+
USER root
|
5 |
|
6 |
+
WORKDIR /app
|
|
|
|
|
|
|
|
|
7 |
|
|
|
8 |
COPY requirements.txt .
|
9 |
+
RUN pip install --no-cache-dir -r requirements.txt
|
10 |
|
|
|
|
|
|
|
|
|
|
|
11 |
COPY . .
|
12 |
|
13 |
# 设置环境变量
|
14 |
ENV HOST=0.0.0.0
|
15 |
ENV PORT=7860
|
|
|
|
|
16 |
|
17 |
# 删除敏感文件
|
18 |
RUN rm -f config.json password.txt
|
19 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
# 暴露端口(Hugging Face默认使用7860端口)
|
21 |
EXPOSE 7860
|
22 |
|
|
|
|
|
|
|
|
|
23 |
# 启动命令
|
24 |
+
CMD ["python", "app.py"]
|
README.md
CHANGED
@@ -1,121 +1,121 @@
|
|
1 |
-
---
|
2 |
-
title: Abacus Chat Proxy
|
3 |
-
emoji: 🤖
|
4 |
-
colorFrom: blue
|
5 |
-
colorTo: purple
|
6 |
-
sdk: docker
|
7 |
-
sdk_version: "3.9"
|
8 |
-
app_file: app.py
|
9 |
-
pinned: false
|
10 |
-
---
|
11 |
-
|
12 |
-
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
|
13 |
-
|
14 |
-
# Abacus Chat Proxy
|
15 |
-
|
16 |
-
> 📢 本项目基于 [orbitoo/abacus_chat_proxy](https://github.com/orbitoo/abacus_chat_proxy) 改进
|
17 |
-
>
|
18 |
-
> 特别感谢 orbitoo 大佬提供的原始项目!
|
19 |
-
>
|
20 |
-
> 本项目增加了:Docker部署支持、Hugging Face一键部署、自动保活功能等
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
#### 注意创建space的时候把private改为public,因为不改为public导致的错误别来找我
|
25 |
-
|
26 |
-
[](https://huggingface.co/spaces/malt666/abacus_chat_proxy?duplicate=true)
|
27 |
-
|
28 |
-
## ⚠️ 警告
|
29 |
-
|
30 |
-
**本地部署方式已失效!**为了适配hugging face,本项目的本地部署方式已不再可用。目前只能通过Hugging Face Spaces部署来使用本代理服务。请使用下方的Hugging Face一键部署方法。
|
31 |
-
|
32 |
-
## 🚀 快速开始
|
33 |
-
|
34 |
-
### Hugging Face一键部署
|
35 |
-
|
36 |
-
#### 注意创建space的时候把private改为public,因为不改为public导致的错误别来找我
|
37 |
-
|
38 |
-
1. 点击上方的"Deploy to Hugging Face Spaces"按钮
|
39 |
-
2. 登录你的Hugging Face账号(如果还没有,需要注册一个)
|
40 |
-
3. 在弹出的页面中设置你的Space名称,注意创建space的时候把private改为public,因为不改为为public导致的错误别来找我
|
41 |
-
4. 创建完Space后,在Space的Settings -> Repository Secrets中添加以下配置:
|
42 |
-
- `cookie_1`: 第一个cookie
|
43 |
-
- `cookie_2`: 第二个cookie(如果有)
|
44 |
-
- 以此类推...
|
45 |
-
- `password`: (必填,最好超过8位数,不然被盗用api导致点数用光,损失自负)api调用密码,也是dashboard登录密码
|
46 |
-
5. 等待自动部署完成即可
|
47 |
-
6. 登录dashboard查看使用情况,space里面是没办法登录的,点击弹出的登录页面的小窗口提示“请点击 https://xyz-abacus-chat-proxy.hf.space 来登录并查看使用情况”的链接来登录,登录密码是你设置的password
|
48 |
-
7. **获取API链接**:部署成功后,网络的登录页面会显示api接口链接;或者你点击右上角的三个点按钮,在弹出的选项卡里面点击"Embed this Space",然后在弹出的"Embed this Space"界面里的"Direct URL"就是你的访问链接,你可以用这个链接调用API和查看使用情况
|
49 |
-
8. api调用:api调用的时候注意密钥填写你的password,不然没办法调用
|
50 |
-
### 本地运行(已失效)
|
51 |
-
|
52 |
-
> ⚠️ 以下本地运行方法已失效,仅作参考。请使用Hugging Face部署方式。
|
53 |
-
|
54 |
-
#### Windows用户
|
55 |
-
|
56 |
-
1. 双击运行 `start.bat`
|
57 |
-
2. 首次运行选择 `0` 进行配置
|
58 |
-
3. 配置完成后选择 `Y` 直接启动,或 `N` 返回菜单
|
59 |
-
4. 之后可直接选择 `1` 启动代理
|
60 |
-
5. 代理服务器默认运行在 `http://127.0.0.1:9876/`
|
61 |
-
|
62 |
-
#### Linux/macOS用户
|
63 |
-
|
64 |
-
```bash
|
65 |
-
# 赋予脚本执行权限
|
66 |
-
chmod +x start.sh
|
67 |
-
|
68 |
-
# 运行脚本
|
69 |
-
./start.sh
|
70 |
-
```
|
71 |
-
|
72 |
-
选项说明同Windows。
|
73 |
-
|
74 |
-
### 🌐 Hugging Face部署
|
75 |
-
|
76 |
-
1. Fork本仓库到你的GitHub账号
|
77 |
-
2. 在Hugging Face上创建新的Space(选择Docker类型)
|
78 |
-
3. 在Space的设置中连接你的GitHub仓库
|
79 |
-
4. 在Space的设置中添加以下Secrets:
|
80 |
-
- 第1组配置:
|
81 |
-
- `cookie_1`: 第1个cookies字符串
|
82 |
-
- 第2组配置(如果需要):
|
83 |
-
- `cookie_2`: 第2个cookies字符串
|
84 |
-
- 更多配置以此类推(`cookie_3`...)
|
85 |
-
- `password`: (可选)访问密码
|
86 |
-
5. Space会自动部署,服务将在 `https://你的空间名-你的用户名.hf.space` 上运行
|
87 |
-
|
88 |
-
## ⚙️ 环境要求
|
89 |
-
|
90 |
-
- Python 3.8+
|
91 |
-
- pip
|
92 |
-
|
93 |
-
## 📦 依赖
|
94 |
-
|
95 |
-
```bash
|
96 |
-
Flask==3.1.0
|
97 |
-
requests==2.32.3
|
98 |
-
PyJWT==2.8.0
|
99 |
-
```
|
100 |
-
|
101 |
-
## 📝 配置说明
|
102 |
-
|
103 |
-
### 本地配置
|
104 |
-
|
105 |
-
首次运行时,请选择 `0` 进行配置,按照提示填写相关信息。配置文件将保存在 `config.json` 中。
|
106 |
-
|
107 |
-
### 环境变量配置
|
108 |
-
|
109 |
-
在Docker或云平台部署时,需要配置以下环境变量:
|
110 |
-
|
111 |
-
- 必需的配置(至少需要一组):
|
112 |
-
- `cookie_1`: 第1组配置
|
113 |
-
- `cookie_2`: 第2组配置(可选)
|
114 |
-
- 以此类推...
|
115 |
-
- 可选配置:
|
116 |
-
- `password`: 访问密码
|
117 |
-
|
118 |
-
## 🔒 安全说明
|
119 |
-
|
120 |
-
- 建议在部署到Hugging Face时设置访问密码
|
121 |
-
- 在Hugging Face上配置时,请使用Secrets来存储敏感信息
|
|
|
1 |
+
---
|
2 |
+
title: Abacus Chat Proxy
|
3 |
+
emoji: 🤖
|
4 |
+
colorFrom: blue
|
5 |
+
colorTo: purple
|
6 |
+
sdk: docker
|
7 |
+
sdk_version: "3.9"
|
8 |
+
app_file: app.py
|
9 |
+
pinned: false
|
10 |
+
---
|
11 |
+
|
12 |
+
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
|
13 |
+
|
14 |
+
# Abacus Chat Proxy
|
15 |
+
|
16 |
+
> 📢 本项目基于 [orbitoo/abacus_chat_proxy](https://github.com/orbitoo/abacus_chat_proxy) 改进
|
17 |
+
>
|
18 |
+
> 特别感谢 orbitoo 大佬提供的原始项目!
|
19 |
+
>
|
20 |
+
> 本项目增加了:Docker部署支持、Hugging Face一键部署、自动保活功能等
|
21 |
+
|
22 |
+
一个��于中转API请求的代理服务器。
|
23 |
+
|
24 |
+
#### 注意创建space的时候把private改为public,因为不改为public导致的错误别来找我
|
25 |
+
|
26 |
+
[](https://huggingface.co/spaces/malt666/abacus_chat_proxy?duplicate=true)
|
27 |
+
|
28 |
+
## ⚠️ 警告
|
29 |
+
|
30 |
+
**本地部署方式已失效!**为了适配hugging face,本项目的本地部署方式已不再可用。目前只能通过Hugging Face Spaces部署来使用本代理服务。请使用下方的Hugging Face一键部署方法。
|
31 |
+
|
32 |
+
## 🚀 快速开始
|
33 |
+
|
34 |
+
### Hugging Face一键部署
|
35 |
+
|
36 |
+
#### 注意创建space的时候把private改为public,因为不改为public导致的错误别来找我
|
37 |
+
|
38 |
+
1. 点击上方的"Deploy to Hugging Face Spaces"按钮
|
39 |
+
2. 登录你的Hugging Face账号(如果还没有,需要注册一个)
|
40 |
+
3. 在弹出的页面中设置你的Space名称,注意创建space的时候把private改为public,因为不改为为public导致的错误别来找我
|
41 |
+
4. 创建完Space后,在Space的Settings -> Repository Secrets中添加以下配置:
|
42 |
+
- `cookie_1`: 第一个cookie
|
43 |
+
- `cookie_2`: 第二个cookie(如果有)
|
44 |
+
- 以此类推...
|
45 |
+
- `password`: (必填,最好超过8位数,不然被盗用api导致点数用光,损失自负)api调用密码,也是dashboard登录密码
|
46 |
+
5. 等待自动部署完成即可
|
47 |
+
6. 登录dashboard查看使用情况,space里面是没办法登录的,点击弹出的登录页面的小窗口提示“请点击 https://xyz-abacus-chat-proxy.hf.space 来登录并查看使用情况”的链接来登录,登录密码是你设置的password
|
48 |
+
7. **获取API链接**:部署成功后,网络的登录页面会显示api接口链接;或者你点击右上角的三个点按钮,在弹出的选项卡里面点击"Embed this Space",然后在弹出的"Embed this Space"界面里的"Direct URL"就是你的访问链接,你可以用这个链接调用API和查看使用情况
|
49 |
+
8. api调用:api调用的时候注意密钥填写你的password,不然没办法调用
|
50 |
+
### 本地运行(已失效)
|
51 |
+
|
52 |
+
> ⚠️ 以下本地运行方法已失效,仅作参考。请使用Hugging Face部署方式。
|
53 |
+
|
54 |
+
#### Windows用户
|
55 |
+
|
56 |
+
1. 双击运行 `start.bat`
|
57 |
+
2. 首次运行选择 `0` 进行配置
|
58 |
+
3. 配置完成后选择 `Y` 直接启动,或 `N` 返回菜单
|
59 |
+
4. 之后可直接选择 `1` 启动代理
|
60 |
+
5. 代理服务器默认运行在 `http://127.0.0.1:9876/`
|
61 |
+
|
62 |
+
#### Linux/macOS用户
|
63 |
+
|
64 |
+
```bash
|
65 |
+
# 赋予脚本执行权限
|
66 |
+
chmod +x start.sh
|
67 |
+
|
68 |
+
# 运行脚本
|
69 |
+
./start.sh
|
70 |
+
```
|
71 |
+
|
72 |
+
选项说明同Windows。
|
73 |
+
|
74 |
+
### 🌐 Hugging Face部署
|
75 |
+
|
76 |
+
1. Fork本仓库到你的GitHub账号
|
77 |
+
2. 在Hugging Face上创建新的Space(选择Docker类型)
|
78 |
+
3. 在Space的设置中连接你的GitHub仓库
|
79 |
+
4. 在Space的设置中添加以下Secrets:
|
80 |
+
- 第1组配置:
|
81 |
+
- `cookie_1`: 第1个cookies字符串
|
82 |
+
- 第2组配置(如果需要):
|
83 |
+
- `cookie_2`: 第2个cookies字符串
|
84 |
+
- 更多配置以此类推(`cookie_3`...)
|
85 |
+
- `password`: (可选)访问密码
|
86 |
+
5. Space会自动部署,服务将在 `https://你的空间名-你的用户名.hf.space` 上运行
|
87 |
+
|
88 |
+
## ⚙️ 环境要求
|
89 |
+
|
90 |
+
- Python 3.8+
|
91 |
+
- pip
|
92 |
+
|
93 |
+
## 📦 依赖
|
94 |
+
|
95 |
+
```bash
|
96 |
+
Flask==3.1.0
|
97 |
+
requests==2.32.3
|
98 |
+
PyJWT==2.8.0
|
99 |
+
```
|
100 |
+
|
101 |
+
## 📝 配置说明
|
102 |
+
|
103 |
+
### 本地配置
|
104 |
+
|
105 |
+
首次运行时,请选择 `0` 进行配置,按照提示填写相关信息。配置文件将保存在 `config.json` 中。
|
106 |
+
|
107 |
+
### 环境变量配置
|
108 |
+
|
109 |
+
在Docker或云平台部署时,需要配置以下环境变量:
|
110 |
+
|
111 |
+
- 必需的配置(至少需要一组):
|
112 |
+
- `cookie_1`: 第1组配置
|
113 |
+
- `cookie_2`: 第2组配置(可选)
|
114 |
+
- 以此类推...
|
115 |
+
- 可选配置:
|
116 |
+
- `password`: 访问密码
|
117 |
+
|
118 |
+
## 🔒 安全说明
|
119 |
+
|
120 |
+
- 建议在部署到Hugging Face时设置访问密码
|
121 |
+
- 在Hugging Face上配置时,请使用Secrets来存储敏感信息
|
app.py
CHANGED
The diff for this file is too large to render.
See raw diff
|
|
requirements.txt
CHANGED
Binary files a/requirements.txt and b/requirements.txt differ
|
|