
项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-11-09 · 当前星标 ★ 5836
使用教程
⚠ 本教程由 AI 依据该项目 README 整理;原始文档不完整,部分步骤为通用流程推断,实际安装请以项目官方文档为准。
⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。
环境要求
- PHP 环境(README 节选未标注最低版本,请以仓库安装章节为准)
- Composer 依赖管理工具
- 可用的 API 密钥(示例 sk-xxxxxxxx)
- 一个已创建好的助手 ID(形如 asst_ 开头)
安装与启动步骤
-
1准备 PHP 与 Composer
确认本机已装 PHP 与 Composer,在项目根目录执行 composer --version 能输出版本号即可。
composer --version -
2安装 SDK 依赖
通过 Composer 引入 openai-php/client 包(包名取自 README 的 Packagist 徽章),具体版本约束以仓库为准。
composer require openai-php/client -
3初始化客户端
在 PHP 脚本中引入 Composer 自动加载文件,并用你的 API 密钥构造客户端实例后再调用资源方法。
<?php require __DIR__ . '/vendor/autoload.php'; // 使用你的 API 密钥初始化客户端 $client = OpenAI::client('sk-xxxxxxxx'); -
4调用 createAndRun
用一次请求创建会话线程并运行,需传入助手 ID 和至少一条用户消息,消息为 role/content 结构。
<?php $response = $client->threads()->createAndRun( [ 'assistant_id' => 'asst_gxzBkD1wkKEloYqZ410pT5pd', 'thread' => [ 'messages' => [ [ 'role' => 'user', 'content' => 'Explain deep learning to a 5 year old.', ], ], ], ], ); -
5读取响应字段
返回对象可直接读取 id、status、model、usage 等属性,也可用 toArray() 转成数组便于存储或输出。
echo $response->id; echo $response->status; print_r($response->toArray());
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
API 密钥 | 是 | 调用接口的身份凭证,初始化客户端时传入 | sk-xxxxxxxx |
assistant_id | 是 | 指定要运行的助手,需为已存在的助手 ID | asst_gxzBkD1wkKEloYqZ410pT5pd |
thread.messages[].role | 是 | 消息角色,示例中为用户侧输入 | user |
thread.messages[].content | 是 | 发送给模型的具体文本内容 | Explain deep learning to a 5 year old. |
如何确认成功
脚本运行后输出以 run_ 开头的 id,且 status 为 queued,说明请求已被接口接受。
常见问题
Q:README 节选里没有安装章节怎么办?
A:节选只含用法示例。安装应使用 Composer 引入 Packagist 上登记的 openai-php/client 包,具体版本与要求以仓库 README 安装章节为准。
Q:调用后 status 是 queued 正常吗?
A:正常。createAndRun 创建并启动运行后返回初始状态,示例中该字段即为 queued,后续需按运行 ID 再查询进度。
Q:为什么 README 提示 Assistants API 已弃用?
A:README 警告该接口将于 2026 年 8 月 26 日停止工作,并给出迁移到 Responses 的官方链接;新项目应优先采用未弃用的接口。
Q:如何把响应保存为数组?
A:调用响应对象的 toArray() 方法即可得到键值数组,示例注释说明其结构为 id 加其余字段。
注意事项
- README 节选未包含安装章节与客户端初始化代码,本教程的安装与初始化步骤依据 Packagist 包名和示例调用方式推断,请以仓库完整文档核对。
- Assistants 相关资源已被官方标记弃用并有停服日期,新项目建议使用 README 推荐的替代接口。
- 示例中的助手 ID 与密钥均为占位示例,务必替换为自己的真实值,密钥不要写入版本库。
核心亮点
- 纯 PHP 实现,无需额外运行时,可直接融入 Laravel、Symfony 等现有框架
- 覆盖对话、嵌入、图像、音频等多类接口,并支持流式输出与函数调用
- 社区维护活跃,文档与示例较完整,版本迭代跟得上官方 API 变化
不足之处
- 强依赖 OpenAI 官方接口形态,接口调整时客户端需同步升级
- 高级特性文档偏简,复杂场景仍需阅读源码排查
适用场景
- 在 PHP 后台管理系统中集成智能问答与内容生成
- 为 Laravel 应用添加语义搜索与文本嵌入能力
- 批量处理文本摘要、翻译、分类等离线任务
替代项目
openai-php/laravel、orhanerday/open-ai、theodo-group/llphant
上一篇:NextTransformer
下一篇:laravel
同类项目推荐
bottender
开源
一套代码,搞定所有聊天平台,快速构建对话机器人。
⚡️ A framework for building conversational user interfaces.
haystack
开源
搭积木式编排 LLM 应用,从原型到生产一步到位。
Open-source AI orchestration framework for building context-engineered, production-r···
VLM2Vec
开源
把视觉语言模型变成万能嵌入器,搞定多模态搜索和分类
This repo contains the code for "VLM2Vec / MMEB" [ICLR 2025], "VLM2Vec-V2 / MMEB-V2"···
langchainrb
开源
用 Ruby 快速构建 LLM 应用,像搭积木一样组合 AI 能力
Build LLM-powered applications in Ruby
griptape
开源
用 Python 模块化搭建 AI 智能体,搞定复杂工作流。
Modular Python framework for AI agents and workflows with chain-of-thought reasoning···
dapr-agents
开源
给 AI 智能体装上工作流、状态和监控
Build durable, autonomous, resilient and observable AI agents with built-in workflow···
sactive-bot
开源
一套代码,让机器人跑遍所有聊天平台
:smiling_imp: An extensible chat bot framework. sactive-bot is an evolution of the ···
portaljs
开源
用一句话描述需求,AI 自动生成数据门户并接入数据源
AI-native framework for building data portals. Scaffold a full portal from a brief a···
botkit
开源
一套代码,快速搭建跨平台聊天机器人。
Botkit is an open source developer tool for building chat bots, apps and custom inte···