2023-03-06 / JSN / 0 Comments / 44 次瀏覽
官方提供了 HTTP 的教學範例,其實可以直接訪問 https://platform.openai.com/docs/api-reference/introduction。自己用 PHP 寫一個 curl 當然沒問題,但就是懶了,你當然可以用 ChatGPT 幫你生產一篇,然後你做修改。但更好的方法我覺得可以使用套件。後面介紹套件的方式
註冊
先註冊一個一般的使用者:https://openai.com/blog/chatgpt,在右上角點擊 “View API Keys” 查看我們程式碼最需要的金鑰。
點擊後複製鑰匙,官方說只會顯示一次,如果搞丟了,就要產生一把新的
開始開發
我直接使用 laravel 開發,所以直接
composer require tectalic/openai
然後寫程式碼
use GuzzleHttp\Client;
use Tectalic\OpenAi\Authentication;
use Tectalic\OpenAi\Manager;
$openaiClient = Manager::build(
new Client(),
new Authentication(
"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"
)
);
$data = [
'model' => 'gpt-3.5-turbo',
'messages' => [
[
'role' => 'user',
'content' => '請問你會說中文嗎'
],
],
];
$response = $openaiClient->chatCompletions()->create(
new \Tectalic\OpenAi\Models\ChatCompletions\CreateRequest($data)
)->toArray();
// 輸出你就看到囉
dd($response['choices'][0]['message']['content']);
完成!
參考
2023-02-21 / JSN / 0 Comments / 14 次瀏覽
用指令找最快。
當你安裝的套件是有版本號,那麼可以
composer show 套件名稱 | grep 'versions'
如果是自己私有或是公司內部的 repository 而沒有公開在 packagists ,可能沒有特別壓上版本號,這時候我們要認的就是 commit 的 hash 值,可以
composer show 套件名稱 | grep 'source'
當然可以直接看檔案 composer.lock 找版本,只是要用文字搜尋,就會比較麻煩。
2023-02-20 / JSN / 0 Comments / 8 次瀏覽
我目前要在現在的主機,備份遠端的 mongo,那麼必須要在本機使用 mongodump,要安裝工具
apt-get update
apt install mongo-tools
這樣就可以下指令
mongodump --forceTableScan --host="遠端 IP" --db=你想備份的資料庫 --out="匯出的絕對路徑" --gzip
2023-02-20 / JSN / 0 Comments / 5 次瀏覽
我在 Host 主機中,想要把 Docker 中的 A Container連線到 Host 上 Docker 外的其他服務,如資料庫 MongoDB,可以直接透過 “host.docker.internal” 連線,如下圖
我打算在 A Container 透過 cli 備份 host 上的 MongoDB 資料庫,那麼就可以這麼下指令
mongodump --forceTableScan --host="host.docker.internal" --db=MyDatabase --out="/var/www/backup" --gzip
參考官方:https://docs.docker.com/desktop/networking/
2023-02-10 / JSN / 0 Comments / 2 次瀏覽
這幾天 laradock 重新安裝,跑 test 會出現
LogicException: Please make sure the PHP Redis extension is installed and enabled.
追原因應該是 php-redis 現在也要使用版本號的關係,但是 laradock 的 Dockerfile 沒更新
查找已安裝的套件
sudo dpkg -l | grep php
因此在 workspace 下指令即可
apt-get update
# 先查詢可安裝的套件是否存在
apt-cache search php7.4-redis
# 執行安裝
apt-get install php7.4-redis
檢查看是否安裝
dpkg -l | grep php
# 或
php -m
這樣就正常了