Skip to content

JurFal/paper_writing_helper

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FastAPI + Vue 论文综述写作助手

项目结构与启动方式

三层架构:

  • 界面:frontend
  • 业务层:backend
  • 算法层:backend_algo

启动方式:

  • 启动(MacOS):./start.sh
  • 关闭(macOS):./stop.sh

界面功能介绍与亮点

注册和登录界面

沿用格式,增加安全检测。

  • 除头像外链外均为必填字段;
  • 邮箱须符合格式;
  • 可用外链创建头像。

查看个人信息

点击头像,可查看当前用户信息。

写作助手(修改:完整的历史记录功能和修改段落内容功能)

运用大模型,根据论文数据库写作论文综述。

  • 根据论文综述段落类型及关键词标签,查询论文库生成的向量数据库,用大模型生成段落,可预览Markdown格式的段落和参考文献;
  • 根据生成的段落,让大模型拼接生成LaTeX格式和pdf格式的论文综述;
  • 上传论文到论文库并向量化;
  • json格式导出和导入段落内容配置。

修改

增加了按照用户存储的写作助手使用历史功能。

  • 用户可以新建或切换到已有的写作助手使用记录;
  • 可以删除保存的历史记录(若有多个)。

此外,用户可以修改并保存生成的Markdown段落内容。

随便聊聊(修改:保存历史记录)

和大模型进行多轮对话。 可以清除。

修改

  • 根据用户保存历史记录到数据库,登录后恢复;
  • 显示用户和模型头像。

修改信息

修改当前用户的个人信息。

  • 修改密码须验证原密码;
  • 邮箱须符合格式;
  • 可用外链修改头像。

所有用户

展示所有用户信息;界面中可以删除用户。

  • 点击头像可以预览头像大图;
  • 详细信息可以显示用户信息;
  • 删除用户须验证此用户密码并二次确认。

添加用户(修改:已删除)

添加新用户,与注册界面相似。

修改:已删除,现在仅通过“注册”添加新用户。

亮点

预览

支持预览Markdown格式的段落和参考文献,且支持预览LaTeX生成的pdf。

安全拦截

非登录状态下,访问index页面会跳转至登录界面。

头像

支持外链头像。

信息保存(修改:支持后端数据库存储)

用户的对话历史和写作助手使用历史随用户保存,登录时恢复,登出时清除。

修改

  • 前端本地存储改为后端数据库存储,持久化。

算法和业务接口介绍与亮点

业务端接口(修改)

  • /users/name/{username}:根据用户名调取用户信息接口,支持GET(获取信息)、PUT(更新信息)、DELETE(删除用户);
  • /users/:用户列表(GET)和新增用户(POST)接口;
  • /proxy/image:(未使用)图片加载代理接口,支持GET;
  • /users/{user_id}:(未使用)根据用户ID调取用户信息接口,支持GET(获取信息)、DELETE(删除用户);
  • /users/me:(未使用)获取当前用户信息;
  • /token:(未修改)获取token;
  • /chat:(未修改,未使用)对接算法层大模型聊天;
  • /verify-password:(未修改)验证密码。

修改

  • /users/id_by_username:根据用户名称调取用户ID;
  • /save/chat:保存用户聊天记录(PLOT);
  • /delete/chat:删除用户聊天记录(DELETE);
  • /get/chat:获取用户聊天记录(GET);
  • /save/writing:保存用户的一次写作记录(PLOT);
  • /create/writing:创建用户的新一次写作记录(PLOT);
  • /delete/writing:删除用户的一次写作记录(DELETE);
  • /get/writing:获取用户的一次写作记录(GET);
  • /get/writing/all:获取用户的所有写作记录(GET);
  • /update/writing/{writing_id}:根据ID更新一次写作记录(PUT);
  • /delete/writing/{writing_id}:根据ID删除一次写作记录(DELETE);
  • /get/writing/{writing_id}:根据ID获取一次写作记录(GET);
  • /list/writings:(未使用)获取用户的所有写作记录(GET);

算法端接口

  • /writing/:POST,根据输入的段落关键词,查找向量数据库内容,然后两次对接大模型生成段落;
  • /writing/output/:POST,根据输入的多段段落文字,拼接生成LaTeX格式和pdf格式的论文综述;
  • /papers/upload/:POST,上传论文到论文库并向量化;
  • /clear_vectordb:POST,清空向量数据库;
  • /chat/stream/:POST,流式返回,对接大模型聊天;
  • /chat/:POST,对接大模型聊天。

业务端亮点

完整的用户管理

用户信息保存到数据库,支持增删改查。

历史记录管理(修改:新增)

用户聊天记录与写作助手历史记录保存到数据库,支持增删改查。

头像处理

支持用户头像外链,且可扩展配置代理。

算法端亮点

论文库上传

论文库支持上传论文并向量化;

析构

关闭时,清空向量数据库,防止臃肿。

段落关键词

支持通过关键词查找向量数据库内容,生成段落。

格式准确性

两次对接大模型生成段落,提高格式准确性。

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 43.2%
  • Vue 42.8%
  • TypeScript 6.3%
  • TeX 5.8%
  • Shell 1.0%
  • Makefile 0.7%
  • HTML 0.2%