描述
LMQL,或语言模型查询语言,是一种专门为与大型语言模型(LLMs)进行交互而开发的编程语言。由苏黎世联邦理工学院的 SRI 实验室及其贡献者创建,LMQL 提供了一个强大且模块化的 LLM 提示框架。它利用类型、模板、约束和优化运行时来简化构建和执行查询的过程。
阅读更多
LMQL 的一个关键特性是支持嵌套查询,这将过程式编程引入了提示的领域。这允许模块化的本地指令和提示组件的重用,增强了代码的灵活性和可重用性。LMQL 的设计确保 LLM 代码可以在多个后端之间可移植,包括 llama.cpp、OpenAI 和 Transformers,使用户能够通过一行代码在它们之间切换。
LMQL 的提示构建和生成通过富有表现力的 Python 控制流和字符串插值实现。这种方法允许创建复杂的提示,可以包含控制流和分支行为,提供了高度的自定义能力。
该语言还支持约束子句,使用户能够对输出指定逻辑的高层约束。这些约束会自动转换为可以在文本生成过程中强制执行的字符级约束,确保输出符合指定要求。
LMQL 旨在为需要以结构化和高效方式与 LLM 进行交互的开发人员和研究人员提供支持。它为创建和管理 LLM 查询提供了强大的工具集,使其成为在需要高级语言模型交互的领域工作的人员的宝贵资源。
- 类别机器学习平台
- 定价模式免费增值
- 部署本地、基于网络
- 平台llama.cpp、OpenAI、Transformers
LMQL 编程语言的核心功能
强大的 LLM 提示
模块化查询设计
支持嵌套查询
跨后端可移植
富有表现力的 Python 控制流
用于提示的字符串插值
高层约束子句
优化运行时
如何使用 LMQL 编程语言?
安装:在本地设置 LMQL 或使用基于网页的 Playground IDE
编写查询:创建一个带有约束的简单提示语句
扩展:添加复杂逻辑和不同的解码算法
探索:在 Playground IDE 中使用示例获取灵感
LMQL 编程语言的使用案例
- LLM 交互
- 提示优化
- 后端可移植性
- 约束执行
- 过程式提示






