README
🚀 使用DraCor的戏剧作品分析historical plays中角色ID标记问题的任务指令
本项目旨在借助DraCor数据库对历史剧本展开分析,检测并修复角色ID标记里的潜在错误。通过对剧本的角色关系、全文本结构进行剖析,找出角色ID标记存在的各类问题。
🚀 快速开始
项目目标
通过DraCor数据库分析历史剧本,检测和修复角色ID标记中的潜在错误。
主要步骤
从DraCor数据库选剧本,分析角色关系与全文本结构,检测角色ID标记问题,最后编制详细报告。
✨ 主要特性
- 全面分析历史剧本,涵盖角色关系与全文本结构。
- 多维度检测角色ID标记问题,如拼写差异、名称混淆等。
- 生成详细报告,以表格形式呈现问题信息。
📦 安装指南
环境设置
- Python版本:建议使用Python 3.10或更高版本。
- 安装依赖:安装必要的库,包括Model Context Protocol Python SDK。
项目配置
- 初始化项目目录结构:建立新文件夹存储项目相关文件和数据。
- 配置设置文件:创建并编辑
settings.py文件,定义DraCor API的基址、RATE_LIMIT等参数。 - 编写MCP脚本:使用Model Context Protocol编写脚本,实现剧本选择、数据提取、错误检测等功能。
💻 使用示例
基础用法
剧本选择与数据提取
# 以下是使用DraCor API获取数据的示例代码
import requests
# 获取所有剧本清单
corpora_url = "https://dracor.org/api/corpora"
response = requests.get(corpora_url)
corpora = response.json()
# 选择特定剧本
corpus_name = "your_corpus_name"
plays_url = f"https://dracor.org/api/plays/{corpus_name}"
plays_response = requests.get(plays_url)
plays = plays_response.json()
# 提取角色信息
play_name = "your_play_name"
characters_url = f"https://dracor.org/api/characters/{corpus_name}/{play_name}"
characters_response = requests.get(characters_url)
characters = characters_response.json()
# 提取全文本内容
full_text_url = f"https://dracor.org/api/full_text/{corpus_name}/{play_name}"
full_text_response = requests.get(full_text_url)
full_text = full_text_response.text
高级用法
执行分析并生成报告
# 以下是使用Model Context Protocol编写脚本实现分析和报告生成的示例
# 这里假设已经完成了数据提取和相关配置
import pandas as pd
# 执行分析步骤
# ...
# 生成报告数据
report_data = [
{
"Text ID": "your_text_id",
"Current character ID": "your_character_id",
"Problematic variants found in text": "your_problematic_variants",
"Type of error": "your_error_type",
"Explanation of the issue": "your_issue_explanation"
}
]
# 创建DataFrame
report_df = pd.DataFrame(report_data)
# 保存为Excel文件
report_df.to_excel("report.xlsx", index=False)
📚 详细文档
分析步骤
- 剧本选择:从DraCor数据库中挑选一部特定的剧本。
- 角色关系分析:仔细核查剧本中各角色间的互动与关系,保证每个角色都有唯一的ID标记。
- 全文本结构分析:对剧本全文本进行结构化剖析,涵盖戏剧情节、话剧场面等,留意是否存在角色名称的多样性或历史拼写变体。
- 角色ID标记问题检测:
- 检查角色名称的拼写差异。
- 确认是否有角色名称混淆或重叠的情况。
- 关注剧本中是否存在historical spelling variants(历史拼写变体)。
- 甄别stage directions(舞台指示)中的角色ID是否与其他部分一致。
策略报告结构
根据发现的问题,编制一份详细报告,以表格形式整理以下信息:
| Text ID | Current character ID | Problematic variants found in text | Type of error | Explanation of the issue | |---------------|---------------------------|-------------------------------------|------------------------|---------------------------------------------| | [剧本ID] | [现有角色ID] | [文本文中发现的问题变体] | [错误类型,如拼写差异、混淆等] | [具体问题描述及原因分析] |
使用DraCor API进行数据提取
资源访问
- 获取所有剧本清单:使用API端点
/corpora来获取可用的剧本库。 - 选择特定剧本:通过
/plays/{corpus_name}接口来选定具体研究的剧本。 - 提取角色信息:利用
/characters/{corpus_name}/{play_name}接口来获取剧本中的角色数据。 - 全文本提取:使用
/full_text/{corpus_name}/{play_name}来取得剧本的全文本内容。
工具使用
- 搜索剧本:使用
search_plays工具根据关键字或其他条件在DraCor数据库中搜索剧本。 - comparative_analysis(比较分析):若需要对多个剧本进行对比,可使用该工具来分析不同剧本之间的异同。
提示模板
在具体分析时,可使用以下提示模板:
"您的任务是从DraCor数据库中分析historical plays并检测角色ID标记中的潜在问题。具体来说:
1. 选择一部剧本并进行全面的角色关系、全文本结构和剧本结构分析。
2. 检测所有可能的标记错误,包括但不限于:
- 角色名称的拼写变体
- 角色名称的混淆或重叠
- 历史拼写变体
- 舞台指示中角色ID与其他部分的一致性问题
3. 编制一份详细报告,以表格形式列出以下信息:
- Text ID(剧本唯一标识符)
- 现有数据库中的角色ID
- 文本文中发现的问题变体
- 错误类型(如拼写差异、混淆等)
- 具体问题描述及原因分析
请为以下剧本进行分析:[剧名]"
项目配置与执行
环境设置
- Python版本:建议使用Python 3.10或更高版本。
- 安装依赖:安装必要的库,包括Model Context Protocol Python SDK。
执行步骤
- 初始化项目目录结构:建立一个新的文件夹,用于存储项目的相关文件和数据。
- 配置设置文件:创建并编辑
settings.py文件,定义DraCor API的基址、RATE_LIMIT等参数。 - 编写MCP脚本:使用Model Context Protocol编写脚本,实现剧本选择、数据提取、错误检测等功能。
- 执行分析并生成报告:启动脚本,让其自动完成剧本分析和问题报告的生成。
报告生成
分析完成后,脚本会自动生成一个包含问题总结和建议修复方案的PDF或Excel文件。
确保数据准确性与完整性
在整个分析过程中,需特别注意以下几点:
- 数据来源可靠性:确保所使用的DraCor数据库是最新的且来源可靠。
- 数据清洗:在进行深度分析前,对提取的数据进行初步清洁,剔除或修正明显的错误或不相关信息。
- 多角度验证:通过交叉比对不同来源的信息,或多种方法相互印证,来提高分析结果的准确性。
🔧 技术细节
本项目使用Model Context Protocol编写脚本,结合DraCor API进行数据提取和分析。通过对剧本的角色关系、全文本结构进行深入剖析,检测角色ID标记中的潜在错误。在数据处理过程中,需要注意数据的准确性和完整性,通过数据清洗和多角度验证来确保分析结果的可靠性。
📄 许可证
暂未提及相关许可证信息。
附錄
參考文獻
- DraCor數據庫官方文檔
- Model Context Protocol SDK使用手冊
- 相關學術論文或研究報告
接觸方式
如有任何問題或建議,請聯絡項目管理員:[聯絡信息]
⚠️ 重要提示
本分析指令需根据具体剧本的内容和数据结构进行适当调整。
扫码联系在线客服