跳转至

文本分类/情感分析 (Transformers.js)

文本分类与情感分析

借助 Transformers.js,在浏览器中即时分析文本的情感或类别。

请输入文本并点击分析按钮

工作原理

此演示利用 Transformers.js 库在浏览器中执行文本分析:

  1. 加载库与优化脚本: 通过 CDN 引入 Transformers.js,并加载我们自定义的 common-model-loader.js 以增强稳定性和用户体验。
  2. 模型加载与回退: 首次点击"分析文本"按钮时,会触发通用加载器:
    • 它会根据选择的模式(情感分析或文本分类),从预设的模型列表中尝试加载最高优先级的模型。
    • 情感分析模型: 主模型为 Xenova/distilbert-base-multilingual-cased-sentiments-student,备用模型为 Xenova/bert-base-multilingual-cased-sentiments-student
    • 文本分类模型: 主模型为 Xenova/distilbert-base-uncased-finetuned-sst-2-english,备用模型为 Xenova/bert-base-uncased-finetuned-sst-2-english
    • 如果主模型加载失败(例如,网络问题或模型文件损坏),系统会自动尝试加载备用模型,确保功能可用。
    • 模型下载后会被浏览器缓存,后续使用无需重新下载。
  3. 文本处理与分析:
    • 用户输入的文本被传递给已成功加载的模型。
    • 模型分析文本内容,并返回情感标签(积极、消极、中性)或分类结果,以及对应的置信度。
  4. 结果可视化: 分析结果以更美观、清晰的表格和进度条形式显示。

客户端 AI 的优势

  • 隐私保护: 所有文本分析都在用户浏览器中进行,没有数据传输到远程服务器。
  • 即时反馈: 模型加载后能够快速处理文本并提供分析结果。
  • 离线使用: 模型加载后,即使没有网络连接也能继续使用。
  • 减轻服务器负担: 计算在客户端完成,不需要服务器资源进行推理。

通过这些优化,我们不仅提升了工具的视觉效果,更重要的是,通过多CDN、多模型回退和超时处理,极大地增强了其在各种网络环境下的稳定性和可用性。