Skip to content

GitHub4LP/StudioDataset

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AIStudio Dataset

项目概述

AIStudio Dataset 是一个提供与百度AIStudio数据集交互的Web应用,支持完整的数据集管理功能,包括查看、创建、编辑、删除数据集以及上传、管理文件等操作。该应用采用Vue 3前端和Node.js后端架构,支持直连和中转两种连接模式。

前置条件

  • Node.js 18+
  • npm 9+
  • 有效的AIStudio cookie (放置于src/server/cookie.txt)

快速开始

1. 安装依赖

npm install

2. 生成API客户端(首次使用或API变更时)

npm run generate:api

3. 启动应用

开发环境:

npm run dev

生产环境:

npm run build
npm run start:prod

通过Python启动(适用于Gradio平台等)

使用main.gradio.py在仅支持Python启动的平台上运行本服务。

前置步骤(首次使用时必须执行):

  1. 确保src/server/cookie.txt中包含有效的AIStudio cookie
  2. 安装依赖:npm install
  3. 生成API客户端:npm run generate:api
  4. 构建前端:npm run build

启动命令:

# 在CMD中设置端口并运行
set GRADIO_SERVER_PORT=7860 && python main.gradio.py

# 在PowerShell中设置端口并运行
$env:GRADIO_SERVER_PORT = "7860"; python main.gradio.py

架构说明

API客户端架构

本项目采用基于OpenAPI规范的自动化API客户端生成架构:

aistudio.ts -> client.ts -> @local/aistudio-api (生成的模块)
  • OpenAPI规范: src/aidtudio_dataset/api/openapi.yaml - 定义所有AI Studio API接口
  • 生成的客户端: node_modules/@local/aistudio-api - 自动生成的TypeScript客户端
  • 适配层: src/aidtudio_dataset/api/client.ts - 简化生成API的使用
  • 业务层: src/aidtudio_dataset/aistudio.ts - 主要的业务逻辑实现

API更新流程

当AI Studio API发生变化时:

  1. 更新 src/aidtudio_dataset/api/openapi.yaml
  2. 运行 npm run generate:api 重新生成客户端代码
  3. 如需要,更新适配层的业务逻辑

配置

  • 默认端口:3000
  • 端口配置:通过PORT或GRADIO_SERVER_PORT环境变量设置
  • WebSocket路径:/queue/join
  • 服务器文件路径配置:可在server.ts的SERVER_FILE_PATHS_CONFIG中配置

功能特性

数据集管理

  • 数据集创建、编辑、删除
  • 数据集列表查看(私有、公开、收藏)
  • 数据集内容查看和编辑
  • 数据集收藏/取消收藏
  • 数据集信息自动更新

文件操作

  • 多种文件上传方式:
    • URL上传(支持自定义Referer和User-Agent)
    • 服务器文件上传
    • 浏览器直接上传
  • 文件管理:
    • 文件重命名、删除、复制
    • 文件预览和下载
    • 批量文件操作

技术特性

  • 基于OpenAPI的类型安全API客户端
  • 自动化的错误处理和重试机制
  • 完整的TypeScript类型支持
  • 模块化的架构设计

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •