Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 4d35c84e35 | |||
| 0832095f73 |
21
mirzaev/neuroseti/system/api.php
Normal file
21
mirzaev/neuroseti/system/api.php
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace mirzaev\neuroseti;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* API
|
||||||
|
*
|
||||||
|
* Types of neural networks API
|
||||||
|
*
|
||||||
|
* @package mirzaev\neuroseti
|
||||||
|
*
|
||||||
|
* @license http://www.wtfpl.net/ Do What The Fuck You Want To Public License
|
||||||
|
* @author Arsen Mirzaev Tatyano-Muradovich <arsen@mirzaev.sexy>
|
||||||
|
*/
|
||||||
|
enum api: string
|
||||||
|
{
|
||||||
|
case openai = 'OpenAI';
|
||||||
|
}
|
||||||
|
|
||||||
@@ -4,6 +4,9 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace mirzaev\neuroseti;
|
namespace mirzaev\neuroseti;
|
||||||
|
|
||||||
|
// Files of the project
|
||||||
|
use mirzaev\neuroseti\api;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Neural network
|
* Neural network
|
||||||
*
|
*
|
||||||
@@ -17,27 +20,79 @@ namespace mirzaev\neuroseti;
|
|||||||
enum network: string
|
enum network: string
|
||||||
{
|
{
|
||||||
// OpenAI GPT-4
|
// OpenAI GPT-4
|
||||||
case gpt_4_1 = 'GPT-4.1';
|
case gpt_4_1 = 'gpt-4.1';
|
||||||
case gpt_4_1_mini = 'GPT-4.1 mini';
|
case gpt_4_1_mini = 'gpt-4.1-mini';
|
||||||
case gpt_4_1_nano = 'GPT-4.1 nano';
|
case gpt_4_1_nano = 'gpt-4.1-nano';
|
||||||
case o_4_mini = 'o4-mini';
|
case o4_mini = 'o4-mini';
|
||||||
|
|
||||||
// OpenAI GPT-5
|
// OpenAI GPT-5
|
||||||
case gpt_5 = 'GPT-5';
|
case gpt_5 = 'gpt-5';
|
||||||
case gpt_5_mini = 'GPT-5 mini';
|
case gpt_5_mini = 'gpt-5-mini';
|
||||||
case gpt_5_nano = 'GPT-5 nano';
|
case gpt_5_nano = 'gpt-5-nano';
|
||||||
case gpt_5_pro = 'GPT-5 pro';
|
case gpt_5_pro = 'gpt-5-pro';
|
||||||
|
|
||||||
// OpenAI GPT RealTime
|
// OpenAI GPT RealTime
|
||||||
case gpt_realtime = 'GPT realtime';
|
case gpt_realtime = 'gpt-realtime';
|
||||||
case gpt_realtime_mini = 'GPT realtime mini';
|
case gpt_realtime_mini = 'gpt-realtime-mini';
|
||||||
|
|
||||||
// OpenAI Sora 2
|
// OpenAI Sora 2
|
||||||
case sora_2 = 'Sora 2';
|
case sora_2 = 'sora-2';
|
||||||
case sora_2_pro = 'Sora 2 pro';
|
case sora_2_pro = 'sora-2-pro';
|
||||||
|
|
||||||
// OpenAI Image Generation
|
// OpenAI Image Generation
|
||||||
case gpt_image_1 = 'GPT image 1';
|
case gpt_image_1 = 'gpt-image-1';
|
||||||
case gpt_image_1_mini = 'GPT image 1 mini';
|
case gpt_image_1_mini = 'gpt-image-1-mini';
|
||||||
}
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Label
|
||||||
|
*
|
||||||
|
* @return string The neural network label
|
||||||
|
*/
|
||||||
|
public function label(): string
|
||||||
|
{
|
||||||
|
// Exit (success)
|
||||||
|
return match ($this) {
|
||||||
|
static::gpt_4_1 => 'GPT-4.1',
|
||||||
|
static::gpt_4_1_mini => 'GPT-4.1 mini',
|
||||||
|
static::gpt_4_1_nano => 'GPT-4.1 nano',
|
||||||
|
static::o4_mini => 'o4-mini',
|
||||||
|
static::gpt_5 => 'GPT-5',
|
||||||
|
static::gpt_5_mini => 'GPT-5 mini',
|
||||||
|
static::gpt_5_nano => 'GPT-5 nano',
|
||||||
|
static::gpt_5_pro => 'GPT-5 pro',
|
||||||
|
static::gpt_realtime => 'GPT realtime',
|
||||||
|
static::gpt_realtime_mini => 'GPT realtime mini',
|
||||||
|
static::sora_2 => 'Sora 2',
|
||||||
|
static::sora_2_pro => 'Sora 2 pro',
|
||||||
|
static::gpt_image_1 => 'GPT image 1',
|
||||||
|
static::gpt_image_1_mini => 'GPT image 1 mini'
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* API
|
||||||
|
*
|
||||||
|
* @return api The neural network API
|
||||||
|
*/
|
||||||
|
public function api(): api
|
||||||
|
{
|
||||||
|
// Exit (success)
|
||||||
|
return match ($this) {
|
||||||
|
static::gpt_4_1,
|
||||||
|
static::gpt_4_1_mini,
|
||||||
|
static::gpt_4_1_nano,
|
||||||
|
static::o4_mini,
|
||||||
|
static::gpt_5,
|
||||||
|
static::gpt_5_mini,
|
||||||
|
static::gpt_5_nano,
|
||||||
|
static::gpt_5_pro,
|
||||||
|
static::gpt_realtime,
|
||||||
|
static::gpt_realtime_mini,
|
||||||
|
static::sora_2,
|
||||||
|
static::sora_2_pro,
|
||||||
|
static::gpt_image_1,
|
||||||
|
static::gpt_image_1_mini,
|
||||||
|
=> api::openai
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user