当前位置: 首页 > news >正文

【开源软件】SimpleAI一款轻量级的桌面随身AI助手

今天推荐一款自己开发的开源软件
首先放链接
https://gitcode.com/qq_43025083/SimpleAI
SimpleAI

你是否在为遇到一些小问题又不想浪费调用次数而烦恼?你是否遇到一些简单的问题而不想打开网页而忧心?👉simpleAI来了~

这是一个基于 pywebviewlangchain 构建的极简跨平台桌面AI应用,目的是用户可以在桌面快速利用快捷键调出桌面进行对话,且本应用预设了多个专业prompt,极度提高用户的对话体验。
请添加图片描述

截图
请添加图片描述
请添加图片描述

🚀 功能特性

  • 后台常驻运行: 应用在后台静默运行,不打扰您的工作流程。
  • 全局快捷键唤醒: 随时随地通过自定义快捷键 (Ctrl+Shift+A 为默认) 召唤或隐藏主窗口。
  • 系统托盘管理:
    • 应用图标会显示在系统托盘区,方便管理。
    • 右键菜单提供“显示/隐藏”、“设置”、“退出”等核心操作。
  • 窗口置顶: 主窗口总是在所有其他窗口之上,方便快速参考和交互。
  • 高度可配置:
    • API 设置: 自由配置您的大语言模型名称、API Key 和 API Base URL。
    • 快捷键设置: 动态修改全局唤醒快捷键,无需重启。
    • 提示词管理: 在设置界面中,可以轻松添加编辑删除自定义的AI角色(Prompts)。
  • 持久化聊天记录: 对话历史会自动保存在本地的 chat_history.db (SQLite) 文件中,每个AI角色拥有独立的对话历史。

🛠️ 技术栈

  • 核心框架:
    • pywebview: 用于将Web内容包装成桌面应用,并建立Python与JavaScript之间的双向通信。
    • langchain: 强大的语言模型框架,用于构建、管理和调用AI模型。
  • 后端:
    • Python: 主要的后端逻辑语言。
    • pystray & Pillow: 实现系统托盘图标功能。
    • keyboard: 用于监听全局快捷键。
  • 前端:
    • HTML / CSS / JavaScript: 构建用户界面和交互逻辑。
  • 数据库:
    • SQLite: 轻量级的本地数据库,用于存储聊天历史。

🏃 如何运行

  1. 克隆项目

    git clone https://github.com/Heyflyingpig/SimpleAI
    cd SimpleAI
    
  2. 安装依赖
    项目依赖于一些Python库,你可以通过 pip 来安装它们:

    pip install -r requirements.txt
    
  3. 配置 (首次运行)
    首次运行前,请检查项目根目录下的 secrets.jsonprompts.json

    • secrets.json: 填入您的 API Key 等信息。
    • prompts.json: 您可以在此预先修改或添加提示词。
      如果文件不存在,程序首次运行时会自动创建默认版本。
  4. 启动应用
    一切准备就绪后,运行 main.py 即可启动应用:

    python main.py
    

📖 使用指南

  1. 主窗口: 启动后出现的主窗口是您的主要AI对话界面。您可以按 Ctrl+Enter 发送消息。
  2. 隐藏/显示: 点击窗口的关闭按钮或按快捷键,窗口会隐藏。再次按快捷键可重新显示。
  3. 系统托盘: 在电脑右下角找到应用图标。右键点击可进行设置或退出应用。
  4. 设置:
    • API 设置: 配置连接AI模型所需的信息。
    • 快捷键设置: 点击输入框,然后按下您想设置的新快捷键组合,点击保存即可生效。
    • 提示词设置:
      • 左侧是提示词列表,右侧是编辑区。
      • 点击列表中的项进行编辑。
      • 点击“清空表单”按钮可以进入新增模式。
      • 点击列表项右侧的“删除”按钮可删除自定义提示词(默认提示词无法删除)。

注意:如果您一开始没使用过该程序,一开始直接启动设置选项,需要修改api等相关设置,否则无法正常使用。

http://www.lryc.cn/news/599438.html

相关文章:

  • 航段导航计算机 (Segment_Navigator) 设计与实现
  • OSPF 协议(多区域)
  • Python智能优化算法实战指南
  • 汪小菲食通达公司成立新零售公司,布局餐饮零售新赛道
  • 轻量级音乐元数据编辑器Metadata Remote
  • SpringBoot整合Liquibase提升数据库变更的可控性、安全性、自动化程度(最详细)
  • 自动化UI测试工具TestComplete的AI双引擎:即时数据集 + 自愈测试
  • SpringBoot学习路径二--Spring Boot自动配置原理深度解析
  • Qt 多媒体开发:音频与视频处理
  • 剪映将绿幕视频扣成透明背景视频转webm格式可以在网页上透明播放
  • 软件工程之可行性研究:从理论到实践的全面解析
  • SpringBoot 集成Mybatis Plus
  • ESLint前端工程实践
  • CMake保姆级教程
  • 力扣1472. 设计浏览器历史记录
  • Execel文档批量替换标签实现方案
  • 三维图像识别中OpenCV、PCL和Open3D结合的主要技术概念、部分示例
  • 【vue3+vue-pdf-embed】实现PDF+图片预览
  • Ubuntu22 上,用C++ gSoap 创建一个简单的webservice
  • 前端学习9:JavaScript--对象与原型
  • vue3 组件生命周期,watch和computed
  • SIP广播对讲系统:构建高效智能的语音通信网络
  • KNN 算法进阶:从基础到优化的深度解析
  • docker compose xtify-music-web
  • DNS 服务正反向解析与 Web 集成实战:从配置到验证全流程
  • 解决企业微信收集表没有图片、文件组件,不能收集图片的问题
  • 【57】MFC入门到精通——MFC 多线程编程总结
  • 飞算 JavaAI “撤回接口信息” 功能:误删接口不用慌,一键恢复更省心
  • 【在线五子棋对战】十、对战玩家匹配管理模块
  • 【LeetCode 热题 100】22. 括号生成——(解法一)选左括号还是选有括号