PHP Classes

Laravel GPT: Send questions to Laravel ChatGPT API using models

Recommend this page to a friend!

  Author Author  
Picture of Eric Jumba
Name: Eric Jumba <contact>
Classes: 1 package by
Country: United States United States
Innovation award
Innovation award
Nominee: 1x


  Detailed description   Download Download .zip .tar.gz   Install with Composer Install with Composer  
This package can send questions to Laravel ChatGPT API using models.

It provides a Laravel service class that can send HTTP requests to the ChatGPT API Web server to perform several actions.

Currently, it can:

- Take chat messages and get responses from ChatGPT

- Transcribe audio files in MP3 with speech to text

- Edit a text and process editing instructions, for instance

- Create an image with a given size from a text description

- Edit an image to change it using editing instructions

- Create a variation of an image

Details

Laravel implementation of chatgpt, includes models listing and retrieving, completions prediction, chat completion from conversation, edits, images creation, image edit, image variations, audio translation and transcription.

Installation

You can install the package via composer:

composer require jumbaeric/laragpt

publish config file

php artisan vendor:publish

and select laragpt package to publish.

Add openai api key to your env variable

OPENAI_API_KEY=

Usage

All methods return Array


use Jumbaeric\Laragpt\Laragpt;

// Complete
// Given a prompt, the model will return one or more predicted completions, and can also return the probabilities of alternative tokens at each position.
    $args = [
        'prompt' => 'Brainstorm some ideas combining VR and fitness', //required
        'model' => 'text-davinci-003',  //  required
    ];

    Laragpt::complete($args);

// Chat
// Given a chat conversation, the model will return a chat completion response.

Laragpt::chat([
        'model' => 'gpt-3.5-turbo', // required
        'messages' => [             // required
            [
                "role" => "system",
                "content" => "You are a helpful assistant."
            ],
            [
                "role" => "user",
                "content" => "Who won the world series in 2020?"
            ],
            [
                "role" => "assistant",
                "content" => "The Los Angeles Dodgers won the World Series in 2020."
            ],
            [
                "role" => "user",
                "content" => "Where was it played?"
            ],
        ],
        'temperature' => 1.0,   //  optional
        'max_tokens' => 4000,   //  optional
        'frequency_penalty' => 0,   //  optional
        'presence_penalty' => 0,    //  optional
    ]);

// Audio
// trascribe: Transcribes audio into the input language.
// translate: Translates audio into into English.

$type = "transcript"; // string: Required : value can be transcript or translation
Laragpt::audio([
            'model' => 'whisper-1',     //  required
            'file' => "audio.mp3",      //  required
            'prompt' => "",             //  optional
            'response_format' => '',    //  optional
            'temperature' => '',        //  optional
        ], $type);

// Edits
// Given a prompt and an instruction, the model will return an edited version of the prompt.
Laragpt::edits([
        'model' => 'text-davinci-edit-001', // required
        'input' => 'What day of the wek is it?',
        'instruction' => 'Fix the spelling mistakes',   //  required
        'n' => 1,   //  optional
        'temperature' => 1,   //  optional
        'top_p' => 1,    //  optional
    ]);

// Images
    $createArr = [ // $type = create
        'prompt' => 'A cute baby sea otter',
        'size' => '1024x1024',   //  required
        'n' => 1,   //  optional
    ] ;

    $ceateEditArr = [ // $type = createEdit
        'prompt' => 'A cute baby sea otter wearing a beret',    // required
        'image' => '@otter.png',                                //required
        'mask' => '@mask.png',
        'n' => 1,
        'size' => '1024x1024',
    ];

    $createVariationArr = [ // $type = variations
        'image' => '@otter.png',
        'n' => 2,
        'size' => '1024x1024',
    ];
    
    Laragpt::images($createArr, $type = 'create');

// Models
$model_id = null; // String : Optional : Lists all models when value is null, model set returns the model details
Laragpt::models($model_id);


Testing

composer test

Changelog

Please see CHANGELOG for more information what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email jumbaeric@gmail.com instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.


  Classes of Eric Jumba  >  Laravel GPT  >  Download Download .zip .tar.gz  >  Support forum Support forum  >  Blog Blog  >  RSS 1.0 feed RSS 2.0 feed Latest changes  
