yllw-digital / laravel-ChatGPT-mock-api
使用ChatGPT提示生成Laravel中的智能API模拟
v0.1
2023-06-21 22:35 UTC
Requires
- php: ^8.1
- illuminate/contracts: ^10.0
- spatie/laravel-package-tools: ^1.14.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.9
- orchestra/testbench: ^8.0
- pestphp/pest: ^2.0
- pestphp/pest-plugin-arch: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
README
使用ChatGPT提示在Laravel中生成智能API模拟。
安装
composer require --dev yllw-digital/laravel-chatgpt-mock-api
接下来,您需要发布配置文件和迁移
php artisan vendor:publish --provider="YellowDigital\LaravelChatgptMockApi\LaravelChatgptMockApiServiceProvider"
运行迁移以创建缓存表
php artisan migrate
最后,您需要将您的OpenAI API密钥添加到.env文件中
OPENAI_API_KEY=sk-...
使用方法
在您的routes/api.php文件中,添加以下内容
use YellowDigital\LaravelChatgptMockApi\Facades\ChatGPTMockApi; Route::get("/mock-response", function() { return ChatGPTMockApi::generate( prompt: "European countries and their national food", keys: [ "id", "name", "food", "food_description", ], count: 3, ); });
这将生成如下所示的响应
[
{
"id": 1,
"name": "Italy",
"food": "Pizza",
"food_description": "A delicious round dough topped with tomato sauce, cheese and a variety of toppings."
},
{
"id": 2,
"name": "France",
"food": "Croissants",
"food_description": "A flaky, buttery pastry that is commonly eaten for breakfast or as a snack."
},
{
"id": 3,
"name": "Spain",
"food": "Paella",
"food_description": "A rice dish that originated in Valencia and is typically made with saffron, chicken, and shellfish."
}
]
缓存
默认情况下,该包将缓存生成的响应在您的数据库中,这样您就不会触及OpenAI API的限制。您可以按照如下设置来禁用此功能
ChatGPTMockApi::generate( prompt: "European countries and their national food", keys: [ "id", "name", "food", "food_description", ], count: 3, cache: false, );
更改ChatGPT模型
默认情况下,该包将使用gpt-3.5-turbo模型。您可以按照如下设置来更改此模型
ChatGPTMockApi::generate( prompt: "European countries and their national food", keys: [ "id", "name", "food", "food_description", ], count: 3, model: "gpt-3.5-turbo-0301", );
许可证
本软件包是开源软件,根据MIT许可证授权。