Skip to content

About

Typing Interactive Audio-Visual Word Memorization

Resources

Stars

3 stars

Watchers

0 watching

Forks

Repository files navigation

Windows 便携版点 击直接下载 #更新了Windows的适配,现在已经流畅,后面增加音频提前异步请求前三个单词,就不会延迟了

打字交互音画记忆单词 (Typing Interactive Audio-Visual Word Memorization)

📺 项目演示

7.2.1.mp4
Image ## 🖥️ Web 版 (VocabTypeAI Web Edition)

VocabTypeAI Web

Web 版提供了赛博朋克终端风格的打字学习界面,支持:

  • 单词/短句/长句三种模式 切换练习
  • Kokoro TTS 本地语音合成 + 有道词典发音
  • DeepSeek AI 造句,短句长句语法解析
  • 错词复习、默写模式、智能排序 等 Qwerty Learner 精华功能
  • F2 统计面板、F3 错词复习 快捷键
  • 音标/翻译开关、循环播放控制、预加载音频

快速启动:

cd webapp
pip install -r requirements.txt
python server.py

浏览器打开 http://localhost:5000 即可使用。


本项目原基于 Gradio 构建,旨在通过多感官交互(打字、发音、图像)提升用户的单词记忆效率。它集成了有道词典发音和 ComfyUI 图像生成功能,为用户提供一个沉浸式、个性化的学习体验。

✨ 主要特性

  • 交互式打字练习:实时反馈打字速度(WPM)、准确率,并以颜色高亮显示输入与目标单词的匹配情况。支持不区分大小写的单词匹配和输入错误时自动清空输入框。
  • 智能发音辅助:通过有道词典 API 获取单词的英式或美式发音,帮助用户掌握正确读音。音频文件会被智能缓存到本地,提高加载速度。
  • 视觉记忆强化:利用 ComfyUI 强大的图像生成能力,根据当前学习的单词动态生成相关图像,通过视觉刺激加深记忆。支持自定义 ComfyUI 工作流和服务器设置,并对生成的图像进行本地缓存。
  • 灵活的词典管理:支持加载 data 目录下多种 JSON 格式的词典文件,并可通过 data/字典.ts 元数据文件为词典提供友好的中文描述,方便用户选择和管理。
  • 学习进度控制:用户可以自由选择词典,并从任意单词索引开始学习,支持会话重启和词典切换。

🚀 快速开始

1. 克隆仓库

这是配制好的镜像配置好的镜像 ,启动好comfyui直接复制comfyui链接到这个软件的comfyui设置里粘贴即可 最好在linux系统运行,window测试发现延迟严重。待优化windows的适配

git clone https://github.com/kungful/VocabTypeAI.git
cd VocabTypeAI

2. 安装依赖

确保您已安装 Python 3.8+。然后安装所需的 Python 库:

pip install -r requirements.txt

3. 准备 ComfyUI (可选,但强烈推荐)

为了使用图像生成功能,您需要运行一个 ComfyUI 服务器。

  • 下载 ComfyUI: 访问 ComfyUI GitHub 仓库 并按照其说明进行安装。
  • 启动 ComfyUI 服务器: 通常通过运行 python main.py 来启动。确保 ComfyUI 服务器在可访问的地址和端口上运行(例如 http://127.0.0.1:8188)。
  • 放置工作流文件:把websocket_simple_comfyui/下的工作流跑通就可以里,再把comfyui网址链接粘贴到comfyui设置里, 您希望使用自定义 ComfyUI 工作流 JSON 文件放置在 websocket_simple_comfyui/ 目录下。本项目默认使用 websocket_simple_comfyui/ 目录下的第一个 JSON 文件。
    • 重要提示: 确保您的工作流包含一个 GeminiFlash 节点(用于接收单词作为 Additional_Context)和一个 SaveImageWebsocket 类型的节点(用于输出图像)。如果工作流包含 Hua_gradio_Seed 节点,脚本将自动为其填入随机种子。

4. 准备词典数据

将您的 JSON 格式词典文件放置在 data/ 目录下。

  • 词典格式: 每个 JSON 文件应是一个数组,其中每个元素是一个单词对象,至少包含 name (单词), trans (翻译,可以是字符串数组), usphone (美式音标) 等字段。
    [
      {
        "name": "apple",
        "trans": ["苹果"],
        "usphone": "ˈæpl"
      },
      {
        "name": "banana",
        "trans": ["香蕉"],
        "usphone": "bəˈnænə"
      }
    ]
  • 词典元数据 (可选): 您可以编辑 data/字典.ts 文件来为您的词典文件提供更友好的中文描述。例如:
    export const DICTIONARIES = [
      { description: '雅思词汇圣经', url: 'IELTSVocabularyBible.json' },
      { description: '大学英语四级', url: 'CET4_T.json' },
      // 更多词典...
    ];

5. 运行应用程序

python gradioqwerty.py

应用程序将在您的浏览器中打开一个 Gradio 界面。

⚙️ ComfyUI 设置

comfyui中的管理器的k采样器实时预览记得关闭 在 Gradio 界面的 "ComfyUI 设置" 标签页中,您可以配置以下参数:

  • ComfyUI 服务器地址:您的 ComfyUI 服务器运行的地址(例如 127.0.0.1:8188 或 https://your-domain.com/comfyui)。
  • 选择工作流 JSON 文件:从 websocket_simple_comfyui/ 目录中选择一个 ComfyUI 工作流文件。
  • SaveImageWebsocket 节点ID (可选):如果您想指定一个特定的 SaveImageWebsocket 节点来接收图像,可以在此输入其 ID。留空则自动检测。

📚 词典数据格式

您的词典 JSON 文件应遵循以下结构:

[
  {
    "name": "word_name_1",
    "trans": ["translation_1a", "translation_1b"],
    "usphone": "us_phonetic_1",
    "ukphone": "uk_phonetic_1"
  },
  {
    "name": "word_name_2",
    "trans": ["translation_2a"],
    "usphone": "us_phonetic_2"
  }
  // ... 更多单词对象
]

其中:

  • name (字符串): 单词本身 (必填)。
  • trans (字符串数组): 单词的中文翻译或解释 (必填)。
  • usphone (字符串): 美式音标 (可选)。
  • ukphone (字符串): 英式音标 (可选)。

🤝 贡献

欢迎任何形式的贡献!如果您有任何建议、错误报告或功能请求,请随时提交 Issue 或 Pull Request。

📄 许可证

本项目采用 MIT 许可证。详见 LICENSE 文件 (如果存在)。

About

Typing Interactive Audio-Visual Word Memorization

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages