Skip to content

YUKIQVQ/PaperAgent-Lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

Paper Agent Lab

一个基于大模型的科研辅助智能体原型,能够将自然语言指令转化为可执行的Python代码技能,用于自动化处理科研数据和生成论文片段。

功能特性

  • 技能蒸馏:输入自然语言需求(如“生成三线表”),自动调用大模型生成标准Python代码。
  • 技能执行:在本地加载并执行已生成的代码,处理输入数据并输出论文可用的内容。
  • 本地技能库:所有生成的代码自动持久化为JSON文件,支持离线调用和版本管理。
  • 模型适配:默认适配阿里云百炼/DashScope接口,兼容OpenAI标准协议。

技术架构

核心模块

  • SkillLibrary:负责技能的增删改查(CRUD),将代码作为数据存储在本地JSON中。
  • ResearchAgent:核心逻辑层,分离了“技能蒸馏”(规划/生成)和“技能调用”(行动/执行)两个阶段。
  • OpenAI Client:配置了DashScope的兼容模式接口,连接Qwen系列模型(如qwen-plus)。

工作流程

  1. 蒸馏阶段:用户输入任务描述 -> 生成Prompt -> 调用LLM生成代码 -> 正则提取代码 -> 保存至本地技能库。
  2. 执行阶段:用户调用技能名 -> 从库中检索代码 -> 使用exec执行代码 -> 返回处理结果。

快速开始

环境依赖

  • Python 3.8+
  • openai>=1.0

安装与运行

  1. 安装依赖库:

    pip install openai
  2. 配置API密钥:

    • 修改paper_agent_lab.py中的api_key为你的DashScope或百炼平台密钥。
  3. 执行主程序:

    python paper_agent_lab.py

配置说明

  • API配置:在文件顶部修改clientapi_keybase_url以适配不同的模型服务商。
  • 技能存储:技能默认保存在同级目录下的paper_skills.json文件中。
  • 模型选择:可通过修改MODEL_NAME常量切换不同的Qwen模型版本。

应用场景

  • 论文写作:自动生成符合期刊格式的Markdown表格、图表描述。
  • 数据处理:快速编写脚本处理实验数据、计算统计指标。
  • 代码复用:将常用的科研计算逻辑保存为技能库,供后续项目调用。

安全与维护

  • 执行安全:代码使用exec()执行动态生成的脚本,存在安全风险。建议在沙箱环境或Docker容器中运行。
  • 错误处理:当前版本包含基础的异常捕获,建议在生产环境中增加重试机制和更详细的日志记录。
  • 密钥管理:请勿将包含API密钥的代码提交至公共仓库,建议使用环境变量管理敏感信息。

About

一个基于大模型的动态代码生成与执行框架,专为科研数据处理和论文写作设计。它能将自然语言指令转化为可复用的 Python 技能,并直接输出论文可用的格式化内容(如 Markdown 表格、统计描述等)。

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages