1. Go to this page and download the library: Download uodev/langfuse-logger 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/ */
uodev / langfuse-logger example snippets
declare(strict_types=1);
use Langfuse\LangfuseLogger;
use Langfuse\Providers\OpenAIProvider;
'pk-lf-...', // Public Key
'sk-lf-...' // Secret Key
);
// Optional: Set user and session
$logger->setUserId('user-123')
->setSessionId('session-abc');
// Log your API response
$logger->log(
new OpenAIProvider(), // Provider instance
'gpt-4o', // Model name
$messages, // Messages array sent to API
$response // Response array from API
);
use Langfuse\Providers\OpenAIProvider;
$logger->log(
new OpenAIProvider(),
'gpt-4o',
$messages,
$response
);
use Langfuse\Providers\AnthropicProvider;
$logger->log(
new AnthropicProvider(),
'claude-3-5-sonnet-20241022',
$messages,
$response
);
use Langfuse\Providers\GoogleProvider;
$logger->log(
new GoogleProvider(),
'gemini-1.5-pro',
$messages,
$response
);
use Langfuse\Providers\XAIProvider;
$logger->log(
new XAIProvider(),
'grok-2',
$messages,
$response
);
declare(strict_types=1);
use Langfuse\Contracts\ProviderInterface;
use Langfuse\DTO\Usage;
class MyCustomProvider implements ProviderInterface
{
public function parseResponse(array $response): Usage
{
// Extract tokens from your provider's response format
return new Usage(
$inputTokens,
$outputTokens,
$totalTokens,
$cachedTokens,
$reasoningTokens
);
}
public function formatMessages(array $messages): string
{
// Format messages to string
}
public function extractOutput(array $response): string
{
// Extract output content from response
}
public function getName(): string
{
return 'my-custom-provider';
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.