Django是一个python的web框架,接入大模型还是要根据业务的需求,不过可以把大模型接入封装成一个独立公共模块,方便使用。
大模型调用一般是API接口,可以创建工具类model_tools.py,把常用大模型调用的密钥和调用参数封装成不同方法,这样可以方便后续业务使用。
优秀的架构师在项目中就像“技术掌舵者”,核心作用是从全局视角规划系统架构,确保项目在技术可行性、扩展性和稳定性上达到最优。
比如:一个社交媒体服务系统的架构师,需要全局了解服务的核心功能,短期和未来预估用户规模,系统请求峰值,然后做存储、缓存、分布式架构等选型,综合用户需求、性能、成本、以及团队技术积累情况,确定最优技术架构方案,并推动具体实施。
个人觉得,企业商业价值最大化本身是一个ROI的问题。就是你可以投入多少,预期能拿到多少回报。
但AI浪潮下,不同技术选型和方向,投入要求不一样,所以一方面要对技术方向的投入周期和量级有基本的判断,另一方面也要看市场竞争的情况。比如,基座大模型如果能成,肯定壁垒强,但前期投入规模大,周期还长,一般企业很难坚持到最后。所以,还是要结合企业自身的情况来看。
这个问题听起来有点绕,不过仔细想想,架构设计中,确实有很多“不解决的问题”,甚至故意“制造出来的问题”,反而会让系统更稳定。比如 “最终一致性原则”,为了提升系统写入能力,放弃强一致性的约束,采取最终一致性原则。这样的涉及可以减少引入分布式锁、事务协调等机制,大幅提升系统的吞吐量,还能避免死锁风险,提升系统稳定性。
当然,所有这些“不解决的问题”,都是在一定业务背景和容错预案下才成立和带来收益,脱离了当前的业务背景可能会带来不可预知的风险。
首先要明确一点,不存在完美的架构设计,好的架构设计都是基于当时的商业环境、业务需求、实现成本、团队情况等综合考虑的结果;随着商业环境、业务需求、以及技术进步、人员变化等外部环境的变化,架构设计也是需要持续进行迭代的。
“理论缺陷”往往是对业务还没有产生实际的影响,但也要评估理论缺陷的触发条件和边界。比如,架构设计违反了可扩展性原则,是因为当前业务流量不够大,所以没有触发风险。这时候就要结合业务的增长情况来判断“理论缺陷”修复的急迫性程度。举个具体的例子,一个电商系统为了业务快速上线,存储上可能用了单库单表的设计,目前业务流量不大也能够正常运行。在业务没有大幅增长的预期情况下,这个理论缺陷是可以接受的。此时如果团队有精力,可以着手规划相关的改造计划,但并不需要立即重构。但业务可预期的要迎来大幅增长触发存储容量的瓶颈,这个重构可能就需要立即执行。
综上所述,当发现自己的架构存在理论缺陷却运行良好,对于是否重构需要跳出“非黑即白”的思维,而是要从业务需求、影响范围、重构成本、团队情况等方面综合考虑。
在当前大模型的能力下,AI自动生成的方案只是基于已有业务上下文给出的架构设计方案。往往在实际工作中,业务上下文是相对复杂的,需要结合业务背景对业务上下文做深入分析才能明确需求的本质目标,需要不同部门间大量的沟通交流;同时在实际的业务工作中,好的技术架构方案往往是多维需求和背景的平衡,比如技术可行性、实现成本、商业价值、甚至伦理风险等。
所以,至少目前来看,复杂需求的抽象能力,多维度需求的平衡能力是人类架构师还不能被替代的能力。