首页
/ LLM项目0.23版本发布:JSON Schema支持与结构化数据提取新特性

LLM项目0.23版本发布:JSON Schema支持与结构化数据提取新特性

2025-06-08 17:52:14作者:仰钰奇

LLM是一个强大的命令行工具和Python库,专注于与大型语言模型(LLM)的交互。它简化了与各种AI模型的交互过程,提供了统一的接口来处理文本生成、对话管理等任务。最新发布的0.23版本带来了重大功能更新,特别是对JSON Schema的支持,使得从非结构化内容中提取结构化数据变得更加容易和可靠。

核心特性:Schema支持

0.23版本最引人注目的新功能是对JSON Schema的全面支持。这一功能允许开发者定义预期的输出数据结构,模型将按照指定的格式返回数据,极大简化了后续数据处理流程。

Schema基本用法

开发者现在可以通过命令行直接指定输出Schema:

llm prompt --schema '{JSON schema goes here}'

例如,要获取一个人的结构化信息,可以这样使用:

llm prompt "介绍OpenAI CEO" --schema 'name, bio, age int'

这个简洁的DSL语法会被自动转换为完整的JSON Schema定义,大大提高了开发效率。

Schema的高级应用

Schema不仅可以通过命令行直接指定,还支持多种灵活的配置方式:

  1. 通过文件指定Schema
  2. 保存到模板中重复使用
  3. 在Python API中通过model.prompt(..., schema={...})参数传递

Python API特别强大,它既接受传统的字典形式JSON Schema定义,也支持Pydantic的BaseModel子类,为Python开发者提供了极大的灵活性。

配套工具链

围绕Schema功能,LLM 0.23版本提供了一系列配套工具:

  1. Schema管理命令

    • llm schemas list:列出所有可用Schema
    • llm schemas show:查看特定Schema详情
    • llm schemas dsl:调试简洁Schema语言
  2. 日志数据分析: 新版llm logs命令增加了多个选项专门处理Schema收集的数据:

    • --data:提取日志中的结构化数据
    • --data-key:按特定键筛选数据
    • --data-array:将数据作为数组输出
    • --data-ids:获取包含数据的日志ID

模型支持与兼容性

Schema功能需要模型本身的支持。0.23版本中:

  1. 默认的OpenAI插件已为所有支持的模型启用Schema功能
  2. llm-anthropic和llm-gemini插件也已升级支持Schema
  3. 新增llm models --schemas命令可列出所有支持Schema的模型

开发者也可以为自己的模型插件添加Schema支持,LLM提供了清晰的实现指南。

其他重要改进

除了核心的Schema功能外,0.23版本还包含多项实用改进:

  1. GPT-4.5预览版支持:新增对OpenAI最新GPT-4.5模型的支持
  2. Python API增强model.prompt()现在可以省略提示文本,仅使用附件
  3. Pydantic v2升级:放弃对Pydantic v1的支持,全面转向v2
  4. OpenAI额外模型配置:支持通过YAML配置模型的推理能力

技术意义与应用场景

LLM 0.23版本的Schema功能解决了LLM应用开发中的一个关键痛点——从非结构化模型输出中提取结构化数据。这一功能在以下场景特别有价值:

  1. 数据抽取:从文本中提取实体、关系等结构化信息
  2. API集成:生成可直接用于后续处理的规范JSON数据
  3. 数据分析:批量处理文档并收集统一格式的结果
  4. 内容生成:确保模型输出符合特定的格式要求

通过将Schema支持深度集成到工具链中,LLM为开发者提供了从交互到日志分析的全流程支持,大大降低了LLM应用的开发门槛和维护成本。

这一版本的发布标志着LLM项目从单纯的模型交互工具向完整的LLM应用开发框架的演进,为构建可靠的、生产级的LLM应用提供了坚实基础。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
24
9
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
9
1
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
64
19
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
392
3.88 K
flutter_flutterflutter_flutter
暂无简介
Dart
671
155
giteagitea
喝着茶写代码!最易用的自托管一站式代码托管平台,包含Git托管,代码审查,团队协作,软件包和CI/CD。
Go
23
0
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
JavaScript
260
322
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
661
310
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.19 K
653
rainbondrainbond
无需学习 Kubernetes 的容器平台,在 Kubernetes 上构建、部署、组装和管理应用,无需 K8s 专业知识,全流程图形化管理
Go
15
1