Skip to content

ring-operation/LinMuSi-TurboWarp-Expand

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 

Repository files navigation

林缪斯 (Linmius)

林缪斯 Logo

在浏览器中本地运行 AI 模型的 TurboWarp/Scratch 扩展

功能特点 快速开始 使用教程 技术架构


功能特点

  • 本地 AI 推理 - 基于 wllama 在浏览器中直接运行 GGUF 格式模型,数据完全本地处理,无需联网
  • 知识库系统 - 支持自定义知识库,实现 RAG (检索增强生成) 功能
  • AI 训练师 - 内置交互式训练界面,可实时教 AI 新知识
  • 后台线程支持 - Worker 模式运行模型,不阻塞 UI
  • 离线存储 - 模型和知识库数据持久化存储在浏览器 IndexedDB 中
  • 积木块编程 - 完整的 Scratch 积木块支持,拖拽即可实现 AI 功能

快速开始

安装方法

方法一:直接加载(推荐)

  1. 点击下载 林缪斯.js

  2. 打开 TurboWarpScratch

  3. 点击左下角「添加扩展」按钮

  4. 选择「加载自定义扩展」

  5. 点击载入您下载的扩展文件

    林缪斯.js
    

方法二:本地加载

  1. 下载 林缪斯.js 文件(混淆保护版本)
  2. 在 TurboWarp 中选择「从本地文件加载」
  3. 选择下载的 JS 文件

首次使用

  1. 加载模型:点击扩展的「打开模型管理器」按钮
  2. 选择模型:可以从 URL 加载或选择本地 GGUF 文件
  3. 开始对话:模型加载完成后即可使用 AI 功能

使用教程

基础积木块

积木块 功能说明
问 AI: [问题] 向 AI 发送问题并获取回复
问 AI (带知识库): [问题] 使用知识库上下文回答
AI 的回复 获取最近一次 AI 的回复内容
当 AI 回复完成时 事件触发积木

知识库操作

积木块 功能说明
添加知识: [内容] 向当前知识库添加内容
清空知识库 清空所有知识库数据
当前启用的知识库 返回当前知识库名称

字符串处理

积木块 功能说明
将字符串按每 [N] 个字符分割 分割字符串为数组
将数组拼接为字符串 将字符串数组合并

AI 训练师界面

  1. 点击扩展工具栏的「AI训练师」按钮
  2. 创建或选择知识库
  3. 输入 学习: 你想教给 AI 的内容 来训练
  4. 或直接提问让 AI 基于知识库回答

技术架构

┌─────────────────────────────────────────┐
│           TurboWarp / Scratch           │
│              (前端界面)                  │
├─────────────────────────────────────────┤
│         林缪斯扩展 (Linmius)            │
│  ┌─────────────┐    ┌──────────────┐   │
│  │  积木块接口  │    │  UI 管理器    │   │
│  └─────────────┘    └──────────────┘   │
├─────────────────────────────────────────┤
│         Web Worker (可选)               │
│         AI 推理后台线程                  │
├─────────────────────────────────────────┤
│              wllama                     │
│      (WebAssembly GGUF 推理引擎)         │
├─────────────────────────────────────────┤
│         IndexedDB (本地存储)            │
│    模型缓存 | 知识库数据 | 配置信息       │
└─────────────────────────────────────────┘

支持的模型

本扩展支持 GGUF 格式的模型,推荐以下轻量级模型:

模型 大小 特点
Gemma 2B/4B ~1.5-3GB Google 开源,中文支持较好
Llama 3.2 1B/3B ~0.6-2GB Meta 最新,效率高
Qwen 2.5 0.5B/1.5B ~0.3-1GB 阿里云,中文优化
Phi-3/4 Mini ~2-4GB Microsoft,推理能力强

提示:模型越大效果越好,但需要更多内存和加载时间

开发相关

构建混淆版本

如需从源码重新构建混淆版本:

node build-protected.js 不成熟的强行嵌入模型版本.js

然后将生成的 不成熟的强行嵌入模型版本-protected.js 重命名为 林缪斯.js 即可。

项目结构

.
├── 林缪斯.js                    # 混淆保护版本(推荐使用)
├── 不成熟的强行嵌入模型版本.js   # 源码版本(旧版,用于开发)
└── README.md                    # 本文件

社区交流

更新日志

v1.0.0 (2024-XX-XX)

  • 首次发布
  • 支持本地 GGUF 模型运行
  • 知识库与 RAG 功能
  • AI 训练师交互界面
  • Worker 后台线程支持

许可证

本项目采用 MIT License 开源协议。

致谢


Made by ring-operation

About

LinMuSi-TurboWarp-Expand | 林慕思 TurboWarp 扩展工具 为 TurboWarp 定制的功能扩展集合,补充原生 TurboWarp 未覆盖的实用能力,提升 Scratch 衍生编辑器的开发/使用体验。 TurboWarp functional expansion toolkit: add extended features for TurboWarp (Scratch-based editor) to enhance development & usage experience.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages