一个 Python 库,用于编写生成式程序,把带类型标注的 LLM 调用变成结构化、可测试的 AI 工作流。
google/langfun
一个 Python 库,通过对象和类型来调用大语言模型,并获取结构化输出。
- Star
- 919
- Fork
- 84
- 未关闭 Issue
- 52
- 最近提交
- 19小时前
这是什么?
Langfun 是基于 PyGlove 构建的 Python 库,把面向对象的思路用于大语言模型的提示(prompting)。开发者不必手写自由文本再自行解析回复,而是定义 Python 类并将其作为期望的输出类型,模型的回答会直接以带类型的对象返回。
该库为 Gemini、GPT、Claude 等多个大模型提供统一的 API,支持将文本与图片等多种模态混合组织成模块化的提示。它既适用于请求式工作流,也适用于批量任务,并包含一个用于跨多个输入维度运行提示的评测框架。
基础用法是通过 lf.query 函数,传入提示模板、输出类型和语言模型对象。可选安装项包括 VertexAI 接入、MIME 与图像支持以及 UI 增强。
核心功能
- 01以 PyGlove 类定义的 Python 对象形式返回模型输出。
- 02为 Gemini、GPT、Claude 等大模型提供统一的 API。
- 03支持将文本与图片等模态组合成模块化提示。
- 04同时支持交互式请求与批量任务。
- 05内置评测框架,可跨多个输入维度运行提示。
- 06最小化安装,可选择 VertexAI、MIME 和 UI 等额外功能。
适用场景
- 从文本或图片中提取结构化数据,并转换为 Python 对象。
- 在现有 Python 项目中构建由大模型驱动的智能体或处理流水线。
- 对大规模数据集批量运行提示并收集带类型的结果。
- 跨多种输入组合评测不同的提示词与模型版本。
快速上手
- 1
使用最小依赖安装 Langfun
pip install langfun - 2
安装包含全部依赖的完整版 Langfun
pip install langfun[all] - 3
使用你的 OpenAI API 密钥运行 Hello, Langfun 示例(替换占位密钥)
使用前须知
- 调用 Gpt4o 等托管模型需要服务提供商的付费 API 密钥。
- 项目声明其不是 Google 官方支持的产品。
收录于专题
标签
常见问题
- langfun 是什么?
- 一个 Python 库,通过对象和类型来调用大语言模型,并获取结构化输出。 Langfun 是基于 PyGlove 构建的 Python 库,把面向对象的思路用于大语言模型的提示(prompting)。开发者不必手写自由文本再自行解析回复,而是定义 Python 类并将其作为期望的输出类型,模型的回答会直接以带类型的对象返回。
- langfun 可以免费使用吗?用的什么许可证?
- langfun 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- langfun 还在维护吗?
- 活跃维护中。langfun 最近一次提交是在 2026年11月6日。
- langfun 适合用来做什么?
- 从文本或图片中提取结构化数据,并转换为 Python 对象。 在现有 Python 项目中构建由大模型驱动的智能体或处理流水线。 对大规模数据集批量运行提示并收集带类型的结果。 跨多种输入组合评测不同的提示词与模型版本。
- langfun 怎么安装和运行?
- 使用最小依赖安装 Langfun: pip install langfun 安装包含全部依赖的完整版 Langfun: pip install langfun[all] 使用你的 OpenAI API 密钥运行 Hello, Langfun 示例(替换占位密钥)
- 在哪里获取 langfun?
- 源代码和安装说明在 GitHub 上:https://github.com/google/langfun
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一个 Python 库,在生成过程中约束 LLM 输出,使其符合指定的类型、正则、JSON Schema 或语法。
为 llm 命令行工具开发的 Python 插件,并行调用多个大模型,迭代优化回答并由仲裁模型达成共识。
面向 LLM 提示词的 Markdown 文件格式,配套多语言运行时与 VS Code 扩展,用于运行和追踪提示词。
将 Sebastian Raschka 的《从零构建大语言模型》书中的 PyTorch 代码翻译为 Rust,基于 Candle 框架实现。
基于非自回归模型的 Python SDK,对文本或 JSON 回答预设问题,输出标签、分数和概率,而非生成自由文本。