@mathrunet/masamune 0.1.2 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +22 -0
- package/README.md +1 -1
- package/dist/functions/openai_chat_gpt.d.ts +1 -0
- package/dist/functions/openai_chat_gpt.js +92 -0
- package/dist/functions/openai_chat_gpt.js.map +1 -0
- package/dist/functions/send_notification.js +46 -19
- package/dist/functions/send_notification.js.map +1 -1
- package/dist/functions.d.ts +6 -0
- package/dist/functions.js +6 -0
- package/dist/functions.js.map +1 -1
- package/package.json +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
## [0.1.4](https://github.com/mathrunet/node_masamune/compare/v0.1.3...v0.1.4) (2023-03-07)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### feat
|
|
5
|
+
|
|
6
|
+
* Added Functions for ChatGPT. ([87170e6](https://github.com/mathrunet/node_masamune/commit/87170e6c1f14e0727a3656472923fc12885e8e27))
|
|
7
|
+
|
|
8
|
+
### fix
|
|
9
|
+
|
|
10
|
+
* Add success at the end. ([5611d82](https://github.com/mathrunet/node_masamune/commit/5611d82f2dac3bc0fc55caea49a26e40a6a89458))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [0.1.3](https://github.com/mathrunet/node_masamune/compare/v0.1.2...v0.1.3) (2023-02-09)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### fix
|
|
18
|
+
|
|
19
|
+
* Fixed a bug that Topic and Token could not be found. ([530a991](https://github.com/mathrunet/node_masamune/commit/530a991eeb5946d4ac82c5f9c7bc3a667605d783))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
1
23
|
## [0.1.2](https://github.com/mathrunet/node_masamune/compare/v0.1.1...v0.1.2) (2023-02-08)
|
|
2
24
|
|
|
3
25
|
|
package/README.md
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
35
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
36
|
+
};
|
|
37
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
+
const functions = __importStar(require("firebase-functions"));
|
|
39
|
+
const node_fetch_1 = __importDefault(require("node-fetch"));
|
|
40
|
+
/**
|
|
41
|
+
* The text is generated using Open AI's GPT.
|
|
42
|
+
*
|
|
43
|
+
* Open AIのChat GPTを利用して文章を生成します。
|
|
44
|
+
*
|
|
45
|
+
* @param message
|
|
46
|
+
* Specify the actual message to be passed.
|
|
47
|
+
*
|
|
48
|
+
* 実際に渡すメッセージを指定します。
|
|
49
|
+
*
|
|
50
|
+
* @param model
|
|
51
|
+
* Specifies the model to be used. Default is `gpt-3.5-turbo`.
|
|
52
|
+
*
|
|
53
|
+
* 使用するモデルを指定します。デフォルトは`gpt-3.5-turbo`。
|
|
54
|
+
*
|
|
55
|
+
* @param temperature
|
|
56
|
+
* Specify the sampling temperature (*) between 0 and 1.
|
|
57
|
+
* The lower the value, the more relevant words are likely to be selected; the higher the value, the more diverse words are likely to be selected.
|
|
58
|
+
*
|
|
59
|
+
* サンプリング温度(※)を 0〜1 の間で指定します。
|
|
60
|
+
* 値が低いほど、より関連性の高い単語が選ばれやすくなり、値が高いほど、より多様な単語が選ばれやすくなります。
|
|
61
|
+
*/
|
|
62
|
+
module.exports = (regions) => functions.region(...regions).https.onCall((query) => __awaiter(void 0, void 0, void 0, function* () {
|
|
63
|
+
var _a, _b;
|
|
64
|
+
try {
|
|
65
|
+
const apiKey = functions.config().openai.api_key;
|
|
66
|
+
const message = query.message;
|
|
67
|
+
const model = (_a = query.model) !== null && _a !== void 0 ? _a : "gpt-3.5-turbo";
|
|
68
|
+
const temperature = (_b = query.temperature) !== null && _b !== void 0 ? _b : 1;
|
|
69
|
+
if (message.length <= 0) {
|
|
70
|
+
throw new functions.https.HttpsError("invalid-argument", "No content specified in `message`.");
|
|
71
|
+
}
|
|
72
|
+
const res = yield (0, node_fetch_1.default)("https://api.openai.com/v1/chat/completions", {
|
|
73
|
+
method: "POST",
|
|
74
|
+
headers: {
|
|
75
|
+
"Content-Type": "application/json",
|
|
76
|
+
"Authorization": `Bearer ${apiKey}`,
|
|
77
|
+
},
|
|
78
|
+
body: JSON.stringify({
|
|
79
|
+
"model": model,
|
|
80
|
+
"messages": message,
|
|
81
|
+
"temperature": temperature,
|
|
82
|
+
}),
|
|
83
|
+
});
|
|
84
|
+
const data = (yield res.json());
|
|
85
|
+
return data.choices[0];
|
|
86
|
+
}
|
|
87
|
+
catch (err) {
|
|
88
|
+
console.log(err);
|
|
89
|
+
throw err;
|
|
90
|
+
}
|
|
91
|
+
}));
|
|
92
|
+
//# sourceMappingURL=openai_chat_gpt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai_chat_gpt.js","sourceRoot":"","sources":["../../src/functions/openai_chat_gpt.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8DAAgD;AAChD,4DAA+B;AAE/B;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,OAAO,GAAG,CAAC,OAAiB,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,CAC7E,CAAO,KAAK,EAAE,EAAE;;IACZ,IAAI;QACA,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;QACjD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAmC,CAAC;QAC1D,MAAM,KAAK,GAAG,MAAA,KAAK,CAAC,KAA2B,mCAAI,eAAe,CAAC;QACnE,MAAM,WAAW,GAAG,MAAA,KAAK,CAAC,WAAiC,mCAAI,CAAC,CAAC;QACjE,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE;YACrB,MAAM,IAAI,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,kBAAkB,EAAE,oCAAoC,CAAC,CAAC;SAClG;QAED,MAAM,GAAG,GAAG,MAAM,IAAA,oBAAK,EAAC,4CAA4C,EAAE;YAClE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACL,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,UAAU,MAAM,EAAE;aACtC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACjB,OAAO,EAAE,KAAK;gBACd,UAAU,EAAE,OAAO;gBACnB,aAAa,EAAE,WAAW;aAC7B,CAAC;SACL,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA2B,CAAC;QAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;KAE1B;IAAC,OAAO,GAAG,EAAE;QACV,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjB,MAAM,GAAG,CAAC;KACb;AACL,CAAC,CAAA,CACJ,CAAC"}
|
|
@@ -77,35 +77,62 @@ module.exports = (regions) => functions.region(...regions).https.onCall((query)
|
|
|
77
77
|
const data = query.data;
|
|
78
78
|
const token = query.token;
|
|
79
79
|
const topic = query.topic;
|
|
80
|
-
if (token === undefined
|
|
80
|
+
if (token === undefined && topic === undefined) {
|
|
81
81
|
throw new functions.https.HttpsError("invalid-argument", "Either [token] or [topic] must be specified.");
|
|
82
82
|
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
title: title,
|
|
86
|
-
body: body,
|
|
87
|
-
},
|
|
88
|
-
android: {
|
|
89
|
-
priority: "high",
|
|
83
|
+
if (token !== undefined) {
|
|
84
|
+
const res = yield admin.messaging().send({
|
|
90
85
|
notification: {
|
|
91
86
|
title: title,
|
|
92
87
|
body: body,
|
|
93
|
-
clickAction: "FLUTTER_NOTIFICATION_CLICK",
|
|
94
|
-
channelId: channelId,
|
|
95
88
|
},
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
89
|
+
android: {
|
|
90
|
+
priority: "high",
|
|
91
|
+
notification: {
|
|
92
|
+
title: title,
|
|
93
|
+
body: body,
|
|
94
|
+
clickAction: "FLUTTER_NOTIFICATION_CLICK",
|
|
95
|
+
channelId: channelId,
|
|
96
|
+
},
|
|
97
|
+
},
|
|
98
|
+
data: data,
|
|
99
|
+
token: token,
|
|
100
|
+
});
|
|
101
|
+
return {
|
|
102
|
+
success: true,
|
|
103
|
+
message_id: res,
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
else if (topic !== undefined) {
|
|
107
|
+
const res = yield admin.messaging().send({
|
|
108
|
+
notification: {
|
|
109
|
+
title: title,
|
|
110
|
+
body: body,
|
|
111
|
+
},
|
|
112
|
+
android: {
|
|
113
|
+
priority: "high",
|
|
114
|
+
notification: {
|
|
115
|
+
title: title,
|
|
116
|
+
body: body,
|
|
117
|
+
clickAction: "FLUTTER_NOTIFICATION_CLICK",
|
|
118
|
+
channelId: channelId,
|
|
119
|
+
},
|
|
120
|
+
},
|
|
121
|
+
data: data,
|
|
122
|
+
topic: topic,
|
|
123
|
+
});
|
|
124
|
+
return {
|
|
125
|
+
success: true,
|
|
126
|
+
message_id: res,
|
|
127
|
+
};
|
|
128
|
+
}
|
|
105
129
|
}
|
|
106
130
|
catch (err) {
|
|
107
131
|
console.log(err);
|
|
108
132
|
throw err;
|
|
109
133
|
}
|
|
134
|
+
return {
|
|
135
|
+
success: true,
|
|
136
|
+
};
|
|
110
137
|
}));
|
|
111
138
|
//# sourceMappingURL=send_notification.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send_notification.js","sourceRoot":"","sources":["../../src/functions/send_notification.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8DAAgD;AAChD,sDAAwC;AAExC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,CAAC,OAAO,GAAG,CAAC,OAAiB,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,CAC7E,CAAO,KAAK,EAAE,EAAE;IACZ,IAAI;QACA,MAAM,KAAK,GAAG,KAAK,CAAC,KAAe,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAc,CAAC;QAClC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAgC,CAAC;QACzD,MAAM,IAAI,GAAG,KAAK,CAAC,IAA6C,CAAC;QACjE,MAAM,KAAK,GAAG,KAAK,CAAC,KAA2B,CAAC;QAChD,MAAM,KAAK,GAAG,KAAK,CAAC,KAA2B,CAAC;QAChD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE;YAC5C,MAAM,IAAI,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,kBAAkB,EAAE,8CAA8C,CAAC,CAAC;SAC5G;
|
|
1
|
+
{"version":3,"file":"send_notification.js","sourceRoot":"","sources":["../../src/functions/send_notification.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8DAAgD;AAChD,sDAAwC;AAExC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,CAAC,OAAO,GAAG,CAAC,OAAiB,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,CAC7E,CAAO,KAAK,EAAE,EAAE;IACZ,IAAI;QACA,MAAM,KAAK,GAAG,KAAK,CAAC,KAAe,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAc,CAAC;QAClC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAgC,CAAC;QACzD,MAAM,IAAI,GAAG,KAAK,CAAC,IAA6C,CAAC;QACjE,MAAM,KAAK,GAAG,KAAK,CAAC,KAA2B,CAAC;QAChD,MAAM,KAAK,GAAG,KAAK,CAAC,KAA2B,CAAC;QAChD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE;YAC5C,MAAM,IAAI,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,kBAAkB,EAAE,8CAA8C,CAAC,CAAC;SAC5G;QAED,IAAI,KAAK,KAAK,SAAS,EAAE;YACrB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE,CAAC,IAAI,CACpC;gBACI,YAAY,EAAE;oBACV,KAAK,EAAE,KAAK;oBACZ,IAAI,EAAE,IAAI;iBACb;gBACD,OAAO,EAAE;oBACL,QAAQ,EAAE,MAAM;oBAChB,YAAY,EAAE;wBACV,KAAK,EAAE,KAAK;wBACZ,IAAI,EAAE,IAAI;wBACV,WAAW,EAAE,4BAA4B;wBACzC,SAAS,EAAE,SAAS;qBACvB;iBACJ;gBACD,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,KAAK;aACf,CACJ,CAAC;YACF,OAAO;gBACH,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,GAAG;aAClB,CAAC;SACL;aAAM,IAAI,KAAK,KAAK,SAAS,EAAG;YAC7B,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE,CAAC,IAAI,CACpC;gBACI,YAAY,EAAE;oBACV,KAAK,EAAE,KAAK;oBACZ,IAAI,EAAE,IAAI;iBACb;gBACD,OAAO,EAAE;oBACL,QAAQ,EAAE,MAAM;oBAChB,YAAY,EAAE;wBACV,KAAK,EAAE,KAAK;wBACZ,IAAI,EAAE,IAAI;wBACV,WAAW,EAAE,4BAA4B;wBACzC,SAAS,EAAE,SAAS;qBACvB;iBACJ;gBACD,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,KAAK;aACf,CACJ,CAAC;YACF,OAAO;gBACH,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,GAAG;aAClB,CAAC;SACL;KACJ;IAAC,OAAO,GAAG,EAAE;QACV,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjB,MAAM,GAAG,CAAC;KACb;IACD,OAAO;QACH,OAAO,EAAE,IAAI;KAChB,CAAC;AACN,CAAC,CAAA,CACJ,CAAC"}
|
package/dist/functions.d.ts
CHANGED
|
@@ -11,4 +11,10 @@ export declare const Functions: {
|
|
|
11
11
|
* PUSH通知を送信するためのFunction。
|
|
12
12
|
*/
|
|
13
13
|
readonly sendNotification: data.FunctionsData;
|
|
14
|
+
/**
|
|
15
|
+
* The text is generated using Open AI's GPT.
|
|
16
|
+
*
|
|
17
|
+
* Open AIのChat GPTを利用して文章を生成します。
|
|
18
|
+
*/
|
|
19
|
+
readonly openAIChatGPT: data.FunctionsData;
|
|
14
20
|
};
|
package/dist/functions.js
CHANGED
|
@@ -37,5 +37,11 @@ exports.Functions = {
|
|
|
37
37
|
* PUSH通知を送信するためのFunction。
|
|
38
38
|
*/
|
|
39
39
|
sendNotification: new data.FunctionsData("send_notification", require("./functions/send_notification")),
|
|
40
|
+
/**
|
|
41
|
+
* The text is generated using Open AI's GPT.
|
|
42
|
+
*
|
|
43
|
+
* Open AIのChat GPTを利用して文章を生成します。
|
|
44
|
+
*/
|
|
45
|
+
openAIChatGPT: new data.FunctionsData("openai_chat_gpt", require("./functions/openai_chat_gpt")),
|
|
40
46
|
};
|
|
41
47
|
//# sourceMappingURL=functions.js.map
|
package/dist/functions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"functions.js","sourceRoot":"","sources":["../src/functions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAA6C;AAE7C;;;;GAIG;AACU,QAAA,SAAS,GAAG;IACvB;;;;OAIG;IACH,gBAAgB,EAAE,IAAI,IAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,OAAO,CAAC,+BAA+B,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"functions.js","sourceRoot":"","sources":["../src/functions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAA6C;AAE7C;;;;GAIG;AACU,QAAA,SAAS,GAAG;IACvB;;;;OAIG;IACH,gBAAgB,EAAE,IAAI,IAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,OAAO,CAAC,+BAA+B,CAAC,CAAC;IACvG;;;;OAIG;IACH,aAAa,EAAE,IAAI,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,OAAO,CAAC,6BAA6B,CAAC,CAAC;CACxF,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mathrunet/masamune",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "Manages packages for the server portion (NodeJS) of the Masamune framework.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -31,6 +31,7 @@
|
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"firebase-admin": "^11.4.1",
|
|
33
33
|
"firebase-functions": "^4.1.1",
|
|
34
|
+
"node-fetch": "^3.3.0",
|
|
34
35
|
"typescript": "^4.9.4"
|
|
35
36
|
},
|
|
36
37
|
"devDependencies": {
|