Thor(雷神托尔) 是一款强大的人工智能模型管理工具,其主要目的是为了实现多种AI模型的统一管理和使用。通过Thor(雷神托尔),用户可以轻松地管理和使用众多AI模型,而且Thor(雷神托尔)兼容OpenAI的接口格式,使得使用更加方便。
Thor(雷神托尔)提供了丰富的功能:
此外,Thor(雷神托尔)还支持多种AI大模型,包括OpenAI、星火大模型、Claudia、智谱AI、Ollama、通义千问(阿里云)、AzureOpenAI以及腾讯混元大模型,满足了用户对各种AI模型的需求。
Thor(雷神托尔)还支持多种数据库,包括SqlServer、PostgreSql、Sqlite以及MySql,用户可以根据自己的需要选择合适的数据库。
修改appsettings.json
的ConnectionStrings:DBType
配置项即可切换数据库类型。请注意切换数据库不会迁移数据。
graph LR
A(用户)
A --->|使用 Thor 分发的 key 进行请求| B(Thor)
B -->|中继请求| C(OpenAI)
B -->|中继请求| D(Azure)
B -->|中继请求| E(其他 OpenAI API 格式下游渠道)
B -->|中继并修改请求体和返回体| F(非 OpenAI API 格式下游渠道)
默认账号密码 admin admin
需要注意的是,如果克隆项目后,项目根目录缺少data
时,需要手动创建,docker compose up
时,需要挂载本地目录data
。
使用docker compose
启动服务:
version: '3.8'
services:
thor:
image: aidotnet/thor:latest
ports:
- 18080:8080
container_name: thor
volumes:
- ./data:/data
environment:
- TZ=Asia/Shanghai
- DBType=sqlite # sqlite | [postgresql,pgsql] | [sqlserver,mssql] | mysql
- ConnectionStrings:DefaultConnection=data source=/data/token.db
- ConnectionStrings:LoggerConnection=data source=/data/logger.db
- RunMigrationsAtStartup=true
使用docker run启动服务
docker run -d -p 18080:8080 --name thor --network=gateway -v $PWD/data:/data -e Theme=lobe -e TZ=Asia/Shanghai -e DBType=sqlite -e ConnectionStrings:ConnectionString="data source=/data/token.db" -e RunMigrationsAtStartup=true -e ConnectionStrings:LoggerConnectionString="data source=/data/logger.db" aidotnet/thor:latest
docker compose
版本
项目根目录创建docker-compose.yml
文件,内容如下:
version: '3.8'
services:
thor:
image: aidotnet/thor:latest
container_name: thor
ports:
- 18080:8080
volumes:
- ./data:/data
environment:
- TZ=Asia/Shanghai
- DBType=sqlite
- ConnectionStrings:DefaultConnection=data source=/data/token.db
- ConnectionStrings:LoggerConnection=data source=/data/logger.db
- RunMigrationsAtStartup=true
执行如下命令打包镜像
sudo docker compose build
执行以下命令启动服务
sudo docker compose up -d
docker run版本
docker run -d -p 18080:8080 --name ai-dotnet-api-service -v $(pwd)/data:/data -e RunMigrationsAtStartup=true -e Theme=lobe -e TZ=Asia/Shanghai -e DBType=sqlite -e ConnectionStrings:DefaultConnection=data source=/data/token.db -e ConnectionStrings:LoggerConnection=data source=/data/logger.db aidotnet/thor:latest
然后访问 http://localhost:18080 即可看到服务启动成功。
docker compose
版本
项目根目录创建docker-compose.yml
文件,内容如下:
version: '3.8'
services:
thor:
image: aidotnet/thor:latest
container_name: thor
ports:
- 18080:8080
volumes:
- ./data:/data
environment:
- TZ=Asia/Shanghai
- DBType=postgresql
- ConnectionStrings:DefaultConnection=Host=127.0.0.1;Port=5432;Database=token;Username=token;Password=dd666666
- ConnectionStrings:LoggerConnection=Host=127.0.0.1;Port=5432;Database=logger;Username=token;Password=dd666666
- RunMigrationsAtStartup=true
执行如下命令打包镜像
sudo docker compose build
执行以下命令启动服务
sudo docker compose up -d
docker run版本
docker run -d \
--name thor \
-p 18080:8080 \
-v $(pwd)/data:/data \
-e TZ=Asia/Shanghai \
-e DBType=postgresql \
-e RunMigrationsAtStartup=true \
-e ConnectionStrings:DefaultConnection=Host=127.0.0.1;Port=5432;Database=token;Username=token;Password=dd666666 \
-e ConnectionStrings:LoggerConnection=Host=127.0.0.1;Port=5432;Database=logger;Username=token;Password=dd666666 \
aidotnet/thor:latest
然后访问 http://localhost:18080 即可看到服务启动成功。
docker compose
版本
项目根目录创建docker-compose.yml
文件,内容如下:
version: '3.8'
services:
thor:
image: aidotnet/thor:latest
container_name: thor
ports:
- 18080:8080
volumes:
- ./data:/data
environment:
- TZ=Asia/Shanghai
- DBType=sqlserver
- ConnectionStrings:DefaultConnection=Server=127.0.0.1;Database=token;User Id=sa;Password=dd666666;
- ConnectionStrings:LoggerConnection=Server=127.0.0.1;Database=logger;User Id=sa;Password=dd666666;
- RunMigrationsAtStartup=true
执行如下命令打包镜像
sudo docker compose build
执行以下命令启动服务
sudo docker compose up -d
docker run版本
docker run -d \
--name thor \
-p 18080:8080 \
-v $(pwd)/data:/data \
-e TZ=Asia/Shanghai \
-e RunMigrationsAtStartup=true \
-e DBType=sqlserver \
-e ConnectionStrings:DefaultConnection=Server=127.0.0.1;Database=token;User Id=sa;Password=dd666666; \
-e ConnectionStrings:LoggerConnection=Server=127.0.0.1;Database=logger;User Id=sa;Password=dd666666; \
aidotnet/thor:latest
然后访问 http://localhost:18080 即可看到服务启动成功。
docker compose
版本
项目根目录创建docker-compose.yml
文件,内容如下:
version: '3.8'
services:
thor:
image: aidotnet/thor:latest
container_name: thor
ports:
- 18080:8080
volumes:
- ./data:/data
environment:
- TZ=Asia/Shanghai
- DBType=mysql
- "ConnectionStrings:DefaultConnection=mysql://root:dd666666@localhost:3306/token"
- "ConnectionStrings:LoggerConnection=mysql://root:dd666666@localhost:3306/logger"
- RunMigrationsAtStartup=true
执行如下命令打包镜像
sudo docker compose build
执行以下命令启动服务
sudo docker compose up -d
docker run版本
docker run -d \
--name thor \
-p 18080:8080 \
-v $(pwd)/data:/data \
-e TZ=Asia/Shanghai \
-e DBType=mysql \
-e "ConnectionStrings:DefaultConnection=mysql://root:dd666666@localhost:3306/token" \
-e "ConnectionStrings:LoggerConnection=mysql://root:dd666666@localhost:3306/logger" \
-e RunMigrationsAtStartup=true \
aidotnet/thor:latest
然后访问 http://localhost:18080 即可看到服务启动成功。