# ailt **Repository Path**: chenghai/ailt ## Basic Information - **Project Name**: ailt - **Description**: 智慧兰台 - **Primary Language**: Rust - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-05 - **Last Updated**: 2026-08-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 智汇兰台(Image Summary) 一个基于 **Tauri 2 + React + TypeScript + Rust** 的轻量级跨平台桌面应用。选择本地图片文件夹,通过 OpenAI 兼容视觉模型逐张总结,最后生成一份 Markdown。 ## 功能 - 通过系统文件浏览器选择输入和输出文件夹 - 递归扫描 PNG、JPEG、WebP、GIF、BMP、TIFF 图片 - 本地缩放图片后,并发调用视觉模型 - 实时展示处理进度,单张失败不影响整个任务 - 每张图片生成独立的同名 Markdown,并镜像输入目录的相对路径 - 独立提示词页面,可用单张图片验证效果后保存 - 可配置是否开启模型 Think - 查看、预览、打开和删除历史记录 - API Key 保存到系统安全凭据库 - 本地滚动日志及“打开日志目录”诊断入口 - Windows 可生成 NSIS `setup.exe` 安装程序 ## 开发环境 - Node.js 20+ - Rust 1.77.2+ - macOS:Xcode Command Line Tools - Windows:Microsoft C++ Build Tools、WebView2 当前机器的 Node 和 Rust 均可通过 Homebrew 安装: ```bash brew install node rust ``` ## 本地运行 ```bash npm install npm run tauri dev ``` 仅预览前端: ```bash npm run dev ``` 浏览器预览模式不会执行文件扫描、系统对话框、凭据存储等桌面能力。 ## 构建 构建当前平台: ```bash npm run tauri build ``` 前端和 Rust 单独检查: ```bash npm run build cd src-tauri cargo check ``` ## Windows `setup.exe` 建议在 Windows 11 或 GitHub Actions 的 `windows-latest` 环境构建,不建议从 macOS 交叉编译正式安装包。 ```powershell npm install npm run tauri build -- --bundles nsis ``` 输出通常位于: ```text src-tauri\target\release\bundle\nsis\智汇兰台_1.0.0_x64-setup.exe ``` 安装包默认嵌入约 1.8 MB 的 WebView2 Bootstrapper;客户电脑缺少 WebView2 时,安装程序会静默安装。离线客户环境可把 `webviewInstallMode` 改为 `offlineInstaller`,但安装包会明显增大。 正式交付客户前,建议使用 Windows 代码签名证书签名安装程序,降低 SmartScreen 的“未知发布者”提示。 ## 项目结构 ```text image_summary/ ├── src/ # React/TypeScript 界面 │ ├── pages/ # 总结、历史、设置、关于 │ ├── components/ │ └── api.ts # Tauri 命令封装 ├── src-tauri/ │ ├── src/lib.rs # 图片、模型、配置、历史核心逻辑 │ ├── capabilities/ # 桌面权限 │ └── tauri.conf.json # 窗口和打包配置 ├── package.json └── vite.config.ts ``` ## 配置和数据 - 普通配置保存在操作系统应用配置目录中。 - API Key 通过 `keyring` 写入 macOS Keychain、Windows Credential Manager 或 Linux Secret Service。 - 默认输出目录为用户文档目录下的 `Image Summary`。 - 应用不会把模型服务商的 API Key 编译进程序。 ## 日志与诊断 应用记录启动信息、配置变更、图片扫描数量、模型请求状态与耗时、单图处理结果和 异常信息。不会记录 API Key、图片 Base64 或完整提示词。 日志单文件上限为 5 MB,最多保留 5 个轮转文件。在“关于”页面点击“打开日志目录” 可直接查看。系统默认位置: ```text Windows: %LOCALAPPDATA%\com.imagesummary.desktop\logs macOS: ~/Library/Logs/com.imagesummary.desktop ``` Windows release 构建使用 GUI 子系统,日志只写入文件,不显示控制台窗口。开发模式仍会 同时把日志输出到终端,方便调试。 ### Ollama 本地 Ollama 推荐配置: ```text Base URL: http://localhost:11434/v1 API Key: 留空 模型名: qwen3.6:35b ``` 应用会把图片在本机缩放并编码为 JPEG Base64,通过 Ollama 的 OpenAI 兼容 `/v1/chat/completions` 接口作为 `image_url` 发送。开启 Think 时发送 `reasoning_effort: "high"`,关闭时发送 `"none"`。 输出路径示例: ```text 输入:图片目录/产品/A/正面.jpg 输出:输出目录/产品/A/正面.md ``` 如果使用开发方统一提供的模型额度,不应把供应商 API Key 放进客户端;应改为由自己的服务端代理模型请求,并增加客户鉴权和额度控制。