--- title: TransDis-CreativityAutoAssessment emoji: 💡 colorFrom: yellow colorTo: gray sdk: gradio sdk_version: 6.14.0 python_version: "3.11" app_file: app.py pinned: false license: mit --- ## 项目用途 TransDis-CreativityAutoAssessment 是一个用于自动评估发散思维回答的 Gradio 应用。它目前支持两类评分: - **Originality**:计算每条 `prompt` 与 `response` 之间的语义距离,用于估计回答的独创性。 - **Flexibility**:计算同一 `id` + `prompt` 分组内多条回答之间的语义距离,用于估计回答的灵活性。 本应用基于论文 ["Automatic Assessment of Divergent Thinking in Chinese Language with TransDis: A Transformer-Based Language Model Approach"](https://arxiv.org/abs/2306.14790)。 ## 输入格式 可以直接在文本框中粘贴 CSV 文本,也可以上传 `.csv` / `.xlsx` 文件。如果同时提供文本框和文件输入,上传文件优先。 `Originality` 任务需要提供: ```csv id,prompt,response 1,床单,过滤器 1,bedsheet,used as a filter ``` `Flexibility` 任务需要为同一个被试和同一个提示词提供多条回答: ```csv id,prompt,response 1,床单,过滤器 1,床单,做成渔网捞鱼 1,床单,做成枕头 ``` 单次请求最多处理 10,000 行数据。 ## 模型选择 应用会在下拉菜单中提供多语言、英文和中文 Transformer 检查点,包括多语言 embedding 模型 `Qwen/Qwen3-Embedding-0.6B`。默认模型是: ```text sentence-transformers/paraphrase-multilingual-mpnet-base-v2 ``` 可选 pooling 方式主要用于 legacy Transformer 检查点,包括 `mean` 和 `cls`。如果使用 `bert-base-chinese`,建议选择 `mean` pooling。选择 `Qwen/Qwen3-Embedding-0.6B` 时,界面会自动切换并锁定为 `last-token`,应用会使用该模型推荐的 last-token pooling 和向量归一化,即使 API 请求传入其他 pooling 值也会被覆盖。 ## 本地开发 此 Space 使用 Python 3.11 和 Gradio 6.14.0。Gradio 版本由 README 顶部的 Space metadata 控制,因此不会写入 `requirements.txt`。 ```bash python3.11 -m venv .venv source .venv/bin/activate pip install gradio==6.14.0 -r requirements.txt python app.py ``` 安装并运行 pre-commit: ```bash uvx pre-commit install uvx pre-commit run --all-files ``` 推送前建议运行: ```bash python3 -B -m py_compile app.py utils/pipeline.py utils/models.py uvx pre-commit run --all-files ``` ## Hugging Face Space 此 Space 由 README 顶部的 YAML 配置: - `sdk: gradio` - `sdk_version: 6.14.0` - `python_version: "3.11"` - `app_file: app.py` 推送到 Space 仓库后,Hugging Face 会自动重建并重启应用。