CycleResearcher 是一个开源的 AI 驱动学术研究与审稿生态系统,旨在通过自动化工具提升学术研究效率。它包含三个核心组件:CycleResearcher 用于生成高质量学术论文,CycleReviewer 提供详细的学术审稿,DeepReviewer 模拟多位审稿人并进行自我验证。这套系统通过研究与审稿的闭环反馈,加速科学发现,降低人工成本。它支持多种模型和数据集,适合研究人员、学生和开发者使用。用户可通过简单安装和 API 调用快速上手,适用于学术写作、论文评审等场景。
功能列表
- 论文生成:CycleResearcher 基于用户提供的主题和参考文献生成学术论文,支持多种模型(如 12B、72B、123B)。
- 学术审稿:CycleReviewer 提供详细的论文评审,输出平均评分和接受/拒绝决定,准确率达 74.24%。
- 多视角审稿:DeepReviewer 模拟多个审稿人,提供快速、标准和最佳三种模式,支持背景知识搜索和自我验证。
- AI 检测:内置 AIDetector 工具,分析论文是否由 AI 生成,并输出概率和置信度。
- 文献查询:OpenScholar 集成学术问答功能,支持通过 Semantic Scholar API 检索文献。
- 易于集成:提供 Python 库和 API 接口,方便开发者嵌入现有工作流。
- 多模型支持:支持多种预训练模型,如 Mistral、Llama3.1 和 Qwen2.5,满足不同性能需求。
使用帮助
安装流程
CycleResearcher 的安装非常简单,用户只需在 Python 环境中运行以下命令即可:
pip install ai_researcher
确保 Python 版本为 3.8 或以上。如果需要使用 OpenScholar,还需申请 Semantic Scholar API 密钥并启动相关服务。
OpenScholar 安装与启动
- 申请 API 密钥:访问 Semantic Scholar API 申请密钥。
- 启动模型服务:
cd OpenScholar chmod +x start_models.sh ./start_models.sh
- 启动 API 服务:
python openscholar_api.py \ --s2_api_key YOUR_SEMANTIC_SCHOLAR_API_KEY \ --reranker_path OpenSciLM/OpenScholar_Reranker
- 测试 API:
使用 Python requests 库发送问题:import requests response = requests.post("http://localhost:38015/batch_ask", json={ "questions": ["检索增强语言模型在知识密集任务中的表现如何?"] }) print("OpenScholar 回答:", response.json()["results"][0]["output"])
使用 CycleResearcher 生成论文
CycleResearcher 可生成基于特定主题和参考文献的学术论文。以下是操作步骤:
- 初始化模型:
from ai_researcher import CycleResearcher from ai_researcher.utils import print_paper_summary researcher = CycleResearcher(model_size="12B")
默认使用 12B 模型,适合大多数任务。
- 加载参考文献:
准备 BibTeX 格式的参考文献文件(如cycleresearcher_references.bib
),然后读取:with open('cycleresearcher_references.bib', 'r') as f: references_content = f.read()
- 生成论文:
指定主题和参考文献,生成一篇论文:generated_papers = researcher.generate_paper( topic="AI Researcher", references=references_content, n=1 ) print_paper_summary(generated_papers[0])
生成的论文会包含摘要、引言和参考文献等完整结构。
使用 CycleReviewer 审稿
CycleReviewer 提供自动化审稿功能,适合快速评估论文质量。
- 初始化模型:
from ai_researcher import CycleReviewer reviewer = CycleReviewer(model_size="8B")
- 审稿:
假设paper_text
是待审论文的文本内容,运行:review_results = reviewer.evaluate(paper_text) print(f"平均评分: {review_results[0]['avg_rating']}") print(f"审稿决定: {review_results[0]['paper_decision']}")
输出包括平均评分和是否接受的决定,准确率高达 74.24%。
使用 DeepReviewer 进行多视角审稿
DeepReviewer 提供更复杂的审稿功能,支持多种模式和多位模拟审稿人。
- 初始化模型:
from ai_researcher import DeepReviewer deep_reviewer = DeepReviewer(model_size="14B")
- 标准模式审稿:
模拟 4 位审稿人:review_results = deep_reviewer.evaluate( paper_text, mode="Standard Mode", reviewer_num=4 ) for i, review in enumerate(review_results[0]['reviews']): print(f"审稿人 {i+1} 评分: {review.get('rating', 'N/A')}") print(f"审稿人 {i+1} 摘要: {review.get('summary', 'N/A')[:100]}...")
- 最佳模式审稿:
启用背景知识搜索和自我验证:review_results = deep_reviewer.evaluate( paper_text, mode="Best Mode", reviewer_num=6, enable_search=True, self_verification=True )
最佳模式适合需要深入分析的场景,提供更全面的反馈。
使用 AIDetector 检测 AI 生成内容
检测论文是否由 AI 生成:
from ai_researcher import AIDetector
detector = AIDetector(device='cpu')
detection_result = detector.analyze_paper(paper)
print(f"AI 生成概率: {detection_result['probability'] * 100:.2f}%")
print(f"置信度: {detection_result['confidence_level']}")
使用 OpenScholar 查询学术问题
OpenScholar 支持基于检索的学术问答,适合快速查找文献或解答问题。运行 API 服务后,通过 HTTP 请求发送问题:
response = requests.post("http://localhost:38015/batch_ask", json={
"questions": ["如何提升语言模型在学术研究中的表现?"]
})
print(response.json()["results"][0]["output"])
注意事项
- 模型选择:根据任务需求选择合适的模型(如 12B、14B),更大模型适合复杂任务。
- API 密钥:OpenScholar 需要 Semantic Scholar API 密钥,确保申请并正确配置。
- 硬件要求:DeepReviewer 的最佳模式需要较高算力,建议使用 GPU 加速。
- 数据集支持:系统提供 Review-5K、Research-14K 等数据集,可用于模型微调或测试。
应用场景
- 学术论文撰写
研究人员可使用 CycleResearcher 快速生成论文初稿,结合参考文献生成结构化内容,适合初稿构思或灵感获取。 - 论文审稿
学术会议组织者或期刊编辑可通过 CycleReviewer 和 DeepReviewer 自动化审稿,模拟多位审稿人提供客观评价,节省时间。 - 学术问题解答
学生和研究人员可通过 OpenScholar 查询学术问题,快速获取文献支持或解答复杂问题。 - AI 内容检测
期刊编辑可使用 AIDetector 检查投稿论文是否由 AI 生成,确保学术诚信。 - 研究开发
开发者可利用 CycleResearcher 的 API 集成到学术工作流中,构建定制化的研究工具。
QA
- CycleResearcher 支持哪些模型?
支持 CycleResearcher-ML-12B、72B、123B,CycleReviewer-ML-Llama3.1-8B、70B、123B,以及 DeepReviewer-7B、14B,均基于主流预训练模型。 - 如何选择 DeepReviewer 的审稿模式?
快速反馈用 Fast Mode,平衡准确性和速度用 Standard Mode,需深入分析用 Best Mode。 - OpenScholar 需要额外配置吗?
需要 Semantic Scholar API 密钥,并启动模型和 API 服务,具体见安装流程。 - 生成的论文质量如何?
CycleResearcher-12B 的平均评分达 5.36,接近会议接受论文的 5.69,优于其他 AI 工具。 - 是否支持中文论文生成?
目前以英文论文为主,但可通过微调支持中文,需用户提供相关数据集。