December 12, 2024
前言 在Spring Cloud应用中可以非常低成本地集成Nacos实现配置动态刷新,在应用程序代码中通过Spring官方的注解@Value和@ConfigurationProperties,引用Spring enviroment上下文中的属性值, 关于这部分的介绍可以参照一文,这种用法的最大优点是无代码层面侵入性,但也存在诸多限制,比如: Nacos中配置是作为Spring上下文enviroment的属性源之一,获取属性时会收到其他属性源的干扰,比如通过JVM参数和环境变量注入的属性优先级比Nacos中的更高 通过spring.config.impo...
December 11, 2024
作者:升学e网通研发部基建团队 公司介绍 杭州铭师堂,是一个致力于为人的全面发展而服务的在线教育品牌。杭州铭师堂秉持“用互联网改变教育,让中国人都有好书读”的使命,致力于用“互联网+教育”的科技手段让更多的孩子都能享有优质的教育,促进他们的全面成长。 成立十余年以来,铭师堂不断汇聚优质的全国各地教育资源,并展开先进科学技术在学校教育智能化领域、学生个性化学习领域的应用研究。杭州铭师堂始终坚守使命,持续创新,“赋能学校、培养学生”,在教育信息化 2.0 趋势下,致力于促进线上教育与线下教育的高度融合,以学校为核心场景,与学校携手共建互联网学习空间,为学校与学生提供学习解决方案,极大促...
October 10, 2024
作者:伯箫,计划定制一个代码助手,结合通义千问和RAG技术,根据数据库Schema信息生成符合个人代码风格的数据访问层代码,旨在提高生成代码的质量和效率,且该助手在不断迭代中已结合FunctionCalling和RAG,展现出大模型在编程辅助上的巨大潜力。 背景 在过去一年中,我使用了Idealab、通义灵码和Aone Copilot等工具,大幅提升了代码编写效率。这些工具在代码补全、单方法编写和代码审查方面表现出色。然而,我希望能够一次性生成更多的代码,如CRUD操作,而不仅仅是进行小幅补全。 现有的代码生成器虽然能实现一次性生成CRUD代码,但其生成的代码风格与我的项目不一致,...
September 21, 2024
阅读原文地址: 本文作者系阿里云云原生微服务技术负责人,Spring AI Alibaba 发起人彦林,望陶和隆基对可观测和 RocketMQ 部分内容亦有贡献。 摘要:随着生成式 AI 的快速发展,基于 AI 开发框架构建 AI 应用的诉求迅速增长,涌现出了包括 LangChain、LlamaIndex 等开发框架,但大部分框架只提供了 Python 语言的实现。但这些开发框架对于国内习惯了 Spring 开发范式的 Java 开发者而言,并非十分友好和丝滑。因此,我们基于 Spring AI 发布并快速演进 Spring AI Alibaba,通过提供一种方便的 API 抽象...
July 23, 2024
OpenAI 国内停服,除了各个大模型厂商提供的迁移方案外,是否有其他更平滑的迁移方案呢?本文以 OpenAI 切换到通义千问为例,介绍开源网关 Higress 的应对方案。优势是: 默认按照模型价格和能力进行了合理映射,且支持用户自定义调整配置 可以通过 OpenAI 的统一协议对接多种大模型,屏蔽实现细节,降低接入新大模型的 API 适配成本 Higress 可以提供 token 限流插件、内容审核插件,通过网关的工程化能力实现业务收益 实操视频 步骤介绍 准备工作:需要登陆阿里云 第一步:启动 Higress AI 网关 Higress 有多种部署方式,...
July 22, 2024
背景简介 定时任务是指在约定的时间,或者按照固定频率周期性执行的任务。在企业应用中,非用户行为发起的后台业务,一般都是通过定时任务来实现,常见场景如下: 异步数据处理:比如先将订单入库,每分钟扫描未支付的订单做批处理。 自动化运维:比如每小时清理一次数据库的历史记录。 系统监控:比如每分钟扫描监控指标,如果超出阈值,进行报警。 数据同步:比如每天凌晨1点把mysql中的数据同步到大数据平台中。 在单体应用中,实现定时任务很简单,比如Java中有java.util.Timer和ScheduledExecutorService。在Spring框架中也提供了scheduling 方...
May 24, 2024
背景介绍 RAG(Retrieval Augmented Generation) 检索增强生成(RAG)是一种用于将数据与人工智能模型集成的技术。在 RAG 工作流程中,第一步将文档数据加载到矢量数据库(例如 Redis)中。当收到用户查询时,矢量数据库会检索一组与该查询相似的文档。然后,这些文档数据充当用户问题的上下文,并与用户的查询结合使用生成响应(通常通过 LLM 模型)。 在此示例中,我们将使用包含啤酒信息的数据集,包括名称、酒精体积 (ABV)、国际苦度单位 (IBU) 等属性以及每种啤酒的描述。该数据集将加载到 Redis 中,之后通过 Spring Cloud Ali...
May 9, 2024
快速体验 Spring Cloud Alibaba AI 旨在简化包含人工智能相关功能的应用程序的开发,避免不必要的复杂性。 Spring AI 的核心是提供抽象,作为开发 AI 应用程序的基础。这些抽象有多种实现方式,只需极少的代码改动即可轻松实现各个大模型之间的切换。 Spring AI 提供以下功能: 支持所有主要模型提供商,例如 OpenAI、Microsoft、Amazon、Google 和 Huggingface。 支持的模型类型包括“聊天”和“文本到图像”,还有更多模型类型正在开发中。 跨 AI 提供商的可移植 API,用于聊天和嵌入模型。支持同步和流 API...
January 27, 2024
本文章主要叙述在 Java 应用适配 Graalvm Native Image 中的步骤和遇到的一些问题!因为 Graalvm 官方文档相关概念叙述过于简单。基本靠问才能知道些许有用信息。所以写此文章。 关于 Graalvm 基础知识的相关学习,可以参照 Seata 社区 commiter 王良的 ,本文章主要介绍元数据适配。不对 Graalvm 基础做过多介绍。 Graalvm 现状介绍 GraalVM:是一种高性能运行时,可显着提高应用程序性能和效率,是微服务的理想选择。它专为使用 Java、JavaScript、基于 LLVM 的语言(例如 C 和 C++)以及其他动态语言编写...