返回 AI 工具目录

LMQL

开发框架人工精选最近核验 2026年7月23日

LMQL(Language Model Query Language)是 ETH Zurich SRI 实验室发起的开源编程语言,把大模型调用直接嵌入 Python 代码:顶层字符串被当作查询模板,变量自动由模型补全,并可用基于 logit 掩码的约束系统控制输出的长度、字符模式与停止条件。它提供 beam search、best_k 等解码策略,异步并行执行与跨查询批处理,以及 WebSocket/REST/SSE 的流式输出,配套浏览器 Playground 与 VS Code 扩展。后端可移植到 llama.cpp、Hugging Face Transformers(本地)与 OpenAI/Azure,采用 Apache-2.0 许可。

定价开源部署本地运行、API 接入国内可达国内可达许可Apache-2.0

解决什么问题

  • 用编程语言而非纯模板管理复杂提示与控制流
  • 以约束系统强制模型输出符合长度与格式要求
  • 提供 beam search、best_k 等可控解码策略
  • 支持异步并行与跨查询批处理提升吞吐
  • 让同一段 LM 代码在多种后端间可移植

适合

  • 需要对模型输出施加结构化约束的研发场景
  • 用 Python 编排多步、带条件分支的提示逻辑
  • 倾向本地 Transformers/llama.cpp 模型做可控生成
  • 研究或原型阶段探索受约束解码

不适合

  • 团队不写 Python 时上手成本较高
  • 生产使用前需自评其维护活跃度与发布节奏
  • 约束解码在部分托管 API 后端上能力受限
  • 仅需简单提示模板时引入该语言偏重

如何接入

  • 后端支持 llama.cpp、Hugging Face Transformers、OpenAI/Azure
  • 可与 LangChain、LlamaIndex 配合使用
  • 提供浏览器 Playground 与 VS Code 扩展
  • 以 pip 安装为 Python 库并可 lmql run 执行文件

已知限制

  • 研究型项目,打包发布节奏较慢
  • OpenAI/Azure 后端需自备海外访问
  • 约束解码对不同后端支持程度不一
  • 学习曲线高于普通提示模板方案

接入与使用事实

部署方式
本地运行、API 接入
实现语言
Python、JavaScript
中文界面
待确认
中文文档
待确认
定价方式
开源
许可证
Apache-2.0
国内可达性
国内可达
可达性观察
待补充

权限、依赖与维护信号

这些字段记录公开可见信号,不等同于安全审计结论。

权限信号

暂无公开信号。

依赖信号

暂无公开信号。

维护信号

暂无公开信号。

公开来源与证据

  1. 代码仓库仅作事实索引

访问官网