diff --git a/README.md b/README.md index 6549c6d..4278e4c 100644 --- a/README.md +++ b/README.md @@ -439,7 +439,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数 - - - diff --git a/apps/one-hub/0.14.22-allinone/data.yml b/apps/one-hub/0.14.22-allinone/data.yml new file mode 100644 index 0000000..cfe5c05 --- /dev/null +++ b/apps/one-hub/0.14.22-allinone/data.yml @@ -0,0 +1,37 @@ +additionalProperties: + formFields: + - default: newapi + edit: true + envKey: PANEL_DB_NAME + labelEn: Database + labelZh: 数据库名 + random: true + required: true + rule: paramCommon + type: text + - default: newapi + edit: true + envKey: PANEL_DB_ROOT_PASSWORD + labelEn: Password + labelZh: 数据库密码 + random: true + required: true + rule: paramComplexity + type: password + - default: 9khGG1O59Ih4ZWrpsiFKTf8bW7ZqJR01 + edit: true + envKey: USER_TOKEN_SECRET + labelEn: Password + labelZh: 用户Token + random: true + required: true + rule: paramComplexity + type: password + - default: 3000 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: Port + labelZh: 端口 + required: true + rule: paramPort + type: number diff --git a/apps/one-hub/0.14.22-allinone/docker-compose.yml b/apps/one-hub/0.14.22-allinone/docker-compose.yml new file mode 100644 index 0000000..3fe33cc --- /dev/null +++ b/apps/one-hub/0.14.22-allinone/docker-compose.yml @@ -0,0 +1,60 @@ +services: + one-hub: + image: martialbe/one-api:v0.14.22 + container_name: ${CONTAINER_NAME} + restart: always + ports: + - ${PANEL_APP_PORT_HTTP}:3000 + networks: + - 1panel-network + command: --log-dir /app/logs + volumes: + - ./data:/data + - ./logs:/app/logs + environment: + - SQL_DSN=root:${PANEL_DB_ROOT_PASSWORD}@tcp(${CONTAINER_NAME}-mysql:3306)/${PANEL_DB_NAME} # 修改此行,或注释掉以使用 SQLite 作为数据库 + - TZ=Asia/Shanghai + - REDIS_CONN_STRING=redis://${CONTAINER_NAME}-redis + - USER_TOKEN_SECRET=${USER_TOKEN_SECRET} + - ERROR_LOG_ENABLED=true # 是否启用错误日志记录 + # - STREAMING_TIMEOUT=120 # 流模式无响应超时时间,单位秒,默认120秒,如果出现空补全可以尝试改为更大值 + # - SESSION_SECRET=random_string # 多机部署时设置,必须修改这个随机字符串!!!!!!! + # - NODE_TYPE=slave # Uncomment for slave node in multi-node deployment + # - SYNC_FREQUENCY=60 # Uncomment if regular database syncing is needed + # - FRONTEND_BASE_URL=https://openai.justsong.cn # Uncomment for multi-node deployment with front-end URL + depends_on: + - redis + - mysql + healthcheck: + test: ["CMD-SHELL", "wget -q -O - http://localhost:3000/api/status | grep -o '\"success\":\\s*true' | awk -F: '{print $$2}'"] + interval: 30s + timeout: 10s + retries: 3 + labels: + createdBy: "Apps" + + mysql: + image: mysql:8.2 + container_name: ${CONTAINER_NAME}-mysql + restart: always + volumes: + - onehub-mysql_data:/var/lib/mysql + environment: + - MYSQL_ROOT_PASSWORD=${PANEL_DB_ROOT_PASSWORD} # MySQL root用户密码 + - MYSQL_DATABASE=${PANEL_DB_NAME} # 创建的数据库名 + networks: + - 1panel-network + + redis: + image: redis:latest + container_name: ${CONTAINER_NAME}-redis + restart: always + networks: + - 1panel-network + +volumes: + onehub-mysql_data: + +networks: + 1panel-network: + external: true diff --git a/apps/one-hub/0.14.22/data.yml b/apps/one-hub/0.14.22/data.yml new file mode 100644 index 0000000..c3896c3 --- /dev/null +++ b/apps/one-hub/0.14.22/data.yml @@ -0,0 +1,26 @@ +additionalProperties: + formFields: + - default: 3000 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: Port + labelZh: 端口 + required: true + rule: paramPort + type: number + - default: Asia/Shanghai + edit: true + envKey: TZ + labelEn: Time Zone + labelZh: 时区 + required: true + type: text + - default: 9khGG1O59Ih4ZWrpsiFKTf8bW7ZqJR01 + edit: true + envKey: USER_TOKEN_SECRET + labelEn: Password + labelZh: 用户Token + random: true + required: true + rule: paramComplexity + type: password \ No newline at end of file diff --git a/apps/one-hub/0.14.22/docker-compose.yml b/apps/one-hub/0.14.22/docker-compose.yml new file mode 100644 index 0000000..811f29f --- /dev/null +++ b/apps/one-hub/0.14.22/docker-compose.yml @@ -0,0 +1,26 @@ +services: + one-hub: + image: martialbe/one-api:v0.14.22 + container_name: ${CONTAINER_NAME} + restart: always + ports: + - ${PANEL_APP_PORT_HTTP}:3000 + networks: + - 1panel-network + command: --log-dir /app/logs + volumes: + - ./data:/data + - ./logs:/app/logs + environment: + - TZ=${TZ} + - USER_TOKEN_SECRET=${USER_TOKEN_SECRET} +# - SESSION_SECRET=${SESSION_SECRET} +# - REDIS_CONN_STRING=redis://redis +# - NODE_TYPE=slave # 多机部署时从节点取消注释该行 +# - SYNC_FREQUENCY=60 # 需要定期从数据库加载数据时取消注释该行 +# - FRONTEND_BASE_URL=https://openai.justsong.cn # 多机部署时从节点取消注释该行 + labels: + createdBy: "Apps" +networks: + 1panel-network: + external: true diff --git a/apps/one-hub/README.md b/apps/one-hub/README.md new file mode 100644 index 0000000..7b0e5d1 --- /dev/null +++ b/apps/one-hub/README.md @@ -0,0 +1,80 @@ + +# One Hub + +OpenAI 接口管理 & 分发系统,改自songquanpeng/one-api。支持更多模型,加入统计页面,完善非openai模型的函数调用。 + +![](https://cdn.jsdelivr.net/gh/xiaoY233/PicList@main/public/assets/One-Hub.png) + +![](https://img.shields.io/badge/Copyright-arch3rPro-ff9800?style=flat&logo=github&logoColor=white) + +> 管理员默认账号密码为 root:123456,请登录后及时修改 + +**请不要和原版混用,因为新增功能,数据库与原版不兼容** + +**为了更加简洁,本项目之后,除了新增供应商时会更新程序自带的模型列表,平常不再更新程序自带的模型列表。** + +**如果发现缺少新模型,请在`后台-模型价格-更新价格`中更新新增的模型** + + +> [!WARNING] +> 本项目为个人学习使用,不保证稳定性,且不提供任何技术支持,使用者必须在遵循 OpenAI 的使用条款以及法律法规的情况下使用,不得用于非法用途。 +> 根据[《生成式人工智能服务管理暂行办法》](http://www.cac.gov.cn/2023-07/13/c_1690898327029107.htm)的要求,请勿对中国地区公众提供一切未经备案的生成式人工智能服务。 + +## 功能变化 + +- 全新的 UI 界面 +- 新增用户仪表盘 +- 新增管理员分析数据统计界面 +- 重构了中转`供应商`模块 +- 支持使用`Azure Speech`模拟`TTS`功能 +- 渠道可配置单独的 http/socks5 代理 +- 支持动态返回用户模型列表 +- 支持自定义测速模型 +- 日志增加请求耗时 +- 支持和优化非 OpenAI 模型的函数调用(支持的模型可以在 lobe-chat 直接使用) +- 支持完成倍率自定义 +- 支持完整的分页和排序 +- 支持`Telegram bot` +- 支持模型按次收费 +- 支持模型通配符 +- 支持使用配置文件启动程序 +- 支持模型价格更新 +- 支持自动获取供应商模型 +- 支持仅聊天,开启后如果有传入`function call`参数会跳过该渠道 +- 支持支付 +- 支持配置用户组 RPM +- 支持`Prometheus`监控 + +## 文档 + +请查看[文档](https://github.com/MartialBE/one-hub/wiki) + +## 当前支持的供应商 + +| 供应商 | Chat | Embeddings | Audio | Images | 其他 | +| --------------------------------------------------------------------- | ------------------------ | ---------- | ------ | ----------- | ---------------------------------------------------------------- | +| [OpenAI](https://platform.openai.com/docs/api-reference/introduction) | ✅ | ✅ | ✅ | ✅ | - | +| [Azure OpenAI](https://oai.azure.com/) | ✅ | ✅ | ✅ | ✅ | - | +| [Azure Speech](https://portal.azure.com/) | - | - | ⚠️ tts | - | - | +| [Anthropic](https://www.anthropic.com/) | ✅ | - | - | - | - | +| [Gemini](https://aistudio.google.com/) | ✅ | - | - | - | - | +| [百度文心](https://console.bce.baidu.com/qianfan/overview) | ✅ | ✅ | - | - | - | +| [通义千问](https://dashscope.console.aliyun.com/overview) | ✅ | ✅ | - | - | - | +| [讯飞星火](https://console.xfyun.cn/) | ✅ | - | - | - | - | +| [智谱](https://open.bigmodel.cn/overview) | ✅ | ✅ | - | ⚠️ 图片生成 | - | +| [腾讯混元](https://cloud.tencent.com/product/hunyuan) | ✅ | - | - | - | - | +| [百川](https://platform.baichuan-ai.com/console/apikey) | ✅ | ✅ | - | - | - | +| [MiniMax](https://www.minimaxi.com/user-center/basic-information) | ✅ | ✅ | - | - | - | +| [Deepseek](https://platform.deepseek.com/usage) | ✅ | - | - | - | - | +| [Moonshot](https://moonshot.ai/) | ✅ | - | - | - | - | +| [Mistral](https://mistral.ai/) | ✅ | ✅ | - | - | - | +| [Groq](https://console.groq.com/keys) | ✅ | - | - | - | - | +| [Amazon Bedrock](https://console.aws.amazon.com/bedrock/home) | ⚠️ 仅支持 Anthropic 模型 | - | - | - | - | +| [零一万物](https://platform.lingyiwanwu.com/details) | ✅ | - | - | - | - | +| [Cloudflare AI](https://ai.cloudflare.com/) | ✅ | - | ⚠️ stt | ⚠️ 图片生成 | - | +| [Midjourney](https://www.midjourney.com/) | - | - | - | - | [midjourney-proxy](https://github.com/novicezk/midjourney-proxy) | +| [Cohere](https://cohere.com/) | ✅ | - | - | - | - | +| [Stability AI](https://platform.stability.ai/account/credits) | - | - | - | ⚠️ 图片生成 | - | +| [Coze](https://www.coze.com/open/docs/chat?_lang=zh) | ✅ | - | - | - | - | +| [Ollama](https://github.com/ollama/ollama) | ✅ | ✅ | - | - | - | +| [Suno](https://suno.com/) | - | - | - | - | [Suno-API](https://github.com/Suno-API/Suno-API) | diff --git a/apps/one-hub/data.yml b/apps/one-hub/data.yml new file mode 100644 index 0000000..238e9d8 --- /dev/null +++ b/apps/one-hub/data.yml @@ -0,0 +1,19 @@ +name: One-Hub +tags: + - AI / 大模型 +title: OpenAI 接口管理 & 分发系统 +description: OpenAI 接口管理 & 分发系统 +additionalProperties: + key: one-hub + name: One-Hub + tags: + - AI + shortDescZh: AI模型接口管理与分发系统,OpenAI 接口管理 & 分发系统,改自songquanpeng/one-api。支持更多模型,加入统计页面,完善非openai模型的函数调用。 + shortDescEn: Access all LLM through the standard OpenAI API format, easy to deploy & use + type: website + crossVersionUpdate: true + limit: 0 + recommend: 0 + website: https://one-hub.xiao5.info/ + github: https://github.com/MartialBE/one-hub + document: https://github.com/MartialBE/one-hub/blob/main/README.md diff --git a/apps/one-hub/latest/data.yml b/apps/one-hub/latest/data.yml new file mode 100644 index 0000000..c3896c3 --- /dev/null +++ b/apps/one-hub/latest/data.yml @@ -0,0 +1,26 @@ +additionalProperties: + formFields: + - default: 3000 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: Port + labelZh: 端口 + required: true + rule: paramPort + type: number + - default: Asia/Shanghai + edit: true + envKey: TZ + labelEn: Time Zone + labelZh: 时区 + required: true + type: text + - default: 9khGG1O59Ih4ZWrpsiFKTf8bW7ZqJR01 + edit: true + envKey: USER_TOKEN_SECRET + labelEn: Password + labelZh: 用户Token + random: true + required: true + rule: paramComplexity + type: password \ No newline at end of file diff --git a/apps/one-hub/latest/docker-compose.yml b/apps/one-hub/latest/docker-compose.yml new file mode 100644 index 0000000..62c3b9b --- /dev/null +++ b/apps/one-hub/latest/docker-compose.yml @@ -0,0 +1,26 @@ +services: + one-hub: + image: martialbe/one-api:latest + container_name: ${CONTAINER_NAME} + restart: always + ports: + - ${PANEL_APP_PORT_HTTP}:3000 + networks: + - 1panel-network + command: --log-dir /app/logs + volumes: + - ./data:/data + - ./logs:/app/logs + environment: + - TZ=${TZ} + - USER_TOKEN_SECRET=${USER_TOKEN_SECRET} +# - SESSION_SECRET=${SESSION_SECRET} +# - REDIS_CONN_STRING=redis://redis +# - NODE_TYPE=slave # 多机部署时从节点取消注释该行 +# - SYNC_FREQUENCY=60 # 需要定期从数据库加载数据时取消注释该行 +# - FRONTEND_BASE_URL=https://openai.justsong.cn # 多机部署时从节点取消注释该行 + labels: + createdBy: "Apps" +networks: + 1panel-network: + external: true diff --git a/apps/one-hub/logo.png b/apps/one-hub/logo.png new file mode 100644 index 0000000..da6602d Binary files /dev/null and b/apps/one-hub/logo.png differ
+ New-API @@ -451,10 +451,19 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数 0.8.7.5 • [官网链接](https://docs.newapi.pro/) + + + +One-Hub +
One-Hub +
+ +🔗 统一的AI模型管理和调用平台,支持多种大语言模型集成 + +0.14.22 • [官网链接](https://github.com/one-hub/one-hub)
+