CLIProxyAPIPlus / README.md
kines9661's picture
Upload 11 files
6cace42 verified
---
title: CLI Proxy API Plus
emoji: ๐Ÿš€
colorFrom: blue
colorTo: purple
sdk: docker
pinned: false
license: mit
short_description: ็ตฑไธ€็š„ AI API ไปฃ็†ๆœๅ‹™
---
# ๐Ÿš€ CLI Proxy API Plus
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://opensource.org/licenses/MIT)
[![Go](https://img.shields.io/badge/Go-1.26-00ADD8?logo=go)](https://golang.org/)
[![Streamlit](https://img.shields.io/badge/Streamlit-1.28+-FF4B4B?logo=streamlit)](https://streamlit.io/)
็ตฑไธ€็š„ AI API ไปฃ็†ๆœๅ‹™๏ผŒๆ”ฏๆดๅคš็จฎ AI ๆไพ›่€…๏ผŒๆไพ›ๆจ™ๆบ–ๅŒ–็š„ OpenAI ๅ…ผๅฎน API ๆŽฅๅฃใ€‚
## โœจ ๅŠŸ่ƒฝ็‰น้ปž
- ๐Ÿ”Œ **็ตฑไธ€ API ๆŽฅๅฃ** - OpenAI ๅ…ผๅฎนๆ ผๅผ๏ผŒ็„ก็ธซๆ•ดๅˆ็พๆœ‰ๅทฅๅ…ท
- ๐Ÿ” **OAuth ่ช่ญ‰็ฎก็†** - ๆ”ฏๆดๅคš็จฎ OAuth ่ช่ญ‰ๆต็จ‹
- ๐Ÿ“Š **ไฝฟ็”จ้‡็ตฑ่จˆ** - ๅฏฆๆ™‚็›ฃๆŽง API ไฝฟ็”จๆƒ…ๆณ
- ๐Ÿ”„ **่‡ชๅ‹• Token ๅˆทๆ–ฐ** - ๆ™บ่ƒฝ็ฎก็†่ช่ญ‰ๆ†‘่ญ‰
- ๐ŸŒ **ๅคšๆไพ›่€…ๆ”ฏๆด** - Claudeใ€OpenAIใ€Geminiใ€Copilotใ€Kiro ็ญ‰
- ๐ŸŽจ **Streamlit Web UI** - ๅ‹ๅฅฝ็š„ๅœ–ๅฝขๅŒ–็ฎก็†ไป‹้ข
## ๐Ÿค– ๆ”ฏๆด็š„ AI ๆไพ›่€…
| ๆไพ›่€… | ่ช่ญ‰ๆ–นๅผ | ๆจกๅž‹ |
|--------|----------|------|
| ๐ŸŸ  **Claude** | OAuth | claude-3-5-sonnet, claude-3-opus |
| ๐ŸŸข **OpenAI** | API Key / OAuth | gpt-4o, gpt-4-turbo |
| ๐Ÿ”ต **Gemini** | API Key | gemini-1.5-pro, gemini-1.5-flash |
| โšซ **GitHub Copilot** | OAuth | gpt-4, gpt-3.5-turbo |
| ๐ŸŸก **Kiro** | OAuth / AWS | claude-3-5-sonnet (via AWS) |
| ๐ŸŸฃ **Codex** | OAuth | gpt-4, gpt-3.5-turbo |
## ๐Ÿš€ ๅฟซ้€Ÿ้–‹ๅง‹
### ไฝฟ็”จ Web UI
1. ่จชๅ•ๆญค Space ็š„ URL
2. ๅœจๅด้‚Šๆฌ„ๆŸฅ็œ‹ API ็‹€ๆ…‹
3. ไฝฟ็”จไปฅไธ‹ๅŠŸ่ƒฝ๏ผš
- **๐Ÿ’ฌ Chat** - ๆธฌ่ฉฆ API ่ซ‹ๆฑ‚
- **๐Ÿ”‘ Auth** - ็ฎก็†่ช่ญ‰ๆ†‘่ญ‰
- **๐Ÿ“Š Stats** - ๆŸฅ็œ‹ไฝฟ็”จ็ตฑ่จˆ
- **โš™๏ธ Settings** - ้…็ฝฎ็ณป็ตฑ
### API ็ซฏ้ปž
```bash
# Chat Completions (OpenAI ๅ…ผๅฎน)
curl -X POST https://{your-space}.hf.space/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "claude-3-5-sonnet-20241022",
"messages": [{"role": "user", "content": "Hello!"}]
}'
# ๅˆ—ๅ‡บๆจกๅž‹
curl https://{your-space}.hf.space/v1/models
```
## ๐Ÿ” ้…็ฝฎ Secrets
ๅœจ Hugging Face Spaces ็š„ **Settings > Secrets** ไธญๆทปๅŠ ไปฅไธ‹้…็ฝฎ๏ผš
| Secret ๅ็จฑ | ่ชชๆ˜Ž | ็ฏ„ไพ‹ |
|-------------|------|------|
| `API_KEYS` | API ่จชๅ•ๅฏ†้‘ฐ | `["sk-xxx", "sk-yyy"]` |
| `MANAGEMENT_KEY` | ็ฎก็†ไป‹้ขๅฏ†้‘ฐ | `your-admin-key` |
| `CLAUDE_TOKEN` | Claude OAuth Token | (JSON ๆ ผๅผ) |
| `OPENAI_API_KEY` | OpenAI API Key | `sk-...` |
| `GEMINI_API_KEY` | Gemini API Key | `AIza...` |
## ๐Ÿ“ ๅฐˆๆกˆ็ตๆง‹
```
hf-spaces/
โ”œโ”€โ”€ Dockerfile # Docker ๆง‹ๅปบๆ–‡ไปถ
โ”œโ”€โ”€ supervisord.conf # ้€ฒ็จ‹็ฎก็†้…็ฝฎ
โ”œโ”€โ”€ entrypoint.sh # ๅฎนๅ™จๅ…ฅๅฃ่…ณๆœฌ
โ”œโ”€โ”€ requirements.txt # Python ไพ่ณด
โ”œโ”€โ”€ README.md # ๆœฌๆ–‡ไปถ
โ”œโ”€โ”€ DEPLOYMENT.md # ่ฉณ็ดฐ้ƒจ็ฝฒๆŒ‡ๅ—
โ”œโ”€โ”€ CLIProxyAPIPlus # Go ไบŒ้€ฒๅˆถ๏ผˆ้œ€้ ๅ…ˆๆง‹ๅปบ๏ผ‰
โ””โ”€โ”€ streamlit_app/ # Streamlit ๆ‡‰็”จ
โ”œโ”€โ”€ app.py # ไธป็จ‹ๅบ
โ””โ”€โ”€ pages/
โ”œโ”€โ”€ 1_๐Ÿ’ฌ_Chat.py # API ๆธฌ่ฉฆ้ ้ข
โ”œโ”€โ”€ 2_๐Ÿ”‘_Auth.py # ่ช่ญ‰็ฎก็†้ ้ข
โ”œโ”€โ”€ 3_๐Ÿ“Š_Stats.py # ไฝฟ็”จ็ตฑ่จˆ้ ้ข
โ””โ”€โ”€ 4_โš™๏ธ_Settings.py # ็ณป็ตฑ่จญๅฎš้ ้ข
```
## ๐Ÿ”ง ๆง‹ๅปบ Go ไบŒ้€ฒๅˆถ
**้‡่ฆ**๏ผš้ƒจ็ฝฒๅ‰้œ€่ฆๅ…ˆๆง‹ๅปบ Go ไบŒ้€ฒๅˆถๆ–‡ไปถใ€‚
### Linux/macOS
```bash
cd /path/to/CLIProxyAPIPlus
GOOS=linux GOARCH=amd64 go build -o hf-spaces/CLIProxyAPIPlus ./cmd/server/
```
### Windows (PowerShell)
```powershell
cd C:\path\to\CLIProxyAPIPlus
$env:GOOS="linux"; $env:GOARCH="amd64"; go build -o hf-spaces/CLIProxyAPIPlus ./cmd/server/
```
### ้ฉ—่ญ‰ๆง‹ๅปบ
```bash
ls -la hf-spaces/CLIProxyAPIPlus
# ๆ‡‰่ฉฒ้กฏ็คบไธ€ๅ€‹็ด„ 20-30MB ็š„ๅฏๅŸท่กŒๆ–‡ไปถ
```
## ๐Ÿ—๏ธ ๆžถๆง‹
```
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Hugging Face Spaces โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ Docker Container โ”‚ โ”‚
โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚
โ”‚ โ”‚ โ”‚ Streamlit โ”‚ โ”‚ Go API โ”‚ โ”‚ โ”‚
โ”‚ โ”‚ โ”‚ :7860 โ”‚ โ”‚ :8317 โ”‚ โ”‚ โ”‚
โ”‚ โ”‚ โ”‚ (ๅ‰็ซฏUI) โ”‚โ”€โ”€โ”‚ (ๅพŒ็ซฏๆœๅ‹™) โ”‚ โ”‚ โ”‚
โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚
โ”‚ โ”‚ Supervisord ้€ฒ็จ‹็ฎก็† โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”‚
โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ AI Provider APIs โ”‚
โ”‚ Claude/OpenAI/Gemini โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
```
## ๐Ÿ“– ไฝฟ็”จ่ชชๆ˜Ž
### 1. API ๆธฌ่ฉฆ
1. ้ปžๆ“Šๅทฆๅด **๐Ÿ’ฌ Chat** ้ ้ข
2. ้ธๆ“‡ AI ๆไพ›่€…ๅ’Œๆจกๅž‹
3. ่ผธๅ…ฅๅ•้กŒไธฆ็™ผ้€่ซ‹ๆฑ‚
4. ๆŸฅ็œ‹้Ÿฟๆ‡‰็ตๆžœ
### 2. ่ช่ญ‰็ฎก็†
1. ้ปžๆ“Šๅทฆๅด **๐Ÿ”‘ Auth** ้ ้ข
2. ๆŸฅ็œ‹ๅ„ๆไพ›่€…็š„่ช่ญ‰็‹€ๆ…‹
3. ้…็ฝฎ OAuth ๆˆ– API Key
### 3. ๆŸฅ็œ‹็ตฑ่จˆ
1. ้ปžๆ“Šๅทฆๅด **๐Ÿ“Š Stats** ้ ้ข
2. ๆŸฅ็œ‹่ซ‹ๆฑ‚้‡ใ€Token ๆถˆ่€—็ญ‰็ตฑ่จˆ
3. ็›ฃๆŽงๅ„ๆไพ›่€…็‹€ๆ…‹
## โš ๏ธ ๆณจๆ„ไบ‹้ …
1. **่ณ‡ๆบ้™ๅˆถ** - HF Spaces ๅ…่ฒป็‰ˆๆœ‰ CPU ๅ’Œๅ…งๅญ˜้™ๅˆถ
2. **ๅญ˜ๅ„ฒ้™ๅˆถ** - ๅฎนๅ™จ้‡ๅ•ŸๅพŒๆ•ธๆ“šๆœƒไธŸๅคฑ
3. **HTTPS** - HF Spaces ๅผทๅˆถไฝฟ็”จ HTTPS
4. **ไธฆ็™ผ้™ๅˆถ** - ๅ…่ฒป็‰ˆไธฆ็™ผ่ซ‹ๆฑ‚ๆœ‰้™ๅˆถ
## ๐Ÿ”— ็›ธ้—œ้€ฃ็ต
- [GitHub ๅ€‰ๅบซ](https://github.com/router-for-me/CLIProxyAPIPlus)
- [ๅŽŸ็‰ˆๆ–‡ๆช”](https://github.com/router-for-me/CLIProxyAPI)
- [Hugging Face Spaces](https://huggingface.co/spaces)
## ๐Ÿ“ ๆŽˆๆฌŠ
ๆœฌๅฐˆๆกˆๆŽก็”จ MIT ๆŽˆๆฌŠๆขๆฌพใ€‚่ฉณ่ฆ‹ [LICENSE](LICENSE) ๆ–‡ไปถใ€‚
---
<p align="center">
Made with โค๏ธ by CLIProxyAPI Plus Team
</p>