Instructor for PHP home page
Search...
⌘K
Issues
Github
Github
Search...
Navigation
Cookbook \ Polyglot \ LLM Advanced
Parallel Calls
Instructor
Polyglot
HTTP Client
Cookbook
Changelog
Community
Blog
Cookbook
Instructor Cookbooks
Contributing
Cookbook \ Instructor \ Basics
Basic use
Specifying required and optional parameters via constructor
Getters and setters
Private vs public object field
Basic use via mixin
Fluent API
Handling errors with `Maybe` helper class
Messages API
Mixed Type Property
Modes
Making some fields optional
Automatic correction based on validation results
Using attributes
Using LLM API connection presets from config file
Validation
Custom validation using Symfony Validator
Validation across multiple fields
Validation with LLM
Cookbook \ Instructor \ Advanced
Use custom configuration providers
Context caching (structured output)
Customize parameters of LLM driver
Use custom HTTP client instance
Use custom HTTP client instance - Laravel
Custom prompts
Customize parameters via DSN
Extracting arguments of function or method
Logging monolog
Logging psr
Streaming partial updates during inference
Providing example inputs and outputs
Extracting scalar values
Extracting sequences of objects
Streaming
Structures
Cookbook \ Instructor \ Troubleshooting
Debugging
Receive specific internal event with onEvent()
Modifying Settings Path
Tracking token usage via events
Receive all internal events with wiretap()
Cookbook \ Instructor \ LLM API Support
A21
Anthropic
Azure OpenAI
Cerebras
Cohere
DeepSeek
Fireworks.ai
Google Gemini
Google Gemini (OpenAI compatible API)
Groq
Hugging Face
Meta
Minimaxi
Mistral AI
MoonshotAI
Local / Ollama
OpenAI
OpenRouter
Perplexity
SambaNova
Together.ai
xAI / Grok
Cookbook \ Instructor \ Extras
Extraction of complex objects
Extraction of complex objects (Anthropic)
Extraction of complex objects (Cohere)
Extraction of complex objects (Gemini)
Using structured data as an input
Image processing - car damage detection
Image to data (OpenAI)
Image to data (Anthropic)
Image to data (Gemini)
Generating JSON Schema from PHP classes
Generating JSON Schema from PHP classes
Generating JSON Schema dynamically
Create tasks from meeting transcription
Translating UI text fields
Web page to PHP objects
Cookbook \ Polyglot \ LLM Basics
Working directly with LLMs
Working directly with LLMs and JSON - JSON mode
Working directly with LLMs and JSON - JSON Schema mode
Working directly with LLMs and JSON - MdJSON mode
Working directly with LLMs and JSON - Tools mode
Generating JSON Schema from PHP classes
Generating JSON Schema from PHP classes
Cookbook \ Polyglot \ LLM Advanced
Customize configuration providers of LLM driver
Context caching (text inference)
Customize configuration of LLM driver
Custom Embeddings Config
Using custom LLM driver
Customize LLM Configuration with DSN string
Embeddings utils
Embeddings
Work directly with HTTP client facade
Parallel Calls
Reasoning Content Access
Cookbook \ Polyglot \ LLM Troubleshooting
Debugging HTTP Calls
Cookbook \ Polyglot \ LLM API Support
A21
Anthropic
Azure OpenAI
Cerebras
Cohere
DeepSeek
Fireworks.ai
Google Gemini
Groq
Meta
Minimaxi
Mistral AI
MoonshotAI
Local / Ollama
OpenAI
OpenRouter
Perplexity
SambaNova
Together.ai
xAI / Grok
Cookbook \ Polyglot \ LLM Extras
Chat with summary
Using images in prompts
Prompt Templates
Simple content summary
Inference and tool use
Cookbook \ Prompting \ Zero-Shot Prompting
Assign a Role
Auto-Refine The Prompt
Clarify Ambiguous Information
Define Style
Emotional Stimuli
Generate Follow-Up Questions
Ask Model to Repeat the Query
Simulate a Perspective
Cookbook \ Prompting \ Few-Shot Prompting
Generate In-Context Examples
Cookbook \ Prompting \ Thought Generation
Analogical Prompting
Cookbook \ Prompting \ Miscellaneous
Arbitrary properties
Consistent values of arbitrary properties
Chain of Summaries
Chain of Thought
Single label classification
Multiclass classification
Entity relationship extraction
Handling errors
Limiting the length of lists
Reflection Prompting
Restating instructions
Ask LLM to rewrite instructions
Expanding search queries
Summary with Keywords
Reusing components
Using CoT to improve interpretation of component data
On this page
Overview
Cookbook \ Polyglot \ LLM Advanced
Parallel Calls
Overview
Work in progress.
Work directly with HTTP client facade
Reasoning Content Access
Assistant
Responses are generated using AI and may contain mistakes.