From 0b63672e94e1693141d6d6018a234fe89f673dbb Mon Sep 17 00:00:00 2001 From: Ashley Johnson <61059402+PapaRascal2020@users.noreply.github.com> Date: Sat, 7 Sep 2024 22:02:32 +0100 Subject: [PATCH] refactor(SK): - Comments and removed responseFormat for now from completion function --- .../views/sidekick-examples/index.blade.php | 5 ++-- routes/web.php | 2 -- src/Drivers/Claude.php | 17 ++++++++--- src/Drivers/Cohere.php | 16 ++++++++-- src/Drivers/Mistral.php | 15 ++++++++-- src/Drivers/OpenAi.php | 30 ++++++++++++++++--- src/Features/Completion.php | 1 - 7 files changed, 69 insertions(+), 17 deletions(-) diff --git a/resources/views/sidekick-examples/index.blade.php b/resources/views/sidekick-examples/index.blade.php index 88eb349..538e4ef 100644 --- a/resources/views/sidekick-examples/index.blade.php +++ b/resources/views/sidekick-examples/index.blade.php @@ -12,8 +12,9 @@

Hello!

- Sidekick Robot - + Sidekick Robot

Note: To use this playground you must have configured the .env with your SIDEKICK_OPENAI_TOKEN.

diff --git a/routes/web.php b/routes/web.php index c6d7a99..d221c73 100644 --- a/routes/web.php +++ b/routes/web.php @@ -2,9 +2,7 @@ use Illuminate\Http\Request; use Illuminate\Support\Facades\Route; -use PapaRascalDev\Sidekick\Drivers\Claude; use PapaRascalDev\Sidekick\Drivers\Cohere; -use PapaRascalDev\Sidekick\Drivers\Mistral; use \PapaRascalDev\Sidekick\Sidekick; use \PapaRascalDev\Sidekick\Drivers\OpenAi; use PapaRascalDev\Sidekick\SidekickConversation; diff --git a/src/Drivers/Claude.php b/src/Drivers/Claude.php index 2c88b27..d61e979 100644 --- a/src/Drivers/Claude.php +++ b/src/Drivers/Claude.php @@ -4,11 +4,21 @@ use PapaRascalDev\Sidekick\Features\Completion; +/** + * Supported Models: + * + * - claude-3-opus-20240229 + * - claude-3-sonnet-20240229 + * - claude-3-haiku-20240307 + * + * Supported Methods + * - Completions + */ + class Claude implements Driver { - /** - * OpenAi Api Base URL + * Api Base URL * @strind $baseUrl */ private string $baseUrl = "https://api.anthropic.com/v1"; @@ -54,8 +64,7 @@ public function complete(): Completion '$allMessages ? $allMessages : null', '["role" => "user", "content" => $message]', ] - ], - responseFormat: [] + ] ); } diff --git a/src/Drivers/Cohere.php b/src/Drivers/Cohere.php index a8ab2a3..d215add 100644 --- a/src/Drivers/Cohere.php +++ b/src/Drivers/Cohere.php @@ -4,6 +4,19 @@ use PapaRascalDev\Sidekick\Features\Completion; +/** + * Unlike other AI's passing no model sets a defaults + * to Command-r + * + * Supported Models: + * + *- command-r-08-2024 + *- command-r-plus-08-2024 + * + * Supported Methods + * - Completions + */ + class Cohere implements Driver { @@ -56,8 +69,7 @@ public function complete(): Completion requestRules: [ 'chat_history' => '$allMessages ? $allMessages : null', 'message' => '$message' - ], - responseFormat: [] + ] ); } diff --git a/src/Drivers/Mistral.php b/src/Drivers/Mistral.php index 6929964..14f3b28 100644 --- a/src/Drivers/Mistral.php +++ b/src/Drivers/Mistral.php @@ -4,6 +4,18 @@ use PapaRascalDev\Sidekick\Features\{Completion, Embedding}; +/** + * Supported Models: + * + * - claude-3-opus-20240229 + * - claude-3-sonnet-20240229 + * - claude-3-haiku-20240307 + * + * Supported Methods + * - Completions + * - Embed + */ + class Mistral implements Driver { @@ -58,8 +70,7 @@ public function complete(): Completion '$allMessages ? $allMessages : null', '["role" => "user", "content" => $message]', ] - ], - responseFormat: [] + ] ); } diff --git a/src/Drivers/OpenAi.php b/src/Drivers/OpenAi.php index 91a0f63..079635e 100644 --- a/src/Drivers/OpenAi.php +++ b/src/Drivers/OpenAi.php @@ -3,8 +3,31 @@ namespace PapaRascalDev\Sidekick\Drivers; use PapaRascalDev\Sidekick\Features\{Completion, Audio, Transcribe, Image, Embedding, Moderate}; -use Illuminate\Config\Repository; -use Illuminate\Foundation\Application; + +/** + * Supported Models: + * + *- gpt-3.5-turbo + * - gpt-4 + * - tts-1 + * - tts-1-hd + * - dall-e-2 + * - dall-e-3 + * - whisper-1 + * - text-embedding-3-small + * - text-embedding-3-large + * - text-embedding-ada-002 + * - text-moderation-latest + * - text-moderation-stable + * - text-moderation-007 + * + * Supported Methods + * - Completions + * - Embed + * - Audio + * - Transcription + * - Moderate + */ class OpenAi implements Driver { @@ -81,8 +104,7 @@ public function complete(): Completion '$allMessages ? $allMessages : null', '["role" => "user", "content" => $message]', ] - ], - responseFormat: [] + ] ); } diff --git a/src/Features/Completion.php b/src/Features/Completion.php index 27d5cf9..a1ad0cf 100644 --- a/src/Features/Completion.php +++ b/src/Features/Completion.php @@ -16,7 +16,6 @@ function __construct( protected string $url, protected array $headers, protected $requestRules, - protected $responseFormat, ) { }