返回 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
- 国内可达性
- 国内可达
- 可达性观察
- 待补充
权限、依赖与维护信号
这些字段记录公开可见信号,不等同于安全审计结论。
权限信号
暂无公开信号。
依赖信号
暂无公开信号。
维护信号
暂无公开信号。
公开来源与证据
- 代码仓库仅作事实索引
