mpstenson / cloudflare-ai
此包允许您与Cloudflare AI网络服务进行交互。
1.0.2
2024-05-03 12:19 UTC
Requires
- php: ^8.2
- guzzlehttp/guzzle: ^7.8
- illuminate/contracts: ^10.0||^11.0
- spatie/laravel-package-tools: ^1.16
Requires (Dev)
- larastan/larastan: ^2.9
- laravel/pint: ^1.14
- nunomaduro/collision: ^8.1.1||^7.10.0
- orchestra/testbench: ^9.0.0||^8.22.0
- pestphp/pest: ^2.34
- pestphp/pest-plugin-arch: ^2.7
- pestphp/pest-plugin-laravel: ^2.3
- phpstan/extension-installer: ^1.3
- phpstan/phpstan-deprecation-rules: ^1.1
- phpstan/phpstan-phpunit: ^1.3
README
cloudflare-ai 包为 Laravel 提供了访问 Cloudflare AI REST 网络服务的便捷方式。
安装
您可以通过 composer 安装此包
composer require mpstenson/cloudflare-ai
此包依赖于两个 .env 变量设置:CLOUDFLARE_ACCOUNT_ID
和 CLOUDFLARE_API_TOKEN
使用的 API 令牌需要能够访问 Cloudflare AI 工具。您可以在此处获取生成 Cloudflare 令牌的详细信息。您可以使用以下命令发布配置文件:
php artisan vendor:publish --tag="cloudflare-ai-config"
这是发布配置文件的内容
<?php // config for mpstenson/CloudflareAI return [ 'api_url' => 'https://api.cloudflare.com/client/v4', 'account_id' => env('CLOUDFLARE_ACCOUNT_ID', ''), 'api_token' => env('CLOUDFLARE_API_TOKEN', ''), 'default_model' => env('CLOUDFLARE_DEFAULT_MODEL', 'meta/llama-3-8b-instruct'), 'default_speech_to_text_model' => env('CLOUDFLARE_DEFAULT_SPEECH_TO_TEXT_MODEL', 'openai/whisper'), 'default_image_classification_model' => env('CLOUDFLARE_DEFAULT_IMAGE_CLASSIFICATION_MODEL', 'microsoft/resnet-50'), ];
默认模型可以可选地在 .env 文件中指定。如果指定了默认模型,它们仍然可以在特定的方法调用中被覆盖。 CLOUDFLARE_DEFAULT_MODEL
CLOUDFLARE_DEFAULT_SPEECH_TO_TEXT_MODEL
CLOUDFLARE_DEFAULT_IMAGE_CLASSIFICATION_MODEL
用法
运行一个完成
use mpstenson\CloudflareAI\CloudflareAI; $response = CloudflareAI::runModel([ 'messages' => [ ['role' => 'system', 'content' => 'You are a friendly assistant'], ['role' => 'user', 'content' => 'Why is pizza so good'], ] ],'meta/llama-2-7b-chat-int8');
音频转录
use mpstenson\CloudflareAI\CloudflareAI; $whisper = CloudflareAI::runSpeechToText(fopen(storage_path().'/app/public/test.mp3', 'r'),'openai/whisper');
测试
composer test
变更日志
请参阅 CHANGELOG 以获取有关最近更改的更多信息。
致谢
许可
MIT 许可证 (MIT)。请参阅 许可文件 以获取更多信息。