# yaml-language-server: $schema=https://schema.zeabur.app/template.json
apiVersion: zeabur.com/v1
kind: Template
metadata:
    name: chat2api
spec:
    description: A service that can convert ChatGPT on the web to OpenAI API format.
    icon: https://ooo.0x0.ooo/2023/11/07/OeBS0p.png
    tags:
        - API
        - Tool
    readme: "# CHAT2API\n\n\U0001F916 一个简单的ChatGPT TO API代理，支持GPT3.5、GPT4.0\n\n\U0001F31F 无需账号即可使用免费、无限的GPT3.5\n\n\U0001F4A5 支持AccessToken使用账号，支持GPT4.0\n\n\U0001F50D 以假乱真，回复格式与真实api完全一致，支持max_tokens，stream等参数，并且支持token数计算\n\n## Features\n\n> 特点\n> \n> - [x] 免登录 GPT3.5\n> - [x] 使用 AccessToken\n> - [x] GPT3.5 对话\n> - [x] GPT4.0 对话\n> - [x] Tokens 计算\n> - [x] Stream 流式传输\n> - [x] 配置 PROXY 代理\n> - [x] 配置 BASE_URL\n> - [x] 重试次数设置\n> - [x] ArkoseToken\n> \n> \n> TODO\n> \n> - [ ] GPT4.0 画图、工具\n> - [ ] GPTs\n\n## Usage\n\n```bash\ncurl --location 'http://127.0.0.1:5005/v1/chat/completions' \\\n--header 'Content-Type: application/json' \\\n--data '{\n     \"model\": \"gpt-3.5-turbo\",\n     \"messages\": [{\"role\": \"user\", \"content\": \"Say this is a test!\"}],\n     \"stream\": true\n   }'\n```\n\n## 常见问题\n\n> - 错误代码：\n>   - `401`：当前IP不支持免登录，请尝试更换IP地址，或者在环境变量 `PROXY_URL` 中设置代理。\n>   - `403`：当前IP地址被 CF 盾拦截，请尝试更换IP地址，或者在环境变量 `PROXY_URL` 中设置代理。\n>   - `429`：当前IP请求1小时内请求超过限制，请稍后再试，或更换ip。\n>   - `500`：服务器内部错误，请求失败。\n>   - `502`：服务器网关错误，或网络不可用，请尝试更换网络环境。\n\n## 使用GPT4\n\n> #### 目前支持外部服务提供 ArkoseToken\n> \n> #### 推荐使用 docker-compose 方式部署, 已内置 Arkose 服务\n\n1. 设置环境变量ARKOSE_TOKEN_URL\n\n2. 在需要`ArkoseToken`的时候，`chat2api`会向`ARKOSE_TOKEN_URL`发送`POST`请求\n\n3. 请按照以下格式提供外部服务：\n\n- 请求体：\n```request body\n{\n    \"blob\": \"rFYaxQNEApDlx/Db.KyrE79pAAFBs70CYtbM4pMNUsc7jIkLGdiDs7vziHRGe78bqWXDo0AYyq2A10qIlcTt89lBYXJqCbONC/nD8C199pEZ/c9ocVKKtM27jZQ7fyOpWd9p5qjKeXT4xEGBFpoE3Re1DwdQeijYp7VMJQyw7RYN+IDB1QEx3aKSO6aTI+ivnhw9ztfn/p1SkvAyyOhur/ArF08WQ+rXQpxpttaSQlzMsIwlYbuUUuYE2f9JrQaYG7qip1DKvju111P6wTNy4QVlMXG32VrzaOWh4nmQ0lOcZ1DmN6u2aeJZotffHV2zOOQAqqnParidTbN+qFre2t77ZwBuGKGqLyT8LeOp02GdFwcyw0kkeX+L7vwYAzBpjA5ky0r0X+i8HpzWt8QCyWzEW9kHn9LLCTwg2MOumzjb66Ad4WDe+C1bAcOKuEyXiYh+a1cWZAOdzEuxEg90yCfI7DZR94BsoDR85gEC/Og88i098u5HV7hZZEOQ6J8fmi68FSyPkN7oLCmBsZCMAZqzapNP/MkeIMExrdw7Jf/PtMrZN4bwM56mWfyIJf5h/zXu8PUajVwE9Pj/M5VtB0spZg49JNeHExosVCAB0C0JW+T8vEIwoqiY4pRQ0lbMHTQZFpU2xURTgcgh+m6g1SEYR1FY3de1XnzfiTQq1RTNJPydj5xpt6r6okr8yIJdRhmVXlQI+pS7vi3+Lls2hnpr7L+l1mcUIMPZNBCs3AUFJNpp6SwQjZkPvKggg1p+uS6PdvKRizM9O9+FKc103AhuSia8KTrvU8tWhBhCzIHCD4LNfnkjuBWSdbDttva4AEXUoPuKkQCWaBzq4lQPUIHFOM9HmNe738vVkNdAuOYffxDNegcpIxLVgZGfbgLQ=\"\n}\n```\n\n- 响应体：\n```response body\n{\n    \"token\": \"45017c7bb17115f36.7290869304|r=ap-southeast-1|meta=3|metabgclr=transparent|metaiconclr=%23757575|guitextcolor=%23000000|pk=0A1D34FC-659D-4E23-B17B-694DCFCF6A6C|at=40|sup=1|rid=3|ag=101|cdn_url=https%3A%2F%2Ftcr9i.openai.com%2Fcdn%2Ffc|lurl=https%3A%2F%2Faudio-ap-southeast-1.arkoselabs.com|surl=https%3A%2F%2Ftcr9i.openai.com|smurl=https%3A%2F%2Ftcr9i.openai.com%2Fcdn%2Ffc%2Fassets%2Fstyle-manager\"\n}\n```\n\n## 高级设置\n\n默认情况都不需要设置，除非你有需求\n\n### 环境变量\n\n```\nAUTHORIZATION=your_first_token, your_second_token     // 使用免登3.5的Bearer token，不设置则无需Bearer token\nFREE35_BASE_URL=https://chat.openai.com/backend-anon  // 免登3.5的网关地址\nCHATGPT_BASE_URL=https://chat.openai.com/backend-api  // 非免登3.5、4.0的网关地址\nHISTORY_DISABLED=true                                 // 是否保存聊天记录\nPROXY_URL=your_first_proxy, your_second_proxy         // 代理url，多个代理用逗号分隔\nARKOSE_TOKEN_URL=https://arkose.example.com/token     // 获取Arkose token的地址，上文有提供说明\nRETRY_TIMES=3                                         // 重试次数\n```\n\n## License\n\nMIT License\n"
    services:
        - name: chat2api
          template: GIT
          spec:
            source:
                source: GITHUB
                repo: 782194309
                branch: main
