mpstenson/cloudflare-ai

此包允许您与Cloudflare AI网络服务进行交互。

1.0.2 2024-05-03 12:19 UTC

This package is auto-updated.

Last update: 2024-09-15 19:22:32 UTC


README

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

cloudflare-ai 包为 Laravel 提供了访问 Cloudflare AI REST 网络服务的便捷方式。

安装

您可以通过 composer 安装此包

composer require mpstenson/cloudflare-ai

此包依赖于两个 .env 变量设置:CLOUDFLARE_ACCOUNT_IDCLOUDFLARE_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)。请参阅 许可文件 以获取更多信息。