你就直接把 Assistant 當成你在 ChatGPT 看到的那些 GPT 玩具吧(?), 只是你可以透過 Assistant API 透過程式化來建立你的 GPT 並與你的網站功能結合。 雖然前面說了「用 Assistant API 」,但實際上其實需要以下三個類型的 API 相互結合才能生出一個 Assistant: Assistants API :設定給助手(?)的指示內容、要使用的模型等資訊。在絕大部分場合下,你通常只需要呼叫一次 Assistant 的 Create 方法一次,此後就可以把回傳的 id 記錄下來後用在其他地方。 Threads API : 建立對話串,這個對話串會與前述的 Assistant 相互結合,讓 Assistant 知道要在這個 Thread 開始監聽訊息,並針對指示做出相應的回覆。 Messages API :將使用者輸入的訊息送到 Thread Runs API :使用者送出訊息後,就要呼叫 Create Run ,讓後端知道有工作要做了 以下是其流程: 先呼叫 Assistant API 的 Create ,記得要拿到回傳中最重要的 id ,這會在接下來的步驟中使用到。如果沒什麼特殊狀況的話你可以把這個 id 持久化保存,之後就不用再重做一次這個步驟。 接著 建立一個新的 Thread ,並取回其中回傳的 id。這個步驟你可能會因應不同的使用的而需要頻繁產生。 以上兩個步驟完成後,接著就可以: 建立一條新的 Message ,並將使用者輸入的內容發送至剛才建立的 Thread 中(透過之前建立 Thread 成功所得到的 id) 接著 呼叫 Run API 的 Create ,將建立 Assistant 與 Thread 成功時所取得的 id 帶入後,就會開始根據使用者輸入的內容開始做分析處理。若是忘記呼叫這個 API 你會發現怎麼內容輸入了但卻沒有任何回應。 然後就可以定期去 呼叫取得 Run 資訊的 API ,看看是不是已經處理完畢。只有在 status 是 completed 時,才代表執行完畢。 執行完畢後,就可以 透過 Message API 取得訊息 。 看吧,很簡單吧? ㄍㄋㄋ,官網沒寫詳細用法只有提供 endpoint 資訊。害我先按照自己的想法寫出一個雛形發覺怎麼跑不起來一邊確認一邊問 ChatGPT...
留言
想請問一下
我照著您的程式碼 複製過去
想試著執行看看
也有申請KEY 跟啟動
但是網頁都是一片白 沒東西...
是有什麼步驟沒有做到嗎
麻煩您教我了
謝謝
如果還是看不到錯誤的話,再來繼續看看吧~
終於出現畫面了
原來是我自己犯了一個非常蠢的錯
但是 現在又有個問題要請教
就是按下分析後
他顯示查詢中 經過5分鐘後 還在查
10分鐘過去 還在查...
我有辦法知道他是真的在查詢嗎
或是早已經停止?
因為我尚未有成功出現結果過...
總之 感謝再感謝...
可能是程式碼哪裡出問題了,這就要再觀察看看了(可能是再取網頁內容花太多時間、或者是送資料給Yahoo!分析花太久了,總之都很有可能啦)。
當然也不排除我當初寫的太爛,
有我沒意料的情形發生也不一定(汗)
我另外想請問
為什麼每次進入我試做的網頁
他會變成亂碼 都要調整編碼後才OK
不知道錯誤跟這個有關係嗎
http://wirl.er-webs.com/yahoo.php
這是我照著您的程式碼試做的
請您看看 不知能否看出些端倪?
感恩
我的程式碼是用UTF-8編碼的,
所以你在存檔時要用UTF-8而非ASCII(Big5)存檔才行!
感謝你的分享
我把你的code複製貼上
我加入error_reporting(E_ALL)執行後
出現了以下兩則錯誤訊息
Notice: Undefined index: action in C:\AppServ\www\test\untitled.php on line 27
Notice: Undefined index: action in C:\AppServ\www\test\untitled.php on line 67
似乎是action的地方出問題了
請問是什麼原因呢?
感謝你
我剛剛試一下,應該是因為我當初寫的時候沒有判斷是否有$_GET['action']這個變數(默)
所以請你把第27行改成:「if (isset($_POST) && isset($_GET['action']) && strtolower($_GET['action']) == 'do_ajax') {」
和第67行改成「if (isset($_POST) && isset($_GET['action']) && strtolower($_GET['action']) == 'do_post') {」
這樣應該就沒問題了。
我把您的CODE放到我的電腦上跑
但是按下「分析吧!」之後卻沒有反應
http://114.32.63.213/test/untitled.php
不知道是哪裡出了問題
是否是我跟YAHOO那邊的溝通有問題
還是我要改什麼設定
我是用APACHE
不好意思我這兩天才開始使用PHP
因為專題的需要老師要我們幾天內學會用php去call斷章取義api
麻煩您了
謝謝
我想你照貼以後,忘了最重要的一件事了:沒有申請Yahoo! AppIDXD 請照官方網站說明申請一個API KEY在貼到程式的指定位置