Name: Laravel GPT
Base name: laragpt
Description: Send questions to Laravel ChatGPT API using models
Version: 1.0.0
PHP version: 5
License: Custom (specified in a license file)
 
  Groups   Applications   Files Files  

  Groups  
Group folder image PHP 5 Classes using PHP 5 specific features View top rated classes
Group folder image Graphics Colors, images, charts and picture formats View top rated classes
Group folder image Text processing Manipulating and validating text data View top rated classes
Group folder image Web services Web data clipping, SOAP or XML-RPC clients and servers View top rated classes
Group folder image Audio Voice and music data generation and manipulation View top rated classes
Group folder image Chat Chating and instant messaging View top rated classes
Group folder image Artificial intelligence Automation of tasks using human-like intelligence View top rated classes


  Applications that use this package  
No pages of applications that use this class were specified.

Add link image If you know an application of this package, send a message to the author to add a link here.

  Files folder image Files  
File Role Description
Files folder image.github (1 directory)
Files folder imageconfig (1 file)
Files folder imagesrc (3 files, 1 directory)
Accessible without login Plain text file CHANGELOG.md Data Auxiliary data
Accessible without login Plain text file composer.json Data Auxiliary data
Accessible without login Plain text file CONTRIBUTING.md Data Auxiliary data
Accessible without login Plain text file LICENSE.md Lic. License text
Accessible without login Plain text file README.md Doc. Documentation

  Files folder image Files  /  .github  
File Role Description
Files folder imageworkflows (1 file)

  Files folder image Files  /  .github  /  workflows  
File Role Description
  Accessible without login Plain text file main.yml Data Auxiliary data

  Files folder image Files  /  config  
File Role Description
  Accessible without login Plain text file config.php Aux. Auxiliary script

  Files folder image Files  /  src  
File Role Description
Files folder imageOpenAI (9 files)
  Plain text file Laragpt.php Class Class source
  Plain text file LaragptFacade.php Class Class source
  Plain text file LaragptServiceProvider.php Class Class source

  Files folder image Files  /  src  /  OpenAI  
File Role Description
  Plain text file Audio.php Class Class source
  Plain text file Chat.php Class Class source
  Plain text file Completion.php Class Class source
  Plain text file Edits.php Class Class source
  Plain text file Embeddings.php Class Class source
  Plain text file Files.php Class Class source
  Plain text file Images.php Class Class source
  Plain text file Models.php Class Class source
  Plain text file OpenAI.php Class Class source

Install with Composer Install with Composer - Download Download all files: laragpt.tar.gz laragpt.zip
NOTICE: if you are using a download manager program like 'GetRight', please Login before trying to download this archive.
  Files folder image Files  
File Role Description
Files folder image.github (1 directory)
Files folder imageconfig (1 file)
Files folder imagesrc (3 files, 1 directory)
Accessible without login Plain text file CHANGELOG.md Data Auxiliary data
Accessible without login Plain text file composer.json Data Auxiliary data
Accessible without login Plain text file CONTRIBUTING.md Data Auxiliary data
Accessible without login Plain text file LICENSE.md Lic. License text
Accessible without login Plain text file README.md Doc. Documentation

  Files folder image Files  /  .github  
File Role Description
Files folder imageworkflows (1 file)

  Files folder image Files  /  .github  /  workflows  
File Role Description
  Accessible without login Plain text file main.yml Data Auxiliary data

  Files folder image Files  /  config  
File Role Description
  Accessible without login Plain text file config.php Aux. Auxiliary script

  Files folder image Files  /  src  
File Role Description
Files folder imageOpenAI (9 files)
  Plain text file Laragpt.php Class Class source
  Plain text file LaragptFacade.php Class Class source
  Plain text file LaragptServiceProvider.php Class Class source

  Files folder image Files  /  src  /  OpenAI  
File Role Description
  Plain text file Audio.php Class Class source
  Plain text file Chat.php Class Class source
  Plain text file Completion.php Class Class source
  Plain text file Edits.php Class Class source
  Plain text file Embeddings.php Class Class source
  Plain text file Files.php Class Class source
  Plain text file Images.php Class Class source
  Plain text file Models.php Class Class source
  Plain text file OpenAI.php Class Class source

Install with Composer Install with Composer - Download Download all files: laragpt.tar.gz laragpt.zip
NOTICE: if you are using a download manager program like 'GetRight', please Login before trying to download this archive.