Skip to content

deanxv/hixAI2api

Repository files navigation

中文

HixAI2Api

觉得有点意思的话 别忘了点个 ⭐

Telegram 交流群

(原coze-discord-proxy交流群, 此项目仍可进此群交流 / 反馈 bug) (群内提供公益 API、AI 机器人)

功能

  • 支持对话接口(流式/非流式)(/chat/completions),详情查看支持模型
  • 支持联网搜索,在模型名后添加-search即可(如:deepseek-r1-search)
  • 支持新闻媒体搜索,在模型名后添加-news即可(如:deepseek-r1-news)
  • 支持学术数据库搜索,在模型名后添加-academic即可(如:deepseek-r1-academic)
  • 支持识别图片/文件多轮对话
  • 支持面板配置API-KEYcookie,详情查看进阶配置
  • 支持自定义请求头校验值(Authorization),详情查看配置 API-KEY
  • 支持 cookie 池,详情查看配置 COOKIE
  • 支持请求失败自动切换 cookie 重试(需配置 cookie 池)
  • 支持定时更新 Cookie 剩余 Credit 额度
  • 可配置代理请求(环境变量PROXY_URL)

❗︎ 由于历史对话存储在 HixAI 的服务上,所以在配置了多Cookie下会存在上下文接不上的情况,而且多轮对话下不支持重新生成回答自定义上下文自定义 system/developer 角色 Content

接口文档:

http://<ip>:<port>/swagger/index.html

示例:

如何使用

如何集成 NextChat

填 接口地址(ip:端口/域名) 及 API-KEY,其它的随便填随便选。

如果自己没有搭建 NextChat 面板,这里有个已经搭建好的可以使用 NeatChat

如何集成 one-api

BaseURL(ip:端口/域名) 及 密钥即API-KEY,其它的随便填随便选。

部署

如果配置了MYSQL_DSN环境变量即使用了MySql数据库服务,请参考如下命令新建该项目所需的库。如果想配置MYSQL_DSN但对部署MySql服务不熟悉可以参考部署到 Zeabur 中的 Zeabur 部署 Mysql

创建数据库示例 sql 命令

CREATE DATABASE hix_ai_2_api CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;

基于 Docker-Compose(All In One) 进行部署

docker-compose pull && docker-compose up -d

docker-compose.yml

不配置MYSQL_DSN时,services 中的db服务可去掉。项目会采用 Sqlite。

version: '3.4'

services:
  hixai2api:
    image: deanxv/hixai2api:latest
    container_name: hixai2api
    restart: always
    ports:
      - "7044:7044"
    volumes:
      - ./data:/app/hixai2api/data
    environment:
      - MYSQL_DSN=hix-ai-2-api:123456@tcp(db:3306)/hix_ai_2_api?charset=utf8mb4&parseTime=true&loc=Asia%2FShanghai  # [可选] 设置之后将使用指定数据库而非 SQLite,请使用 MySQL。
      - BACKEND_SECRET=123456  # [可选]后台管理接口密钥
      - TZ=Asia/Shanghai

  db:
    image: mysql:8.2.0
    restart: always
    container_name: mysql
    volumes:
      - ./data/mysql:/var/lib/mysql  # 挂载目录,持久化存储
    ports:
      - '3306:3306'
    environment:
      TZ: Asia/Shanghai   # 可修改默认时区
      MYSQL_ROOT_PASSWORD: 'root@123456' # 可修改此行 root用户名 密码
      MYSQL_USER: hix-ai-2-api   # 可修改初始化专用用户用户名
      MYSQL_PASSWORD: '123456'    # 可修改初始化专用用户密码
      MYSQL_DATABASE: hix_ai_2_api   # 可修改初始化专用数据库

基于 Docker 进行部署

docker run --name hixai2api -d --restart always \
-p 7044:7044 \
-v $(pwd)/data:/app/hixai2api/data \
-e MYSQL_DSN='hix-ai-2-api:123456@tcp(host:3306)/hix_ai_2_api?charset=utf8mb4&parseTime=true&loc=Asia%2FShanghai' \
-e BACKEND_SECRET=123456 \
-e TZ=Asia/Shanghai \
deanxv/hixai2api

其中MYSQL_DSN[可选]、BACKEND_SECRET修改为自己的。

如果上面的镜像无法拉取,可以尝试使用 GitHub 的 Docker 镜像,将上面的deanxv/hixai2api替换为ghcr.io/deanxv/hixai2api即可。

部署到第三方平台

部署到 Zeabur

Deployed on Zeabur

Zeabur 的服务器在国外,自动解决了网络的问题,同时免费的额度也足够个人使用

  1. 首先 fork 一份代码。

  2. 进入 Zeabur,使用 github 登录,进入控制台。

  3. 在 Service -> Add Service,选择 Git(第一次使用需要先授权),选择你 fork 的仓库。

  4. Deploy 会自动开始,先取消。

  5. 添加环境变量

    MYSQL_DSN=hix-ai-2-api:123456@tcp(host:3306)/hix_ai_2_api?charset=utf8mb4&parseTime=true&loc=Asia%2FShanghai MYSQL 连接信息

    BACKEND_SECRET=123456 [可选] 后台管理接口密钥

