Download the PHP package sage-grids/php-ai-sdk without Composer
On this page you can find all versions of the php package sage-grids/php-ai-sdk. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download sage-grids/php-ai-sdk
More information about sage-grids/php-ai-sdk
Files in sage-grids/php-ai-sdk
Package php-ai-sdk
Short Description A unified, developer-friendly PHP SDK for interacting with multiple AI providers
License MIT
Informations about the package php-ai-sdk
PHP AI SDK
A unified, developer-friendly PHP SDK for interacting with multiple AI providers. Inspired by the Vercel AI SDK, this library provides a consistent API for text generation, streaming, structured output, tool calling, embeddings, image generation, and speech synthesis.
Installation
Requirements
- PHP 8.1 or higher
- Guzzle HTTP client (automatically installed)
Quick Start
Features
- Unified API: Single interface for multiple AI providers
- Text Generation: Generate text with customizable parameters
- Streaming: Real-time streaming of responses
- Structured Output: Generate type-safe JSON objects with schema validation
- Tool Calling: Let AI models call your functions
- Embeddings: Generate vector embeddings for text
- Image Generation: Create images from text prompts
- Speech: Text-to-speech and speech-to-text capabilities
- Testing Utilities: FakeProvider for unit testing without API calls
Usage
Text Generation
Generate text from a simple prompt:
Using conversation messages:
Streaming Text
Stream responses in real-time:
With callbacks:
Structured Output
Generate validated JSON objects using schemas:
Using PHP classes for schemas:
Tool Calling
Let AI models call your functions:
Embeddings
Generate vector embeddings for semantic search:
Image Generation
Create images from text prompts:
Speech
Text-to-speech:
Speech-to-text:
Provider Setup
OpenAI
Using Model Strings
Register providers and use model strings:
Global Configuration
Set defaults for all AI calls:
Testing
The SDK includes a FakeProvider for testing without making real API calls:
Using FakeResponse Helpers
Error Handling
The SDK provides specific exceptions for different error types:
API Reference
AI Facade Methods
| Method | Description |
|---|---|
AI::generateText($options) |
Generate text synchronously |
AI::streamText($options) |
Stream text generation |
AI::generateObject($options) |
Generate structured object |
AI::streamObject($options) |
Stream object generation |
Common Options
| Option | Type | Description |
|---|---|---|
model |
string\|ProviderInterface |
Model identifier or provider instance |
prompt |
string |
Simple text prompt |
messages |
Message[] |
Conversation messages |
system |
string |
System message |
maxTokens |
int |
Maximum tokens to generate |
temperature |
float |
Sampling temperature (0-2) |
topP |
float |
Top-p sampling parameter |
stopSequences |
string[] |
Sequences that stop generation |
tools |
Tool[] |
Available tools |
toolChoice |
string\|Tool |
Tool selection strategy |
Schema Types
| Method | Description |
|---|---|
Schema::string() |
String value |
Schema::integer() |
Integer value |
Schema::number() |
Floating-point number |
Schema::boolean() |
Boolean value |
Schema::array($items) |
Array of items |
Schema::object($properties) |
Object with properties |
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Development Setup
Running Tests
Code Style
Static Analysis
License
This project is licensed under the MIT License - see the LICENSE file for details.
All versions of php-ai-sdk with dependencies
guzzlehttp/guzzle Version ^7.0
psr/event-dispatcher Version ^1.0
psr/http-client Version ^1.0
psr/http-message Version ^1.0|^2.0