Spring AI更新:支持OpenAI的结构化输出,增强JSON响应可靠性
就在昨晚,Spring AI发了个比较重要的更新。由于最近OpenAI推出了结构化输出的功能,可确保 AI 生成的响应严格遵守预定义的 JSON 模式。此功能显着提高了人工智能生成内容在现实应用中的可靠性和可用性。Spring AI 紧随其后,现在也可以对OpenAI的结构化输出完美支持了。
下图展示了本次扩展的实现结构,如果对于当前实现还不够满意,需要扩展的可以根据此图来着手理解分析进行下一步扩展工作。
就在昨晚,Spring AI发了个比较重要的更新。由于最近OpenAI推出了结构化输出的功能,可确保 AI 生成的响应严格遵守预定义的 JSON 模式。此功能显着提高了人工智能生成内容在现实应用中的可靠性和可用性。Spring AI 紧随其后,现在也可以对OpenAI的结构化输出完美支持了。
下图展示了本次扩展的实现结构,如果对于当前实现还不够满意,需要扩展的可以根据此图来着手理解分析进行下一步扩展工作。
今早看到,IntelliJ IDEA 2024.2 发布的邮件提示,看了一眼这个版本更新的新特性真的太适合我了!也许这些能力对关注DD的小伙伴也有帮助,所以搞篇博客介绍和推荐一下。下面就来一起看看这个版本中推出的几个强大新特性。
JSON是我们编写API时候用于数据传递的常用格式,那么你是否知道JSON Schema呢?
在数据交换领域,JSON Schema 以其强大的标准化能力,为定义和规范 JSON 数据的结构与规则提供了有力支持。通过一系列精心设计的关键字,JSON Schema 能够详尽地描述数据的各项属性。然而,仅凭 JSON Schema 本身,尚不足以验证 JSON 实例是否严格遵循预设的模式。此时,JSON Schema 验证器的角色便显得尤为关键。这些验证器如同严格的检查官,确保每一个 JSON 文档都能忠实地反映出模式的定义。JSON Schema 验证器,作为实现 JSON Schema 规范的技术工具,其灵活的集成能力使得无论项目规模大小,都能轻松地将 JSON Schema 融入开发流程,从而提升数据处理的效率与准确性。
就在昨晚,Meta发布了可以与OpenAI掰手腕的最新开源大模型:Llama 3.1。
该模型共有三个版本:
对于这次发布,Meta已经在超过150个涵盖广泛语言范围的基准数据集上评估了性能。此外,Meta还进行了广泛的人工评估,在现实场景中将Llama 3.1与竞争模型进行比较。Meta的实验评估表明:
大家好,我是程序猿DD
今天给大家推荐一个日常大概率能用上的开源项目:Stirling PDF
开源地址:https://github.com/Stirling-Tools/Stirling-PDF
Stirling PDF是一个可以用Docker在本地托管的基于Web的PDF处理工具。它的功能非常强大,你可以用它对PDF文件进行各种操作,包括拆分、合并、转换、重新组织、添加图像、旋转、压缩等。
如今,公司对软件工程师(主要是高级工程师)最迫切的需求之一,是以迭代和增量的方式提供高质量的代码审查。
这意味着在每次 PR 审查中,开发人员被要求反复提高即将合并代码的质量。
在这篇文章中,我将尝试指出开发人员在进行重构或审查时应牢记的基本原则。
让我们逐个主题来看这些点:
我有一个需求,需要从外部系统获取用户数据。我通过 WebClient 实现的,作为声明性 HTTP 客户端的一部分。
有趣的是,在新的浏览器标签页中打开应用程序后,第一次请求返回了“Connection reset by peer”错误。
这个问题通过禁用对外请求的 keep-alive 解决了。
改造前的代码:
@Configuration
public class HttpProxyConfiguration {
@Value("${tracker.url}")
private String trackerUrl;
@Bean
TrackerClient trackerClient(WebClient.Builder builder) {
var wc = builder.baseUrl(trackerUrl)
.build();
var wca = WebClientAdapter.forClient(wc);
return HttpServiceProxyFactory.builder()
.clientAdapter(wca)
.build()
.createClient(TrackerClient.class);
}
}
今天,给大家推荐几个好用且免费的IntelliJ IDEA插件。如果你还没有用过,可以尝试一下,也许对你的日常工作会有一定的效率提升噢!
如果你是一个RESTful服务的开发者,那么这个一定要试一下。它是一套非常丰富的RESTful服务开发工具,对 Spring MVC 和 Spring Boot 支持也是非常友好,开发者可以直接通过插件找到自己编写的RESTful接口:
分享8个开箱即用的API,方便日常处理集合。
Stream.ofNullable
该方法是在 Java 9 中引入的,有助于过滤集合中的所有空值,从而可能使我们避免空指针异常。
在下面的示例中,有一个包含 null 的List。此时,我们可以使用Stream.ofNullable
方法对其进行过滤。
List<String> names = Arrays.asList("Alice", null, "Bob", null, "Charlie");
List<String> nonNuLLNames = names.stream()
.flatMap(Stream::ofNullable)
.collect(Collectors.toList());
System.out.println(nonNuLLNames);
直接敲重点,今天给分享一个赚钱且能长期躺赚的机会!关注DD的小伙伴应该知道,最近一直在搞视频翻译类的产品,其中YouTube中文配音是其中最广受好评的产品,目前在Chrome插件市场评分高达4.6分。
经过大半年的迭代,现在的翻译质量和配音效果已经非常优秀,如果您没有体验过,可以通过下面的视频体验一下: