快速接入通义千问

引言

在探索大型语言模型的使用时,我注意到阿里巴巴推出的"通义千问"不仅提供了强大的功能,还配备了详尽的 SDK 文档,极大地简化了二次开发的过程。

"通义千问"的API文档简洁明了,使得学习曲线平缓,通过简单的API调用即可将先进的语言处理技术集成到自己的项目中。

步骤一:获取API-KEY

首先,你需要在阿里百炼大平台开通服务:

  • 访问[阿里百炼控制台] https://bailian.console.aliyun.com/
  • 按照指引完成注册或登录流程。
  • 创建并获取你的 API-KEY,这是接入服务的关键。

步骤二:选择模型

"通义千问"提供了多种模型,例如:

  • 通义千问-Max:适用于处理1M token长度的文本,支持中文和英文等多种语言。
  • Qwen-Long:专为超长上下文设计,支持长达1000万tokens的输入,约合1500万字或1.5万页文档,并支持多种文档格式。

步骤三:PHP接入示例

下面是一个PHP代码示例,展示了如何封装一个方法来调用"通义千问"模型:

php 复制代码
public function dashscope($prompt, $model = "qwen-max") {
    $openai_api_key = '你的API-KEY'; // 替换为你的API-KEY

    $data = [
        'model' => $model,
        'input' => ['messages' => []],
        'parameters' => new stdClass(),
    ];
    array_push($data['input']['messages'], [
        'role' => 'user',
        'content' => $prompt
    ]);

    $curl = curl_init();
    curl_setopt_array($curl, [
        CURLOPT_URL => 'https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation',
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_POSTFIELDS => json_encode($data),
        CURLOPT_HTTPHEADER => [
            'Authorization: Bearer ' . $openai_api_key,
            'Content-Type: application/json'
        ],
    ]);

    $response = curl_exec($curl);
    $response = json_decode($response, true);
    curl_close($curl);

    if ($model == 'qwen-max') {
        $content = $response['output']['text'] ?? '未找到模型';
    } elseif ($model == 'qwen-long') {
        $content = $response['output']['choices'][0]['message']['content'] ?? '未找到模型';
    } else {
        $content = '未找到模型';
    }
    return $content;
}

步骤四:简单尝试AI对话

通过上述封装的方法,你可以轻松地在你的应用程序中实现AI对话功能。

以下是请求接口结果的例子。

结论

本文介绍了如何使用PHP调用"通义千问"的API,包括使用curl发送HTTP请求、编写API调用程序以及进行基本的错误处理。

通过这些步骤,你可以将AI技术应用到各种场景中,提升你的项目智能化水平。

-- 欢迎点赞、关注、转发、收藏【我码玄黄】,gonghao同名

相关推荐
炒空心菜菜26 分钟前
MapReduce 实现 WordCount
java·开发语言·ide·后端·spark·eclipse·mapreduce
wowocpp3 小时前
spring boot Controller 和 RestController 的区别
java·spring boot·后端
后青春期的诗go3 小时前
基于Rust语言的Rocket框架和Sqlx库开发WebAPI项目记录(二)
开发语言·后端·rust·rocket框架
freellf3 小时前
go语言学习进阶
后端·学习·golang
全栈派森5 小时前
云存储最佳实践
后端·python·程序人生·flask
CircleMouse5 小时前
基于 RedisTemplate 的分页缓存设计
java·开发语言·后端·spring·缓存
jingyu飞鸟6 小时前
Centos7系统(最小化安装)安装zabbix7版本详细文章、nginx源代码配置、php源代码、mysql-yum安装
开发语言·php
獨枭6 小时前
使用 163 邮箱实现 Spring Boot 邮箱验证码登录
java·spring boot·后端
维基框架6 小时前
Spring Boot 封装 MinIO 工具
java·spring boot·后端
秋野酱6 小时前
基于javaweb的SpringBoot酒店管理系统设计与实现(源码+文档+部署讲解)
java·spring boot·后端