基于karpathy的llm-wiki分享的llm应用开发
1、基于LLM的RAG检索增强,能够解决知识过时、私有知识的问题,但是检索到的知识是以向量的方式来构建知识之间的相关性。而karpathy的llm-wiki分享中提到了以大模型为编译基础,以自然语言的方式,让大模型自己理解和构建知识之间复杂的关系。维基百科对于人类来说或许可能是一个知识管理方式,但对于LLM来说,或许是将知识核心保留和编译知识之间的复杂关系的一个新的尝试。本项目基于此,将知识点及其之间的关系进行细化,以SQL为基础,个人进行了llm-wiki开发的尝试,将其作为opencode、codex等的插件进行开发。同时开发了以LLM基础,将PDF,HTML总结为笔记的前端功能。
2、项目核心功能包括以下几点。桌面应用端,通过Electron桌面入口,加载前端页面,注册IPC服务。前端知识台,展示知识库、笔记、节点状态。IPC桥接,前端通过window.llmWiki调用后端能力。知识库注册,管理多个SQLite知识库,支持list/audit/open。数据库与迁移,SQLite 连接、schema migration、repository层。文档摄取,读取artifact,生成source记录。Human Note,保存、解析、校验自然语言可读笔记。编译知识图谱,将source编译为nodes、claims、edges、state changes。检索与上下文,搜索知识、扩展图谱、生成query context/briefing。Lint与维护,检查知识库健康状态、发现图谱问题。Agent集成,给外部Agent提供 ingest/use/maintain工具能力,以skill方式实现。共享类型与常量,跨前端、主进程、后端共享的类型和工具。
3、核心功能为前端人类可阅读笔记和SQL知识节点状态展示,以及agent实现提取知识到知识库,使用和管理知识库。前端调用路径为启动应用,加载UI界面,前端请求数据,查看笔记、知识库、source材料。agent调用ingest skill,提取知识,生成人类可读笔记,基于笔记创建知识节点和知识关系边并存入SQL。agent调用use skill,基于问题查找相关资料,以node和edge将相关资料返回LLM,LLM基于自注意力机制自行理解知识并返回结果。agent调用maintain skill,agent查看知识节点之间是否存在矛盾,通过对话,agent维护知识库正确性。
人工智能