xin / coze
There is no license information available for the latest version (v1.3.1) of this package.
CozeAPI PHP SDK 是一个用于简化与 CozeAPI 交互的工具包
This package's canonical repository appears to be gone and the package has been frozen as a result. Email us for help if needed.
v1.3.1
2025-04-13 06:11 UTC
Requires
- php: >=7.1.9
- psr/simple-cache: 1.0|2.0|3.0
- symfony/cache: >=5.0
- xin/capsule: ^1.1
- xin/http: ^1.3
- xin/support: ^1.19
README
简介
CozeAPI PHP SDK 是一个用于简化与 CozeAPI 交互的工具包。它提供了以下功能:
- 认证管理:自动处理 API 认证和令牌刷新。
- 请求封装:简化 API 请求的发送过程。
- 错误处理:统一处理 API 返回的错误信息。
- 响应解析:自动解析 API 返回的数据。
安装教程
composer require xin/coze
使用说明
- 初始化 SDK
<?php
$cozeService = new \Xin\Coze\CozeService([
'app_id' => '',
'public_key_id' => '',
'private_key' => ""
]);
- 配置AccessToken缓存器
<?php
use Xin\Coze\AccessToken;
// 返回实现了 \Psr\SimpleCache\CacheInterface 的对象
AccessToken::setCacheResolver(function (){
return new Psr\Cache\SimpleCache\ArrayCache();
});
// 在 Laravel 中使用
AccessToken::setCacheResolver(function (){
return Cache::store('file');
});
使用示例
- 发送 GET 请求
<?php
try {
$result = $cozeService->httpGet('/v1/user/info', []);
catch (\Exception $e) {
echo "Error: " . $e->getMessage();
}
- 发送 POST 请求
<?php try { $result = $cozeService->httpPost('/v1/user/info', []); }catch (\Exception $e){ echo "Error: " . $e->getMessage(); }
- 使用内置服务
<?php // 创建会话 $data = $cozeService->chat()->create([ 'bot_id' => '', 'user_id' => '', 'additional_messages' => [ [ 'role' => 'user', 'type' => 'question', 'content' => '你好', ], ], 'stream' => true, ], [ 'wait' => true, ]); var_dump($data);
// 获取流式数据 foreach ($data as $line) {
if ($line === '[DONE]') { // || 'event:conversation.message.completed' === $line
break;
}
$line = json_decode($line, true);
if (!$line) {
continue;
}
if (isset($line['type']) && $line['type'] === 'answer') {
if (!isset($line['created_at'])) {
echo $line['content'];
} else {
echo "\n";
$data->close();
Printer::info($line);
}
} else {
}
}
// 阻塞获取会话消息 var_dump($cozeService->chat()->waitMessages($data['conversation_id'], $data['id']));
// 获取会话消息 var_dump($cozeService->chat()->messages($conversationId,$chatId));