cognesy/instructor-php
Unified LLM API, structured data outputs with LLMs, and agent SDK - in PHP
解决的问题
它无需手动解析混乱的 LLM 输出(如 JSON 或原始文本),而是将其转换为类型化、经过验证的 PHP 数据对象。它还通过提供统一的 API 与数十种不同的 LLM 提供商交互,解决了供应商锁定问题。
工作原理
Instructor 使用 "响应模型"(一个带有类型提示的普通 PHP 类)来定义所需的数据结构。然后利用 LLM 的能力(如原生 JSON 模式、工具调用或特定提示)来强制模型返回符合该模式的数据。如果输出验证失败(使用 Symfony Validation),Instructor 可以自动重试请求,将验证错误反馈给 LLM,使其能够自我纠正。
适用对象
希望将 LLM 集成到应用程序中,并注重类型安全、结构化数据提取以及能够在提供商(例如 OpenAI、Anthropic、Gemini、Ollama)之间切换而无需重写核心逻辑的 PHP 开发者。
亮点
- 结构化提取:将文本、图像或聊天序列转换为类型化的 PHP 类。
- 自动验证与重试:使用 Symfony Validation 验证输出,并自动重试失败的请求并提供错误反馈。
- 统一推理(多语言):支持 20 多个 LLM 提供商的单一 API 层,包括通过 Ollama 使用本地模型。
- 全面的 AI 工具包:包含 RAG 组件(向量存储与检索)、用于工具调用代理的轻量级 Agent SDK,以及批量推理。
- 框架无关:可独立使用,也可通过 Laravel 和 Symfony 的一方集成使用。
相关
- 项目
- 项目
- 项目
- 项目
- 项目