保存。

  1. 选择 Redeploy。

Zeabur 部署 Mysql

按照上图创建 MySql 服务后,在环境变量MYSQL_DSN中填写对应的连接信息。

Username:Password@tcp(Host:Port)/hix_ai_2_api?charset=utf8mb4&parseTime=true&loc=Asia%2FShanghai

同样不要忘记创建数据库

部署到 Render

Render 提供免费额度,绑卡后可以进一步提升额度

Render 可以直接部署 docker 镜像,不需要 fork 仓库:Render

配置

环境变量

  1. PORT=7044 [可选]端口,默认为 7044
  2. DEBUG=true [可选]DEBUG 模式,可打印更多信息[true:打开、false:关闭]
  3. MYSQL_DSN=hix-ai-2-api:123456@tcp(host:3306)/hix_ai_2_api?charset=utf8mb4&parseTime=true&loc=Asia%2FShanghai # [可选] 设置之后将使用指定数据库而非 SQLite,请使用 MySQL。
  4. BACKEND_SECRET=123456 [可选]后台管理接口密钥
  5. BACKEND_API_ENABLE=1 [可选]后台管理接口开关(默认:1)[0:关闭,1:开启]
  6. CHAT_MAX_DAYS=7 [可选]对话记录保留天数(默认:-1[永久保留])
  7. ROUTE_PREFIX=hf [可选]路由前缀,默认为空,添加该变量后的接口示例:/hf/v1/chat/completions
  8. PROXY_URL=http://127.0.0.1:7897 [可选]代理
  9. SWAGGER_ENABLE=1 [可选]是否启用 Swagger 接口文档(默认:1)[0:关闭,1:开启]

进阶配置

部署后打开http://<ip>:<port>即可登录后台管理界面,管理密钥为环境变量BACKEND_SECRET的值。

img.png

配置 API-KEY

右上角添加API-KEY

img.png

配置 COOKIE

右上角添加Cookie

img.png

获取 cookie

  1. 打开HixAi
  2. 打开F12开发者工具
  3. 进行一次对话
  4. 如下图所示,右侧chat请求中请求头Cookie中的蓝色高亮__Secure-next-auth.session-token的值(红色高亮)即为所需 cookie 值(整个 Cookie 的值也可以)

支持模型及额度消耗

模型名称 消耗标准额度 消耗高级额度 类型
deepseek-r1 1 0 📘 标准
deepseek-v3 1 0 📘 标准
claude-3-7-sonnet 0 20 🔥 高级
claude-3-5-haiku 10 0 📘 标准
openai-o3-mini 200 0 📘 标准
openai-o1 0 40 🔥 高级
openai-o1-mini 200 0 📘 标准
grok-2 100 0 📘 标准
gpt-4o 30 0 📘 标准
gpt-4o-128k 125 0 📘 标准
gpt-4o-mini 4 0 📘 标准
gpt-4-turbo 0 20 🔥 高级
gpt-4-turbo-128k 0 20 🔥 高级
gpt4 0 45 🔥 高级
claude 4 0 📘 标准
claude-3-5-sonnet 100 0 📘 标准
claude-3-haiku 4 0 📘 标准
claude-3-opus 0 45 🔥 高级
claude-3-5-haiku-200k 4 0 📘 标准
claude-3-5-sonnet-200k 100 0 📘 标准
claude-3-sonnet-200k 100 0 📘 标准
claude-3-haiku-200k 20 0 📘 标准
claude-3-opus-200k 0 120 🔥 高级
gemini-1-5-flash 4 0 📘 标准
gemini-1-5-pro 18 0 📘 标准
gemini-1-5-flash-128k 30 0 📘 标准
gemini-1-5-pro-128k 175 0 📘 标准
gemini-1-5-flash-1m 170 0 📘 标准
gemini-1-5-pro-1m 2500 0 📘 标准
chatgpt 4 0 📘 标准
gpt-3-5-turbo 4 0 📘 标准
gpt-3-5-turbo-16k 12 0 📘 标准
claude-instant-100k 8 0 📘 标准
claude-2 35 0 📘 标准
claude-2-100k 75 0 📘 标准
claude-2-1-200k 300 0 📘 标准
claude-3-sonnet 20 0 📘 标准
gemini 4 0 📘 标准
gemini-1-0-pro 4 0 📘 标准

报错排查

Forbidden

被各种不可知原因禁止访问,可配置PROXY_URL

(【推荐方案】自建 ipv6 代理池绕过 cf 对 ip 的速率限制及 5s 盾或购买IProyal)

No valid cookies available

无可用 Cookie,可能原因:

  1. 没有配置有效 Cookie。
  2. 调用了高级模型,但没有配置高级 Cookie。

其他

HixAI(注册获取 50Credit)

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published