内容
GPTsのactionsを使って外部ツールと連携させることが出来る。この機能を使ってスプシを連携する
テーマを入力するとタイトル案と目次構成、記事作成、アイキャッチ作成までを行うGPTsを作成
設定方法
-
ChatGPTのTOP画面のexploreをクリック
-
actionを使ってAPIを使って外部と連携させる事で外部で操作した内容をMyGPTsに持ってきて情報のやり取りが可能になる。
-
上記の手順でMyGPTsを新規に作成して以下の内容をそれぞれに入力する
7.APIを受け取るためのコードをSchemaに入力する
{
"openapi": "3.1.0",
"info": {
"title": "Get name data",
"description": "Get lastname and firstname by id",
"version": "v1.0.0"
},
"servers": [
{
"url": "https://script.google.com"
}
],
"paths": {
"/macros/s/AKfycby_GCnFVdiumK2WixXExruPSu4sUFptgZy7clJgXODx1Z1psAfng7w0jmaEcTLIGGPt/exec": {
"get": {
"description": "Get lastname and firstname by id",
"operationId": "GetNameByid",
"parameters": [
{
"name": "id",
"in": "query",
"description": "ID No.",
"required": true,
"schema": {
"type": "string"
}
}
],
"deprecated": false
}
}
},
"components": {
"schemas": {
"NameResponse": {
"type": "object",
"properties": {
"lastname": {
"type": "string"
},
"firstname": {
"type": "string"
}
}
}
}
}
}
9.App scriptをクリックして以下の内容を入力
17行目を書き換える
function doGet(e) {
// リクエストからパラメータを取得
console.log("start GPTs Custom Actions API test");
console.log("e: " + JSON.stringify(e));
var searchQuery = e.parameter.id;
console.log("e.parameter.id: " + e.parameter.id);
// 4桁の数字かどうかをチェック
if (!searchQuery || !/^\d{4}$/.test(searchQuery)) {
console.log("bad format: " + searchQuery);
return ContentService.createTextOutput(
JSON.stringify({ "error": "Invalid request. Please provide a 4-digit number." })
).setMimeType(ContentService.MimeType.JSON);
}
// スプレッドシートの準備
var sheet = SpreadsheetApp.openById('xxxxxx-xxxxxxxxxxxxxxxxxxxx').getSheetByName('シート1');
var data = sheet.getDataRange().getValues();
console.log("format OK");
// スプレッドシートを検索
for (var i = 1; i < data.length; i++) { // 2行目から開始
if (data[i][0].toString() === searchQuery) {
console.log("hit: " + i);
console.log("last: " + data[i][1]);
console.log("first: " + data[i][2]);
// 見つかった場合、JSONとして返す
return ContentService.createTextOutput(
JSON.stringify({ "lastname": data[i][1], "firstname": data[i][2] })
).setMimeType(ContentService.MimeType.JSON);
}
}
console.log("not found");
// 一致するデータが見つからない場合
return ContentService.createTextOutput(
JSON.stringify({ "error": "No data found for the provided number." })
).setMimeType(ContentService.MimeType.JSON);
}
10.以下のopenById以降のx部分を書き換える
11.スプシのURLのd/以降の部分をコピペして入力
// スプレッドシートの準備
var sheet = SpreadsheetApp.openById('xxxxxx-xxxxxxxxxxxxxxxxxxxx').getSheetByName('シート1');
var data = sheet.getDataRange().getValues();
13.歯車ボタンを押して以下のように設定してデプロイをクリック。認証画面が出てきたら認証を進める
17.GPTsに戻りschema内のpathsを探して以下のようにURLをペーストする。
18./macrosより前の部分を削除。これでshemaの設定完了
19.Description、Instructionsなどそれぞれ以下のように入力。InstructionsにはアップスクリプトのURLを入力
20.余計なものが動かないようにDALLEのみにして他のチェックを外す。ここはスプシの内容によって変更する
23.「新時代のライフスタイル:未来志向のアプローチ」というテーマの記事に対してこんなアイキャッチを作ってくれました