1. Go to this page and download the library: Download lingoda/ai-bundle library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
lingoda / ai-bundle example snippets
use Lingoda\AiSdk\Platform;
use Lingoda\AiSdk\PlatformInterface;
class MyService
{
public function __construct(
private Platform $platform, // AI SDK Platform with ALL configured providers
// OR use the interface:
// private PlatformInterface $platform
) {}
public function compareModels(string $prompt): array
{
return [
'openai' => $this->platform->ask($prompt, 'gpt-4o-mini')->getContent(),
'anthropic' => $this->platform->ask($prompt, 'claude-3-5-haiku-20241022')->getContent(),
'gemini' => $this->platform->ask($prompt, 'gemini-2.5-flash-002')->getContent(),
];
}
public function useDefaultProvider(string $prompt): string
{
// Uses your configured default_provider
return $this->platform->ask($prompt)->getContent();
}
}
use Lingoda\AiBundle\Platform\ProviderPlatform;
use Lingoda\AiSdk\PlatformInterface;
class MyService
{
public function __construct(
// Named parameter autowiring - the bundle automatically wires the right provider:
private ProviderPlatform $openaiPlatform, // Only OpenAI models
private ProviderPlatform $anthropicPlatform, // Only Anthropic models
private PlatformInterface $geminiPlatform, // Interface alias also works
) {}
public function generateWithOpenAI(string $prompt): string
{
// Only has access to OpenAI models
return $this->openaiPlatform->ask($prompt)->getContent();
}
public function generateWithAnthropic(string $prompt): string
{
// Only has access to Anthropic models
return $this->anthropicPlatform->ask($prompt)->getContent();
}
public function generateWithGemini(string $prompt): string
{
// Only has access to Gemini models
return $this->geminiPlatform->ask($prompt)->getContent();
}
}
use Lingoda\AiSdk\Prompt\UserPrompt;
use Lingoda\AiSdk\Prompt\Conversation;
use Lingoda\AiSdk\Prompt\SystemPrompt;
class AdvancedService
{
public function __construct(
private Platform $platform
) {}
public function parameterizedPrompts(): string
{
$template = UserPrompt::create('Hello {{name}}, explain {{topic}} in simple terms');
$prompt = $template->withParameters([
'name' => 'Alice',
'topic' => 'machine learning'
]);
return $this->platform->ask($prompt)->getContent();
}
public function conversations(): string
{
$conversation = Conversation::withSystem(
SystemPrompt::create('You are a helpful coding assistant'),
UserPrompt::create('How do I implement dependency injection?')
);
return $this->platform->ask($conversation)->getContent();
}
public function audioFeatures(): void
{
// Text-to-Speech (
// These all work automatically:
private Platform $platform; // Multi-provider
private PlatformInterface $platform; // Multi-provider (interface)
private ProviderPlatform $openaiPlatform; // OpenAI only
private PlatformInterface $anthropicPlatform; // Anthropic only (interface)
private ProviderPlatform $geminiPlatform; // Gemini only
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.