dog729/laravel-sklearnbot

dev-main 2024-08-12 01:02 UTC

This package is auto-updated.

Last update: 2024-09-12 01:09:54 UTC


README

LaravelSklearnBot 是一个 Laravel 包,允许您解析数据、创建和训练模型,并使用它们来生成对请求的响应。

安装

  1. 安装所需的依赖项
pip install flask scikit-learn python-dotenv
  1. LaravelSklearnBot 添加到您的 composer.json 并运行以下命令
composer require dog729/laravel-sklearnbot

使用方法

示例方法调用

要使用此包,从 SklearnbotFacade 调用以下方法

  1. 带有训练的数据解析:

    \LaravelSklearnBot\SklearnbotFacade::parserHelpBotModel();
  2. 从头开始重新训练模型:

    \LaravelSklearnBot\SklearnbotFacade::trainModelFromScratch();
  3. 基于查询从模型获取响应:

    $result = \LaravelSklearnBot\SklearnbotFacade::getHelpBotResponse('hi');
    print_r($result);
  4. 微调模型:

    \LaravelSklearnBot\SklearnbotFacade::fineTuneModelHelpBot([
        [
            'id' => 8, 'type' => 'sw', 'title' => 'Darth Vader', 'text' => 'Anakin pam pam',
        ]
    ]);
    
    $result = \LaravelSklearnBot\SklearnbotFacade::getHelpBotResponse('Darth Vader');
    print_r($result); // Returns: Array ( [action] => Array ( ) [id] => 8 [text] => Anakin pam pam [type] => sw )

控制台命令

  1. 创建帮助机器人模型处理文件:

    php artisan make:helpbotmodel {name}
    
  2. 安装包并生成必要的文件:

    php artisan helpbot:install
    

    此命令将安装包、生成令牌并创建 helpbot.py 文件。

配置

配置文件 config/sklearnbot.php 包含以下参数

return [
    /**
     * Logic for the operation of submodules
     */
    'helpbot' => 'python', 
    'python' => [
        'run' => 'app.py',
         /**
         * host:port for the running Flask application
         */
        'helpbot_token' => ENV('HELPBOT_TOKEN'),
        'helpbot_host' => ENV('HELPBOT_FLASK_HOST',"127.0.0.1"),
        'helpbot_port' => ENV('HELPBOT_FLASK_PORT',"5729"),
        /**
         * The name of the model files
         */
        'helpbot_model' => 'helpbot',
        'helpbot_model_addtraining' => true, //auto further training of the model
        'helpbot_pkl' => ENV('HELPBOT_PKL','model.pkl'), //model helpbot
        'helpbot_output_pkl' => ENV('HELPBOT_OUTPUT_PKL','output.pkl'), //model helpbot database
    ],
];

运行和测试

使用 curl 的测试示例

  1. 创建模型:

    curl -X POST http://127.0.0.1:5729/create-model -H "Content-Type: application/json" -H "Authorization: your-secure-token"
    
  2. 重新加载模型:

    curl -X POST http://127.0.0.1:5729/reload-model -H "Content-Type: application/json" -H "Authorization: your-secure-token"
    
  3. 微调模型:

    curl -X POST http://127.0.0.1:5729/fine-tune-model -H "Content-Type: application/json" -H "Authorization: your-secure-token" -d '[{"id":"3","title":"boba","text":"aboba"}]'
    
  4. 获取响应:

    curl -X POST http://127.0.0.1:5729/get-response -H "Content-Type: application/json" -d '{"text":"boba"}'