模型管理 
获取模型管理器信息 
POST /manager/get_model_manager
用途:启动程序时,首个调用的接口,用于检查是否安装模型管理器,和已安装的模型列表等
| 请求表单 | ||||
|---|---|---|---|---|
| 参数名称 | 数据类型 | 默认值 | 是否必传 | 说明 | 
| manager_name | string | all | 否 | 可传:ollama、ALL | 
| 响应字段说明 | ||
|---|---|---|
| 字段名称 | 数据类型 | 说明 | 
| manager_name | string | 管理器名称,如:ollama | 
| version | string | 管理器版本 | 
| models | array | 大模型列表,参考大模型字段说明 | 
| status | bool | 是否安装 | 
| 大模型字段说明 | ||
|---|---|---|
| 字段名称 | 数据类型 | 说明 | 
| full_name | string | 完整模型名称,如:deepseek-r1:1.5b | 
| model | string | 模型名称,如:deepseek-R1 | 
| msg | string | 英文描述 | 
| title | string | 中文描述 | 
| parameters | string | 参数规模,如1.5b | 
| install | bool | 是否安装 | 
| size | bool | 模型文件大小 | 
| download_size | int | 下载大小(如果未安装状态) | 
| link | string | 模型介绍页URL地址 | 
| pull_count | string | 模型下载次数 | 
| updated | string | 更新时间,如:5 days ago | 
| updated_time | int | 将updated重新计算为时间戳,如:1738896215 | 
| capability | array | 模型功能,如:llm、embedding、vision、tools,这些值可能同时存在,不过embedding功能是单一的,包含vision说明支持图片识别,包含tools说明支持工具调用包含embedding说明不是大语言模型,而是向量模型,主要用于将内容转换为向量 | 
| running | bool | 是否为启动状态 | 
| memory_size | int | 当前占用内存大小,只有running=true时有意义 | 
| memory_require | int | 内存大小要求,通常是最低 | 
| need_gpu | bool | 是否需要GPU | 
| performance | int | 基于当前机器配置,评估模型的性能(单位tokens/s),参考:-1=未评估,0=无法运行,1-3=非常慢,4-7=慢,8-25=一般,26-40=快,40+=极速 | 
响应示例:
{
    "status":0,
    "code":200,
    "msg":"模型管理信息获取成功",
    "error_msg":"",
    "message":[
        {
            "manager_name":"ollama",
            "version":"3.1",
            "status":true,
            "models":[
                {
                    "full_name": "deepseek-r1:1.5b",
                    "model": "deepseek-r1",
                    "parameters": "1.5b",
                    "download_size": "1.1GB",
                    "size": 1117322599,
                    "msg": "DeepSeek's first-generation of reasoning models with comparable performance to OpenAI-o1, including six dense models distilled from DeepSeek-R1 based on Llama and Qwen.",
                    "title": "DeepSeek第一代与OpenAI-o1性能相当的推理模型,包括六个基于Llama和Qwen从DeepSeek-R1中蒸馏出的密集模型。",
                    "link": "https://ollama.com/library/deepseek-r1:1.5b",
                    "pull_count": "14.2M",
                    "tag_count": "29",
                    "updated": "5 days ago",
                    "updated_time": 1738896215,
                    "capability": [
                      "llm"
                    ],
                    "install": true,
                    "running": false,
                    "memory_size": 0,
                    "memory_require": 0,
                    "need_gpu": false,
                    "performance": -1
                  },
                ...
            ]
        }
        ...
    ]
}安装模型管理器 
POST /manager/install_model_manager
用途:下载并安装指定模型管理器
| 请求表单 | ||||
|---|---|---|---|---|
| 参数名称 | 数据类型 | 默认值 | 是否必传 | 说明 | 
| manager_name | string | ollama | 是 | 可传:ollama | 
| models_path | string | 否 | 指定ollama模型存储路径(可调用路径选择接口选择) | 
| 响应字段说明 | ||
|---|---|---|
| 字段名称 | 数据类型 | 说明 | 
响应示例:
{
    "status":0,
    "code":200,
    "msg":"安装任务创建成功",
    "error_msg":"",
    "message":{
    }
            
}设置ollama接口地址 
POST /manager/set_ollama_host
用途:初始化时,用户可以安装,也可以设置ollama地址;此外,在本地模型管理应该也提供ollama地址设置
| 请求表单 | ||||
|---|---|---|---|---|
| 参数名称 | 数据类型 | 默认值 | 是否必传 | 说明 | 
| ollama_host | string | http://127.0.0.1:11434 | 是 | ollama接口地址,如果不设置,使用默认值 | 
| 响应字段说明 | ||
|---|---|---|
| 字段名称 | 数据类型 | 说明 | 
响应示例:
{
    "status": 0,
    "code": 200,
    "msg": "设置成功",
    "error_msg": "",
    "message":null
}选择路径(通用) 
POST /index/select_folder
用途:需要用户选择路径时
| 请求表单 | ||||
|---|---|---|---|---|
| 参数名称 | 数据类型 | 默认值 | 是否必传 | 说明 | 
| 响应字段说明 | ||
|---|---|---|
| 字段名称 | 数据类型 | 说明 | 
| folder | string | 选中的路径 | 
响应示例:
{
    "status": 0,
    "code": 200,
    "msg": "选择成功",
    "error_msg": "",
    "message": {
        "folder": "d:\\Users\\hwl\\Documents"
    }
}获取模型管理器安装进度 
POST /manager/get_model_manager_install_progress
用途:请求安装模型管理器后,立即调用此接口显示安装进度
| 请求表单 | ||||
|---|---|---|---|---|
| 参数名称 | 数据类型 | 默认值 | 是否必传 | 说明 | 
| manager_name | string | ollama | 是 | 可传:ollama | 
| 响应字段说明 | ||
|---|---|---|
| 字段名称 | 数据类型 | 说明 | 
| status | int | 0=等待执行 1=正在下载 2=正在安装 3=安装成功 -1=安装失败 | 
| total | int | 模型大小(bytes) | 
| completed | int | 已下载大小(bytes) | 
| progress | 48 | 下载进度,百分比 | 
| speed | int | 下载速度(bytes) 每秒 | 
响应示例:
{
    "status":0,
    "code":200,
    "msg":"获取成功",
    "error_msg":"",
    "message":{
        "status": 1,
        "progress": 48,
        "speed": 1613824,
        "total": 4683073184,
        "completed": 2256206100
  }
            
}获取模型列表 
POST /manager/get_model_list
用途:获取指定管理器下的所有可用模型(含未安装的)
| 请求表单 | ||||
|---|---|---|---|---|
| 参数名称 | 数据类型 | 默认值 | 是否必传 | 说明 | 
| manager_name | string | ollama | 否 | 管理器名称,默认:ollama | 
| 响应字段说明 | ||
|---|---|---|
| 字段名称 | 数据类型 | 说明 | 
| model | string | 模型名称,如:deepseek-R1 | 
| title | string | 中文描述 | 
| parameters | string | 参数规模,如1.5b | 
| install | bool | 是否安装 | 
| size | bool | 模型文件大小 | 
| running | bool | 是否为启动状态 | 
| memory_size | int | 当前占用内存大小,只有running=true时有意义 | 
| memory_require | int | 内存大小要求,通常是最低 | 
| need_gpu | bool | 是否需要GPU | 
| performance | int | 基于当前机器配置,评估模型的性能(单位tokens/s),参考:-1=未评估,0=无法运行,1-3=非常慢,4-7=慢,8-25=一般,26-40=快,40+=极速 | 
| is_default | bool | 是否默认模型,如果为默认模型,下次打开对话自动选择此模型 | 
获取机器配置信息 
GET/POST /manager/get_configuration_info
用途:引导安装,安装模型,其它用户需要查看时
| 请求表单 | ||||
|---|---|---|---|---|
| 参数名称 | 数据类型 | 默认值 | 是否必传 | 说明 | 
| 响应字段说明 | ||
|---|---|---|
| 字段名称 | 数据类型 | 说明 | 
| cpu_model | string | CPU型号 | 
| cpu_cores | int | CPU核心数 | 
| cpu_clock | string | CPU主频速度,如4.9GHz | 
| memory_size | int | 内存大小 | 
| free_memory_size | int | 可用内存大小 | 
| gpu_model | string | GPU型号 | 
| gpu_type | string | GPU类型,如:Nvidia、AMD、Intel等 | 
| is_cuda | bool | 是否支持cuda | 
| gpu_memory | int | GPU内存大小 | 
| gpu_free_memory_size | int | GPU可用内存大小 | 
| os_type | string | 操作系统类型:Windows、Linux、MacOS | 
| os_name | string | 操作系统名称:Ubuntu 20.04 LTS | 
| os_version | string | 20.04.1 | 
| recommend | string | 模型选择建议(文字描述) | 
{
  "status": 0,
  "code": 200,
  "msg": "获取配置信息成功",
  "error_msg": "",
  "message": {
    "cpu_model": "AMD Ryzen 9 3900X 12-Core Processor            ",
    "cpu_cores": 24,
    "cpu_clock": "3.793GHz",
    "memory_size": 68628742144,
    "free_memory_size": 39185162240,
    "gpu_model": "NVIDIA GeForce RTX 4090",
    "gpu_type": "Nvidia",
    "is_cuda": true,
    "gpu_memory": 24564,
    "gpu_free_memory_size": 21751,
    "os_type": "Windows",
    "os_name": "Microsoft Windows 11 专业版",
    "os_version": "10.0.26100",
    "recommend": "根据您的硬件配置,可以流畅运行大部分中大规模的模型,如:32b、27b、24b、14b、7b 等"
  }
}安装指定大模型 
POST /manager/install_model
用途:引导安装,安装模型
| 请求表单 | ||||
|---|---|---|---|---|
| 参数名称 | 数据类型 | 默认值 | 是否必传 | 说明 | 
| model | string | 是 | 要安装的模型名称 | |
| parameters | string | 是 | 要安装的参数参数规模版本 | 
| 响应字段说明 | ||
|---|---|---|
| 字段名称 | 数据类型 | 说明 | 
响应示例:
{
    "status":0,
    "code":200,
    "msg":"安装任务创建成功",
    "error_msg":"",
    "message":null
            
}获取大模型安装进度 
POST /manager/get_model_install_progress
用途:请求安装大模型后,立即调用此接口显示安装进度
| 请求表单 | ||||
|---|---|---|---|---|
| 参数名称 | 数据类型 | 默认值 | 是否必传 | 说明 | 
| model | string | 是 | 要安装的模型名称 | |
| parameters | string | 是 | 要安装的参数参数规模版本 | 
| 响应字段说明 | ||
|---|---|---|
| 字段名称 | 数据类型 | 说明 | 
| status | int | 0=等待执行 1=正在下载 2=正在安装 3=安装成功 -1=安装失败 | 
| digest | string | 文件名 | 
| total | int | 模型大小(bytes) | 
| completed | int | 已下载大小(bytes) | 
| progress | 48 | 下载进度,百分比 | 
| speed | int | 下载速度(bytes) 每秒 | 
响应示例:
{
  "status": 0,
  "code": 200,
  "msg": "获取安装进度成功",
  "error_msg": "",
  "message": {
    "digest": "sha256:96c415656d377afbff962f6cdb2394ab092ccbcbaab4b82525bc4ca800fe8a49",
    "status": 1,
    "progress": 48,
    "speed": 1613824,
    "total": 4683073184,
    "completed": 2256206100
  }
}重新选择下载节点 
POST /manager/reconnect_model_download
作用:当模型下载速度变得很慢时调用,比如从10MB速度降到200KB这种
PS:重新开始下载后,将从断点续传此前的进度,不会从头开始下载。
| 请求表单 | ||||
|---|---|---|---|---|
| 参数名称 | 数据类型 | 默认值 | 是否必传 | 说明 | 
| 响应字段说明 | ||
|---|---|---|
| 字段名称 | 数据类型 | 说明 | 
响应示例:
{
    "status":0,
    "code":200,
    "msg":"将为您重新下载,并断点续传。",
    "error_msg":"",
    "message":null
}删除指定大模型 
POST /manager/remove_model
用途:删除大模型
| 请求表单 | ||||
|---|---|---|---|---|
| 参数名称 | 数据类型 | 默认值 | 是否必传 | 说明 | 
| model | string | 是 | 模型名称,示例:deepseek-R1 | |
| parameters | string | 是 | 要安装的参数参数规模版本 | 
| 响应字段说明 | ||
|---|---|---|
| 字段名称 | 数据类型 | 说明 | 
响应示例:
{
    "status":0,
    "code":200,
    "msg":"删除成功",
    "error_msg":"",
    "message":null
}提交前端日志 
POST /index/write_logs
用途:前端报错时
PS: %appdata%/aingdesk/logs 目录查看日志内容
| 请求表单 | ||||
|---|---|---|---|---|
| 参数名称 | 数据类型 | 默认值 | 是否必传 | 说明 | 
| logs | string | 是 | 错误信息 | 
| 响应字段说明 | ||
|---|---|---|
| 字段名称 | 数据类型 | 说明 | 
响应示例:
{
    "status":0,
    "code":200,
    "msg":"写入成功",
    "error_msg":"",
    "message":null
            
}
