icetalker/dashscope-php

阿里云通义万相 php sdk

0.0.1 2024-05-01 17:07 UTC

This package is auto-updated.

Last update: 2024-05-23 15:56:27 UTC


README

阿里通义万相(AI 图片模型)的非官方 PHP SDK

注: 本包仍在完善中,未来可能会有一些不兼容的更新。后续版本可能会加入通义千问等模型功能。

安装

通过 Composer 安装此包:

composer require icetalker/dashscope-php

用法

用法示例

示例如下:

use Dashscope\Dashscope;

$api_key = 'your-dashscope-api-key';

$parameters = [
    'api_key' => $api_key,
    'prompt' => 'Hello World!',
];

$response = Dashscope::imageSynthesis($parameters)->call();

echo $response->getBody()->getContents();

查询作业结果

$api_key = 'your-dashscope-api-key';

$task_id = '******';

$response = Dashscope::fetchTask($task_id, $api_key);

echo $response->getBody()->getContents();

其他

模型调用

通过 Dashscope::{模型名}() 方法,并传入对应模型的参数,即可调用相应模型:

    $parameters = [
        'api_key'=>'your-dashscope-api-key',
        //... 
    ];

    Dashscope::imageSynthesis($parameters)//调用模型
        ->call();

可调用模型包括:

参数设置

设置参数时,所有 input.*parameters.* 格式的参数都无需传入 input.parameters. 前缀。所有的参数都通过数组形式传入,如下:

$parameters = [
    'api_key' => $api_key, // api_key 为必填项
    'prompt' => 'A cat sitting on a park bench', // 其他必填项及可选参数请参考 Dashscope 文档
    //...
];

可用参数列表请参考 Dashscope 文档,如下:

自定义 HTTP 客户端

use GuzzleHttp\Client;

$client = new Client([
    //options ...
    'timeout' => 10,
    'proxy' => 'tcp://127.0.0.1:1080', // 使用代理
]);

$response = Dashscope::imageSynthesis($parameters)->withHttpClient($client)->call();

echo $response->getBody()->getContents();