cognesy/instructor-php

Unified LLM API, structured data outputs with LLMs, and agent SDK - in PHP

解決する課題

LLMの出力(JSONや生のテキストなど)を手動で解析する手間をなくし、型付けされ検証済みのPHPデータオブジェクトに変換します。また、さまざまなLLMプロバイダーとやり取りするための統一APIを提供することで、プロバイダーロックインの問題も解決します。

仕組み

Instructorは「レスポンスモデル」(型ヒントを持つプレーンなPHPクラス)を使用して、望むデータ構造を定義します。次に、ネイティブなJSONモード、ツール呼び出し、特定のプロンプトなどのLLM機能を活用して、モデルがそのスキーマに一致するデータを返すように強制します。出力が検証(Symfony Validationを使用)に失敗した場合、Instructorは自動的にリクエストを再試行し、検証エラーをLLMにフィードバックして自己修正させます。

対象ユーザー

型安全性、構造化データ抽出を備え、コアロジックを書き直すことなくプロバイダー(例:OpenAI、Anthropic、Gemini、Ollama)を切り替えたいPHP開発者向けです。

ハイライト

  • 構造化抽出: テキスト、画像、またはチャットシーケンスを型付きPHPクラスに変換します。
  • 自動検証と再試行: Symfony Validationで出力を検証し、エラーフィードバック付きで失敗したリクエストを自動的に再試行します。
  • 統一推論(多言語対応): 20以上のLLMプロバイダーをサポートする単一のAPIレイヤー(Ollamaによるローカルモデルを含む)。
  • 包括的なAIツールキット: RAG用のコンポーネント(ベクトルストレージと検索)、ツールを使用するエージェント向けの軽量なAgent SDK、バッチ推論が含まれます。
  • フレームワーク非依存: スタンドアロンで動作し、LaravelとSymfony向けの公式インテグレーションも提供します。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト