Skip to content

OSH-2025/MicroRust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OSH大作业

组长:叶梓文 PB23000295

组员:陈聆祎 PB23000259

组员:娄彦轩 PB23000143

组员:黄袁宇轩 PB23071394

组员:刘雅兰 PB20611825

组员:许傲施 PB24000049

组名

Microrust

组徽

Alt pic

项目概述

本项目名为 MicroRust,是一个支持多种文件类型和搜索模式的的分布式图文件系统,本项目在24年项目VIVO50FS和ArkFS的基础上,构建了一个智能分布式图文件存储系统,并为用户提供了简洁直观的Web服务接口,支持文件的上传、检索与下载。系统由三大核心模块组成:基于IPFS实现的分布式存储模块,用于安全高效地保存文件;Neo4j图数据库模块,用于管理文件间的结构化关系;以及结合大语言模型的内容解析模块,负责对文件进行语义理解与标签生成。系统首先利用大语言模型对文件内容进行语义分析,提取关键词与标签,随后借助Neo4j构建文件间的关联网络,提升检索效率与信息组织能力,最后使用IPFS高效、安全地分布式储存文件。整体方案融合了大语言模型与图文件结构的优势,提供了一种面向大语言模型时代的智能分布式图文件系统服务的实现方案。

进度记录

讨论日期 讨论内容 后续安排
3.8 确认了选题方向为Rust改写某个操作系统的微内核或是部分内核。 寻找具有改写可行性的内核或是部分内核。
3.17 每位组员介绍自己找到的选题,并进行讨论与投票。
确定了 4 个备选选题。
基于备选选题进行调研。
3.22 每位成员围绕What和How两角度分享了初步调研结果。
我们在“Rust为FreeRTOS设计基于机器学习的任务预测调度器”和“Rust改写FreeRTOS的内存管理模块”两个选题间犹豫,并向邢老师询问意见。
3.23 邢老师认为这两个选题价值较小,建议我们重新拟定选题。
我们随后提出“Linux部分文件系统改写”和“融合ArkFS+vivo50,加入ipfs/filecoin的分布式存储”两个题目。
我们最终决定以“在融合ArkFS+vivo50后,加入ipfs/filecoin的分布式存储设计”为最终选题。
各小组成员分工编写正式调研报告。
3.27 各小组成员分享了自己在调研中的困惑,并将ipfs/filecoin在vivo50的应用方式(改写或重构)视为调研重点。
安排后续会议时间。
各小组成员继续完善正式调研报告。
3.28 经过小组讨论,分享了进一步的调研进展,确定了ArkFS、Vivo50、ipfs三个部分改写的分工安排。 各小组成员继续完善正式调研报告。
3.29 经过小组讨论,决定了对于报告结构的修整,互相讨论了对于不同部分的疑问,对于仓库进行了修缮 组员进行对整个报告结构进行整合。
4.5 经过小组讨论,给组内各位同学分配了可行性报告的任务,交流了组内成员任务调配和互相帮助的方法 各小组成员编写可行性报告。
4.13 总结调研报告和可行性报告阶段的工作,初步交流近期工作,并安排后续中期报告的会议时间和相关工作。 各小组成员在4.16号提交近期工作概述,在4.19号线下开会。
4.19 详细交流了分工的部分,初步了解了我们之后的任务与搭建了基本的框架,以及之后可以扩展的方向 各小组成员在完成相应部分ppt展示与工作汇报,并决定由组长汇总并合并处理,于20号提交
4.26 对项目系统中的三个模块进行了讨论和分工 按照分工学习图文件系统和IPFS系统的python调用方式,以及调研vllm,regflow和多模态AI,准备五一期间会议进行代码层面的分工
5.3 在搭建regflow平台的过程中,需要深入讨论所遇到的技术问题;同时探讨大模型的使用方式,权衡选择本地部署或通过API接口调用 解决regflow平台搭建过程中遇到的问题,完成大语言模型的本地部署并进行性能测试
5.10 探讨大模型本地部署的优缺点,并思考通过API接口调用大模型的可行性与实现方式 调研可用的大模型API接口,并完成相应的接口调用函数设计
5.19 完成对OpenAI、Mistral、deepseek及讯飞星火大模型接口调用的设计,选定deepseek、讯飞星火和Mistral三个大模型作为项目开发的主要接口支持 将工作重心转向项目剩余模块的开发工作
5.23 明确当前主要开发重点为Neo4j图文件系统的连接、IPFS分布式的单机到多机部署任务和网页前端开发 围绕上述工作进行分工
5.26 交流Neo4j和IPFS模块的工作进度,同时督促组员端正态度,认真完成项目开发任务 加快项目开发进度
6.2 完成Neo4j的本地部署相关接口设计,同时对比分析了Neo4j的本地部署与云端部署的异同与优劣 决定在Neo4j本地部署的基础上,继续开发Neo4j云服务相关功能,同时推进IPFS相关工作
6.4 完成IPFS相关接口设计;讨论了项目之间的接口如何处理、如何根据已有的进度进行整合 按计划完成接口函数编写、网络前端搭建、项目整合和lab4小组任务
6.8 初步完成了基于Gradio前端的项目开发,并进行了基于标签的文件上传与下载测试;讨论是否需要新增功能及优化前端界面 决定新增文件预览、删除功能,决定新增文件查找方法,决定采用Html和flask库对项目前端进行优化
6.14 交流工作进展,并对期末周之后的工作安排进行了初步规划 备考
6.24 讨论项目的最终整合方案;讨论项目的展示形式和结题答辩ppt的内容分工 完成项目的最终整合,准备结题答辩
6.28 总结每位小组成员的具体分工,完善结题答辩ppt,完成结题报告编写的分工

About

在融合ArkFS+vivo50后,加入IPFS/Filecoin的分布式存储设计

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 6