Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jpcaparas/deepseek-php-client
A PHP API client for DeepSeek
https://github.com/jpcaparas/deepseek-php-client
Last synced: about 10 hours ago
JSON representation
A PHP API client for DeepSeek
- Host: GitHub
- URL: https://github.com/jpcaparas/deepseek-php-client
- Owner: jpcaparas
- Created: 2025-01-02T08:57:03.000Z (19 days ago)
- Default Branch: main
- Last Pushed: 2025-01-02T10:19:03.000Z (19 days ago)
- Last Synced: 2025-01-02T10:19:24.670Z (19 days ago)
- Language: PHP
- Size: 6.84 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# DeepSeek PHP API Client
A lightweight PHP wrapper for the DeepSeek Chat API.
![Tests](https://github.com/jpcaparas/deepseek-php-client/actions/workflows/tests.yml/badge.svg)
## Requirements
- PHP 8.1+
- Guzzle HTTP Client
- Valid DeepSeek API key## Installation
```bash
composer require jpcaparas/deepseek-php-client
```## Usage
### Basic Example
*(You can also use PsySH for interactive testing)*
```php
require 'vendor/autoload.php';use DeepSeek\DeepSeekClient;
$client = new DeepSeekClient('your-api-key');
$response = $client
->setMessage('user', 'What is 2+2?')
->send();print_r($response);
```### Available Methods
```php
// Initialize client
$client = new DeepSeekClient('your-api-key');// Add a message to the conversation
$client->setMessage('system', 'You are a helpful assistant');
$client->setMessage('user', 'Hello'); // Returns self for chaining// Clear conversation history
$client->clearMessages(); // Returns self for chaining// Send conversation to API (returns array)
$response = $client->send();
```### Response Format
A successful response will have this structure:
Abridged:
```php
[
'choices' => [
['message' => ['content' => 'Response text here']]
]
]
```Full:
```php
[
"id" => "d7b42b8b-5007-42c6-b607-7b3b7b7b7b7b",
"object" => "chat.completion",
"created" => 1735810490,
"model" => "deepseek-chat",
"choices" => [
[
"index" => 0,
"message" => [
"role" => "assistant",
"content" => "Hello! How can I assist you today? 😊",
],
"logprobs" => null,
"finish_reason" => "stop",
],
],
"usage" => [
"prompt_tokens" => 9,
"completion_tokens" => 11,
"total_tokens" => 20,
"prompt_cache_hit_tokens" => 0,
"prompt_cache_miss_tokens" => 9,
],
"system_fingerprint" => "d7b42b8b-5007-42c6-b607-7b3b7b7b7b7b",
]
```### Error Handling
```php
try {
$response = $client
->setMessage('user', 'Hello')
->send();
} catch (\Exception $e) {
echo $e->getMessage();
}
```The client will return the error response from the API if available, otherwise throw an exception.
## Testing
```bash
composer test
```## License
MIT