-
现代化 HyperGraph 的 CLI:迈向更好架构的旅程
Hypergraph,我的个人知识管理系统项目,旨在整合点对点网络、范畴论和高级语言模型于一体。目前仍处于早期开发阶段,但其目标是革新集体知识的组织、共享和发展方式,实现真正的去中心化协作,同时保障个人自主权和隐私。 该系统正构建一个复杂的服务层,包含分布式状态管理、事件处理和P2P基础设施。 在Hypergraph的开发过程中,我最近对CLI模块的架构进行了重大改进。最初的实现虽然能用,但存在一些限制,随着项目发展日益凸显。本文将探讨我重构CLI架构的原因以及带来的益处...
作者:wufei123 日期:2025.01.26 分类:python 64 -
解决循环依赖:更好的架构之旅
在我的个人项目 hypergraph 中与循环依赖进行斗争之后,我最终决定正面解决这个技术债务。随着代码库的扩展,这个问题变得越来越明显,使得维护和测试变得越来越困难。今天,我想分享为什么我选择实施全面的架构改革以及这个新实施解决了什么问题。 问题 当我第一次开始开发 hypergraph 时,我专注于让功能快速运行。这导致了一些仓促的架构决策,这些决策起初看起来不错,但随着项目的发展开始出现问题。最重要的问题是: 核心模块之间的循环依赖 组件之间...
作者:wufei123 日期:2025.01.26 分类:python 54 -
智能 PDF 数据提取和数据库创建
项目目标: 构建一个系统,自动从供应商提供的PDF文档中提取结构化和非结构化数据,并将其存储到数据库中,以便进行索引和查询。该系统还需集成一个能够基于PDF内容回答问题的聊天机器人。 项目细节: 输入: 各种结构的PDF文档,包括纯文本、标题、段落、表格和项目符号列表。例如:报价单(RFQ)、合同、手册和报告。 核心功能: 从PDF中提取所有相关数据,并过滤掉页眉、页脚等无关信息。 精确识别和构建表格,并将表格与相应的标题或说明文字(通常为粗体文本,后跟冒号)关...
作者:wufei123 日期:2025.01.26 分类:python 67 -
API 规划指南:代码优先 VS 设计优先方法
如同建筑师先绘图纸再施工,API开发也遵循类似原则。本文将对比两种API规划方法:代码优先和设计优先,并指导您如何选择最适合的方法。我曾是代码优先的拥趸,直到发现设计优先的优势。设计优先强调在编码前先完善API定义。 API规划路线图 本指南将循序渐进地引导您: 了解API规划基础 比较代码优先和设计优先两种方法 选择合适的方法 制定API规划方案 学习目标: 理解API规划的要素 掌握代码优先方法 掌握设计优先方法 比较代码优先和设计优先的优劣 选择合适的方法 学习...
作者:wufei123 日期:2025.01.26 分类:python 67 -
Django 的架构是怎样的?
第一次被问到这个问题不是在我学习django的时候,而是在我学了它并申请实习之后。实习的时候,有人问过我这个问题。不幸的是,当时我不知道答案,但现在我知道了。 您创建的每个 Django 项目都遵循名为 MVT 的架构。这里的MVT代表模式模板视图。这三件事是任何 Django 项目的主要部分。让我们详细了解一下它们。 模型 模型是数据库中表的基于类的表示。 Django 应用程序使用 python 类来表示网站数据库中的表,这些类在 djan...
作者:wufei123 日期:2025.01.26 分类:python 54 -
使用 NET Core、Python 和 Azure 微调大型语言模型 (LLM)
目录 引言 微调大型语言模型的必要性 解决方案架构 环境配置 Python 模型训练与微调 .NET Core 集成 Azure 部署 最佳实践 总结 一、引言 大型语言模型 (LLM) 以其强大的类人文本理解和生成能力而备受瞩目。然而,许多组织拥有通用模型难以完全捕捉的特定领域知识和专业术语。微调技术允许开发者根据特定场景或行业定制这些大型模型,从而显著提升模型的准确性和适用性。 本文将详细阐述如何利用 Python 微调 LLM,并将训练好的模型集成到 .NET C...
作者:wufei123 日期:2025.01.26 分类:python 71 -
为 HyperGraph 中的新模块设计上下文
构建模块化系统,如何在灵活性和一致性之间取得平衡是一个关键挑战。本文分享我在 HyperGraph(我的开源 LLM 系统框架)中设计新模块上下文结构的经验。 挑战:新模块与现有模块的上下文差异 HyperGraph 文档分析显示,现有模块开发与新模块开发所需上下文存在显著差异。现有模块需要深入了解其内部实现细节,而新模块则更需要理解系统架构模式和约定。 垂直与水平上下文 我采用二维视角: 垂直上下文: 针对特定模块内部结构的深入知识,对现有模块开发至关重要。 水平...
作者:wufei123 日期:2025.01.26 分类:python 61 -
使用 SPython 和 OpenWeather API 构建天气仪表板
本项目是一个基于python的应用程序,用于获取和显示openweather api提供的实时天气数据。它展示了如何使用第三方api、处理http请求、解析json响应以及以用户友好的方式呈现天气信息。 主要功能: 获取指定位置的实时天气数据。 显示详细天气信息,包括温度、湿度、风速和天气状况。 自动将天气数据存储到AWS S3。 支持多个城市的天气追踪。 为所有历史数据添加时间戳。 完善的错误处理机制,包括无效API密钥、网络问题和不支持的位置等。 运行环境: AWS...
作者:wufei123 日期:2025.01.26 分类:python 77 -
使用 AWS 无服务器服务的比赛日事件通知
本项目构建了一个实时的nba比赛比分警报系统,通过短信或邮件将比赛结果及时推送给订阅用户。系统利用amazon sns、aws lambda(python)、amazon eventbridge和nba api (sportsdata.io),为体育爱好者提供便捷的赛事信息获取途径,并充分展现了云计算的关键原则及高效的通知框架。 核心功能: 实时获取NBA比赛比分数据 (通过SportsData.io API)。 使用Amazon SNS发送格式化的比分更新到订阅用户的短信...
作者:wufei123 日期:2025.01.26 分类:python 51 -
构建人工智能销售代理:从语音到推销
项目背景 EnCode 2025 项目的目标是创建一个高质量、语音自然流畅的AI销售代理,实现与真人近乎无延迟的交互体验。 为此,我构建了一个系统,能够完整处理在线辅导机构的销售对话流程——从问候潜在客户到了解需求并推荐课程。整个过程都以积极、人性化的语气进行,如同一位不知疲倦、状态始终在线的销售人员! 技术架构 语音识别: Whisper Large V3 Turbo,确保精准的语音转录。 自然语言处理: LLaMA 3.3 70B,赋予代理智能对话能力。 语音合...
作者:wufei123 日期:2025.01.26 分类:python 59