Billy Lin
text-emotion-classification
97a5393

text-emotion-classification

一个可本地快捷部署使用的文本情绪识别模型应用。项目直接运行 main.py 即可进行交互式推理。

功能

  • 本地推理:加载仓库内的 sentiment_roberta 模型目录进行文本情绪分类。
  • 标签映射:从 text-emotion.yaml 读取 id -> 情绪中文名 映射。
  • 交互式 CLI:命令行输入文本,输出情绪类别与置信度。

目录结构(关键文件)

  • main.py:入口脚本(直接运行即可)
  • sentiment_roberta/:已导出的 Transformers 模型目录(包含 config.jsonmodel.safetensors、tokenizer 等)
  • text-emotion.yaml:标签映射文件
  • release-note.md:Release 说明(由 GitHub Action 用作 release body)

运行环境配置要求

  • Python 3.10(推荐,与作者环境一致;3.9+ 理论可用但未完整验证)
  • 依赖管理方式:Conda 环境(推荐)或 venv
  • PyTorch:
    • CPU 推理:安装 CPU 版 torch
    • GPU 推理:需要 NVIDIA GPU + 对应版本 CUDA(本仓库作者环境为 torch==2.10.0+cu128 / torchvision==0.25.0+cu128,即 CUDA 12.8 构建)

本仓库提供了作者的 conda 环境导出文件:environment.yml

安装

使用 conda 环境文件(推荐,复现作者环境)

conda env create -f environment.yml
conda activate text-emotion-classification

运行

python main.py

运行后按提示输入文本:

  • 输入任意文本并回车:输出情绪预测与置信度
  • 直接回车:退出

常见问题

  • 找不到模型目录 sentiment_roberta
    • 请确认仓库根目录下存在 sentiment_roberta/,且其中包含 config.jsonmodel.safetensors 等文件。
  • 模型推理设备
    • 程序会自动选择 cuda(如可用)否则使用 cpu

License

Apache 2.0 License