@taskmagic/apps-hugging-face 0.0.1
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/README.md +3 -0
- package/package.json +47 -0
- package/src/index.d.ts +1 -0
- package/src/index.js +64 -0
- package/src/index.js.map +1 -0
- package/src/lib/actions/chat-completion.d.ts +18 -0
- package/src/lib/actions/chat-completion.js +537 -0
- package/src/lib/actions/chat-completion.js.map +1 -0
- package/src/lib/actions/create-image.d.ts +14 -0
- package/src/lib/actions/create-image.js +423 -0
- package/src/lib/actions/create-image.js.map +1 -0
- package/src/lib/actions/document-question-answering.d.ts +11 -0
- package/src/lib/actions/document-question-answering.js +140 -0
- package/src/lib/actions/document-question-answering.js.map +1 -0
- package/src/lib/actions/image-classification.d.ts +13 -0
- package/src/lib/actions/image-classification.js +592 -0
- package/src/lib/actions/image-classification.js.map +1 -0
- package/src/lib/actions/language-translation.d.ts +11 -0
- package/src/lib/actions/language-translation.js +222 -0
- package/src/lib/actions/language-translation.js.map +1 -0
- package/src/lib/actions/object-detection.d.ts +9 -0
- package/src/lib/actions/object-detection.js +464 -0
- package/src/lib/actions/object-detection.js.map +1 -0
- package/src/lib/actions/text-classification.d.ts +12 -0
- package/src/lib/actions/text-classification.js +344 -0
- package/src/lib/actions/text-classification.js.map +1 -0
- package/src/lib/actions/text-summarization.d.ts +12 -0
- package/src/lib/actions/text-summarization.js +420 -0
- package/src/lib/actions/text-summarization.js.map +1 -0
- package/src/lib/auth.d.ts +1 -0
- package/src/lib/auth.js +10 -0
- package/src/lib/auth.js.map +1 -0
- package/src/lib/common/index.d.ts +36 -0
- package/src/lib/common/index.js +78 -0
- package/src/lib/common/index.js.map +1 -0
|
@@ -0,0 +1,420 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.textSummarization = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const pieces_framework_1 = require("@taskmagic/pieces-framework");
|
|
6
|
+
const pieces_common_1 = require("@taskmagic/pieces-common");
|
|
7
|
+
const auth_1 = require("../auth");
|
|
8
|
+
const common_1 = require("../common");
|
|
9
|
+
exports.textSummarization = (0, pieces_framework_1.createAction)({
|
|
10
|
+
name: 'text_summarization',
|
|
11
|
+
auth: auth_1.huggingFaceAuth,
|
|
12
|
+
displayName: 'Text Summarization',
|
|
13
|
+
description: 'Generate abstractive summaries of long text using Hugging Face models - optimized for business content',
|
|
14
|
+
props: {
|
|
15
|
+
contentType: pieces_framework_1.Property.StaticDropdown({
|
|
16
|
+
displayName: 'Content Type',
|
|
17
|
+
description: 'What type of content are you summarizing?',
|
|
18
|
+
required: true,
|
|
19
|
+
options: {
|
|
20
|
+
disabled: false,
|
|
21
|
+
options: [
|
|
22
|
+
{
|
|
23
|
+
label: '📰 News Articles & Blog Posts',
|
|
24
|
+
value: 'news',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
label: '📧 Emails & Support Tickets',
|
|
28
|
+
value: 'email',
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
label: '🎯 Meetings & Conversations',
|
|
32
|
+
value: 'meeting',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
label: '📚 General Text & Documents',
|
|
36
|
+
value: 'general',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
label: '🏥 Medical & Scientific',
|
|
40
|
+
value: 'medical',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
label: '🌍 Multilingual Content',
|
|
44
|
+
value: 'multilingual',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
label: '🔍 Search All Models',
|
|
48
|
+
value: 'search',
|
|
49
|
+
},
|
|
50
|
+
],
|
|
51
|
+
},
|
|
52
|
+
defaultValue: 'news',
|
|
53
|
+
}),
|
|
54
|
+
model: pieces_framework_1.Property.Dropdown({
|
|
55
|
+
displayName: 'Summarization Model',
|
|
56
|
+
description: 'Select the best model for your content type',
|
|
57
|
+
required: true,
|
|
58
|
+
refreshers: ['contentType'],
|
|
59
|
+
options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth, contentType }) {
|
|
60
|
+
// Define model options based on content type
|
|
61
|
+
const getModelsByType = (type) => {
|
|
62
|
+
switch (type) {
|
|
63
|
+
case 'news':
|
|
64
|
+
return [
|
|
65
|
+
{
|
|
66
|
+
label: '🔥 Facebook BART-CNN (4.5M downloads) - News optimized',
|
|
67
|
+
value: 'facebook/bart-large-cnn',
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
label: '⚡ DistilBART-CNN (2M downloads) - Faster',
|
|
71
|
+
value: 'sshleifer/distilbart-cnn-12-6',
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
label: '📝 Google Pegasus-XSum (118K downloads) - Abstractive',
|
|
75
|
+
value: 'google/pegasus-xsum',
|
|
76
|
+
},
|
|
77
|
+
];
|
|
78
|
+
case 'email':
|
|
79
|
+
return [
|
|
80
|
+
{
|
|
81
|
+
label: '🔥 Facebook BART-CNN (4.5M downloads) - Best overall',
|
|
82
|
+
value: 'facebook/bart-large-cnn',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
label: '📧 Falconsai Text Summary (30K downloads) - General text',
|
|
86
|
+
value: 'Falconsai/text_summarization',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
label: '⚡ Google T5-Small (2.7M downloads) - Fast & versatile',
|
|
90
|
+
value: 'google-t5/t5-small',
|
|
91
|
+
},
|
|
92
|
+
];
|
|
93
|
+
case 'meeting':
|
|
94
|
+
return [
|
|
95
|
+
{
|
|
96
|
+
label: '🎯 Meeting Summary (29K downloads) - Meeting optimized',
|
|
97
|
+
value: 'knkarthick/MEETING_SUMMARY',
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
label: '💬 BART SAMSum (104K downloads) - Conversation focused',
|
|
101
|
+
value: 'philschmid/bart-large-cnn-samsum',
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
label: '🔥 Facebook BART-CNN (4.5M downloads) - Reliable',
|
|
105
|
+
value: 'facebook/bart-large-cnn',
|
|
106
|
+
},
|
|
107
|
+
];
|
|
108
|
+
case 'general':
|
|
109
|
+
return [
|
|
110
|
+
{
|
|
111
|
+
label: '🔥 Google T5-Base (1.7M downloads) - High quality',
|
|
112
|
+
value: 'google-t5/t5-base',
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
label: '⚡ Google T5-Small (2.7M downloads) - Fast',
|
|
116
|
+
value: 'google-t5/t5-small',
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
label: '🎯 Google T5-Large (327K downloads) - Best quality',
|
|
120
|
+
value: 'google-t5/t5-large',
|
|
121
|
+
},
|
|
122
|
+
];
|
|
123
|
+
case 'medical':
|
|
124
|
+
return [
|
|
125
|
+
{
|
|
126
|
+
label: '🏥 Medical Summarization (45K downloads) - Medical optimized',
|
|
127
|
+
value: 'Falconsai/medical_summarization',
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
label: '📚 Google T5-Base (1.7M downloads) - General purpose',
|
|
131
|
+
value: 'google-t5/t5-base',
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
label: '🔥 Facebook BART-CNN (4.5M downloads) - Reliable',
|
|
135
|
+
value: 'facebook/bart-large-cnn',
|
|
136
|
+
},
|
|
137
|
+
];
|
|
138
|
+
case 'multilingual':
|
|
139
|
+
return [
|
|
140
|
+
{
|
|
141
|
+
label: '🌍 mT5 Multilingual (37K downloads) - 44 languages',
|
|
142
|
+
value: 'csebuetnlp/mT5_multilingual_XLSum',
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
label: '⚡ Google T5-Small (2.7M downloads) - Multilingual capable',
|
|
146
|
+
value: 'google-t5/t5-small',
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
label: '🎯 Google T5-Base (1.7M downloads) - Better quality',
|
|
150
|
+
value: 'google-t5/t5-base',
|
|
151
|
+
},
|
|
152
|
+
];
|
|
153
|
+
default:
|
|
154
|
+
return [
|
|
155
|
+
{
|
|
156
|
+
label: '🔥 Facebook BART-CNN (4.5M downloads)',
|
|
157
|
+
value: 'facebook/bart-large-cnn',
|
|
158
|
+
},
|
|
159
|
+
];
|
|
160
|
+
}
|
|
161
|
+
};
|
|
162
|
+
// Return content-specific models for non-search types
|
|
163
|
+
if (contentType !== 'search') {
|
|
164
|
+
return {
|
|
165
|
+
disabled: false,
|
|
166
|
+
options: getModelsByType(contentType || 'news'),
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
// Handle search mode - load all summarization models
|
|
170
|
+
const popularModels = [
|
|
171
|
+
{
|
|
172
|
+
label: '🔥 Facebook BART-CNN (4.5M downloads)',
|
|
173
|
+
value: 'facebook/bart-large-cnn',
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
label: '⚡ DistilBART-CNN (2M downloads)',
|
|
177
|
+
value: 'sshleifer/distilbart-cnn-12-6',
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
label: '🎯 Google T5-Base (1.7M downloads)',
|
|
181
|
+
value: 'google-t5/t5-base',
|
|
182
|
+
},
|
|
183
|
+
];
|
|
184
|
+
if (!auth) {
|
|
185
|
+
return {
|
|
186
|
+
disabled: false,
|
|
187
|
+
options: popularModels,
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
try {
|
|
191
|
+
const response = yield pieces_common_1.httpClient.sendRequest({
|
|
192
|
+
method: pieces_common_1.HttpMethod.GET,
|
|
193
|
+
url: 'https://huggingface.co/api/models',
|
|
194
|
+
queryParams: {
|
|
195
|
+
filter: 'summarization',
|
|
196
|
+
sort: 'downloads',
|
|
197
|
+
direction: '-1',
|
|
198
|
+
limit: '100',
|
|
199
|
+
},
|
|
200
|
+
});
|
|
201
|
+
const models = response.body;
|
|
202
|
+
const summarizationModels = models
|
|
203
|
+
.filter((model) => model.pipeline_tag === 'summarization')
|
|
204
|
+
.map((model) => {
|
|
205
|
+
var _a;
|
|
206
|
+
return ({
|
|
207
|
+
label: `${model.id} (${((_a = model.downloads) === null || _a === void 0 ? void 0 : _a.toLocaleString()) || 0} downloads)`,
|
|
208
|
+
value: model.id,
|
|
209
|
+
});
|
|
210
|
+
})
|
|
211
|
+
.slice(0, 50);
|
|
212
|
+
const allOptions = [
|
|
213
|
+
...popularModels,
|
|
214
|
+
...summarizationModels.filter((model) => !popularModels.some((popular) => popular.value === model.value)),
|
|
215
|
+
];
|
|
216
|
+
return {
|
|
217
|
+
disabled: false,
|
|
218
|
+
options: allOptions,
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
catch (error) {
|
|
222
|
+
return {
|
|
223
|
+
disabled: false,
|
|
224
|
+
options: popularModels,
|
|
225
|
+
};
|
|
226
|
+
}
|
|
227
|
+
}),
|
|
228
|
+
defaultValue: 'facebook/bart-large-cnn',
|
|
229
|
+
}),
|
|
230
|
+
text: pieces_framework_1.Property.LongText({
|
|
231
|
+
displayName: 'Text to Summarize',
|
|
232
|
+
description: 'The long text content you want to summarize (most models work best with 512-1024 tokens)',
|
|
233
|
+
required: true,
|
|
234
|
+
}),
|
|
235
|
+
summaryLength: pieces_framework_1.Property.StaticDropdown({
|
|
236
|
+
displayName: 'Summary Length',
|
|
237
|
+
description: 'How long should the summary be?',
|
|
238
|
+
required: false,
|
|
239
|
+
options: {
|
|
240
|
+
disabled: false,
|
|
241
|
+
options: [
|
|
242
|
+
{ label: '📝 Brief (30-80 words)', value: 'brief' },
|
|
243
|
+
{ label: '📄 Medium (80-150 words)', value: 'medium' },
|
|
244
|
+
{ label: '📚 Detailed (150-300 words)', value: 'detailed' },
|
|
245
|
+
{ label: '⚙️ Custom Length', value: 'custom' },
|
|
246
|
+
],
|
|
247
|
+
},
|
|
248
|
+
defaultValue: 'medium',
|
|
249
|
+
}),
|
|
250
|
+
customMinLength: pieces_framework_1.Property.Number({
|
|
251
|
+
displayName: 'Custom Min Length',
|
|
252
|
+
description: 'Minimum number of tokens for the summary',
|
|
253
|
+
required: false,
|
|
254
|
+
}),
|
|
255
|
+
customMaxLength: pieces_framework_1.Property.Number({
|
|
256
|
+
displayName: 'Custom Max Length',
|
|
257
|
+
description: 'Maximum number of tokens for the summary',
|
|
258
|
+
required: false,
|
|
259
|
+
}),
|
|
260
|
+
cleanUpSpaces: pieces_framework_1.Property.Checkbox({
|
|
261
|
+
displayName: 'Clean Up Extra Spaces',
|
|
262
|
+
description: 'Remove extra spaces and clean up formatting',
|
|
263
|
+
required: false,
|
|
264
|
+
defaultValue: true,
|
|
265
|
+
}),
|
|
266
|
+
truncationStrategy: pieces_framework_1.Property.StaticDropdown({
|
|
267
|
+
displayName: 'Truncation Strategy',
|
|
268
|
+
description: 'How to handle text that exceeds model limits',
|
|
269
|
+
required: false,
|
|
270
|
+
options: {
|
|
271
|
+
disabled: false,
|
|
272
|
+
options: [
|
|
273
|
+
{ label: 'Do Not Truncate', value: 'do_not_truncate' },
|
|
274
|
+
{ label: 'Longest First', value: 'longest_first' },
|
|
275
|
+
{ label: 'Only First', value: 'only_first' },
|
|
276
|
+
{ label: 'Only Second', value: 'only_second' },
|
|
277
|
+
],
|
|
278
|
+
},
|
|
279
|
+
defaultValue: 'longest_first',
|
|
280
|
+
}),
|
|
281
|
+
useCache: pieces_framework_1.Property.Checkbox({
|
|
282
|
+
displayName: 'Use Cache',
|
|
283
|
+
description: 'Use cached results for faster responses',
|
|
284
|
+
required: false,
|
|
285
|
+
defaultValue: true,
|
|
286
|
+
}),
|
|
287
|
+
waitForModel: pieces_framework_1.Property.Checkbox({
|
|
288
|
+
displayName: 'Wait for Model',
|
|
289
|
+
description: 'Wait for model to load if not immediately available',
|
|
290
|
+
required: false,
|
|
291
|
+
defaultValue: false,
|
|
292
|
+
}),
|
|
293
|
+
},
|
|
294
|
+
run(context) {
|
|
295
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
296
|
+
const { contentType, model, text, summaryLength, customMinLength, customMaxLength, cleanUpSpaces, truncationStrategy, useCache, waitForModel, } = context.propsValue;
|
|
297
|
+
// Calculate appropriate summary lengths based on selection
|
|
298
|
+
let minLength;
|
|
299
|
+
let maxLength;
|
|
300
|
+
switch (summaryLength) {
|
|
301
|
+
case 'brief':
|
|
302
|
+
minLength = 30;
|
|
303
|
+
maxLength = 80;
|
|
304
|
+
break;
|
|
305
|
+
case 'medium':
|
|
306
|
+
minLength = 80;
|
|
307
|
+
maxLength = 150;
|
|
308
|
+
break;
|
|
309
|
+
case 'detailed':
|
|
310
|
+
minLength = 150;
|
|
311
|
+
maxLength = 300;
|
|
312
|
+
break;
|
|
313
|
+
case 'custom':
|
|
314
|
+
minLength = customMinLength || 50;
|
|
315
|
+
maxLength = customMaxLength || 150;
|
|
316
|
+
break;
|
|
317
|
+
default:
|
|
318
|
+
minLength = 80;
|
|
319
|
+
maxLength = 150;
|
|
320
|
+
}
|
|
321
|
+
// Build parameters object
|
|
322
|
+
const parameters = {};
|
|
323
|
+
if (cleanUpSpaces !== undefined) {
|
|
324
|
+
parameters.clean_up_tokenization_spaces = cleanUpSpaces;
|
|
325
|
+
}
|
|
326
|
+
if (truncationStrategy &&
|
|
327
|
+
(truncationStrategy === 'do_not_truncate' ||
|
|
328
|
+
truncationStrategy === 'longest_first' ||
|
|
329
|
+
truncationStrategy === 'only_first' ||
|
|
330
|
+
truncationStrategy === 'only_second')) {
|
|
331
|
+
parameters.truncation = truncationStrategy;
|
|
332
|
+
}
|
|
333
|
+
// Add generation parameters
|
|
334
|
+
parameters.generate_parameters = {
|
|
335
|
+
min_length: minLength,
|
|
336
|
+
max_length: maxLength,
|
|
337
|
+
do_sample: false, // Use greedy decoding for consistent summaries
|
|
338
|
+
temperature: 0.7, // Slight randomness for more natural summaries
|
|
339
|
+
};
|
|
340
|
+
const body = {
|
|
341
|
+
inputs: text,
|
|
342
|
+
parameters: parameters,
|
|
343
|
+
options: {
|
|
344
|
+
use_cache: useCache !== null && useCache !== void 0 ? useCache : true,
|
|
345
|
+
wait_for_model: waitForModel !== null && waitForModel !== void 0 ? waitForModel : false,
|
|
346
|
+
},
|
|
347
|
+
};
|
|
348
|
+
const rawResult = yield (0, common_1.callPipelineTask)({
|
|
349
|
+
auth: context.auth,
|
|
350
|
+
model: model,
|
|
351
|
+
body,
|
|
352
|
+
});
|
|
353
|
+
const summarizationResult = Array.isArray(rawResult)
|
|
354
|
+
? rawResult[0]
|
|
355
|
+
: rawResult;
|
|
356
|
+
// Calculate text statistics
|
|
357
|
+
const originalLength = text.length;
|
|
358
|
+
const originalWords = text.trim().split(/\s+/).length;
|
|
359
|
+
const summaryText = summarizationResult.summary_text;
|
|
360
|
+
const summaryWords = summaryText.trim().split(/\s+/).length;
|
|
361
|
+
const compressionRatio = (((originalWords - summaryWords) / originalWords) *
|
|
362
|
+
100).toFixed(1);
|
|
363
|
+
return {
|
|
364
|
+
summary: summaryText,
|
|
365
|
+
originalText: text,
|
|
366
|
+
statistics: {
|
|
367
|
+
originalLength: originalLength,
|
|
368
|
+
originalWords: originalWords,
|
|
369
|
+
summaryLength: summaryText.length,
|
|
370
|
+
summaryWords: summaryWords,
|
|
371
|
+
compressionRatio: `${compressionRatio}%`,
|
|
372
|
+
lengthCategory: summaryLength,
|
|
373
|
+
},
|
|
374
|
+
model: model,
|
|
375
|
+
contentType: contentType,
|
|
376
|
+
businessInsights: {
|
|
377
|
+
readingTimeSaved: `${Math.max(1, Math.round((originalWords - summaryWords) / 200))} minutes`, // Assume 200 words per minute
|
|
378
|
+
useCase: getSuggestedUseCase(contentType),
|
|
379
|
+
qualityTips: getQualityTips(originalWords, summaryWords),
|
|
380
|
+
},
|
|
381
|
+
rawResult: rawResult,
|
|
382
|
+
};
|
|
383
|
+
});
|
|
384
|
+
},
|
|
385
|
+
});
|
|
386
|
+
// Helper function to suggest business use cases
|
|
387
|
+
function getSuggestedUseCase(contentType) {
|
|
388
|
+
const useCases = {
|
|
389
|
+
news: 'Perfect for news briefings, blog post previews, and content curation',
|
|
390
|
+
email: 'Ideal for customer support dashboards and email triage systems',
|
|
391
|
+
meeting: 'Great for meeting minutes, call summaries, and action item extraction',
|
|
392
|
+
general: 'Suitable for document summaries and knowledge base creation',
|
|
393
|
+
medical: 'Designed for medical reports and research paper abstracts',
|
|
394
|
+
multilingual: 'Perfect for global content management and translation workflows',
|
|
395
|
+
search: 'Custom model selection for specialized summarization needs',
|
|
396
|
+
};
|
|
397
|
+
return (useCases[contentType] ||
|
|
398
|
+
'General purpose text summarization');
|
|
399
|
+
}
|
|
400
|
+
// Helper function to provide quality tips
|
|
401
|
+
function getQualityTips(originalWords, summaryWords) {
|
|
402
|
+
const tips = [];
|
|
403
|
+
if (originalWords < 100) {
|
|
404
|
+
tips.push('⚠️ Text is quite short - summaries work best with 200+ words');
|
|
405
|
+
}
|
|
406
|
+
if (originalWords > 2000) {
|
|
407
|
+
tips.push('📝 Very long text - consider breaking into sections for better results');
|
|
408
|
+
}
|
|
409
|
+
if (summaryWords / originalWords > 0.7) {
|
|
410
|
+
tips.push('💡 Summary is quite long - try Brief mode for more concise results');
|
|
411
|
+
}
|
|
412
|
+
if (summaryWords / originalWords < 0.1) {
|
|
413
|
+
tips.push('🔍 Very aggressive summarization - try Medium or Detailed for more context');
|
|
414
|
+
}
|
|
415
|
+
if (tips.length === 0) {
|
|
416
|
+
tips.push('✅ Good summarization ratio achieved');
|
|
417
|
+
}
|
|
418
|
+
return tips;
|
|
419
|
+
}
|
|
420
|
+
//# sourceMappingURL=text-summarization.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text-summarization.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/hugging-face/src/lib/actions/text-summarization.ts"],"names":[],"mappings":";;;;AAAA,kEAAqE;AACrE,4DAAkE;AAClE,kCAA0C;AAC1C,sCAA6C;AAIhC,QAAA,iBAAiB,GAAG,IAAA,+BAAY,EAAC;IAC5C,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE,sBAAe;IACrB,WAAW,EAAE,oBAAoB;IACjC,WAAW,EACT,wGAAwG;IAC1G,KAAK,EAAE;QACL,WAAW,EAAE,2BAAQ,CAAC,cAAc,CAAC;YACnC,WAAW,EAAE,cAAc;YAC3B,WAAW,EAAE,2CAA2C;YACxD,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE;oBACP;wBACE,KAAK,EAAE,+BAA+B;wBACtC,KAAK,EAAE,MAAM;qBACd;oBACD;wBACE,KAAK,EAAE,6BAA6B;wBACpC,KAAK,EAAE,OAAO;qBACf;oBACD;wBACE,KAAK,EAAE,6BAA6B;wBACpC,KAAK,EAAE,SAAS;qBACjB;oBACD;wBACE,KAAK,EAAE,6BAA6B;wBACpC,KAAK,EAAE,SAAS;qBACjB;oBACD;wBACE,KAAK,EAAE,yBAAyB;wBAChC,KAAK,EAAE,SAAS;qBACjB;oBACD;wBACE,KAAK,EAAE,yBAAyB;wBAChC,KAAK,EAAE,cAAc;qBACtB;oBACD;wBACE,KAAK,EAAE,sBAAsB;wBAC7B,KAAK,EAAE,QAAQ;qBAChB;iBACF;aACF;YACD,YAAY,EAAE,MAAM;SACrB,CAAC;QACF,KAAK,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YACvB,WAAW,EAAE,qBAAqB;YAClC,WAAW,EAAE,6CAA6C;YAC1D,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,CAAC,aAAa,CAAC;YAC3B,OAAO,EAAE,KAA8B,EAAE,oDAAzB,EAAE,IAAI,EAAE,WAAW,EAAE;gBACnC,6CAA6C;gBAC7C,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,EAAE;oBACvC,QAAQ,IAAI,EAAE,CAAC;wBACb,KAAK,MAAM;4BACT,OAAO;gCACL;oCACE,KAAK,EACH,wDAAwD;oCAC1D,KAAK,EAAE,yBAAyB;iCACjC;gCACD;oCACE,KAAK,EAAE,0CAA0C;oCACjD,KAAK,EAAE,+BAA+B;iCACvC;gCACD;oCACE,KAAK,EACH,uDAAuD;oCACzD,KAAK,EAAE,qBAAqB;iCAC7B;6BACF,CAAC;wBACJ,KAAK,OAAO;4BACV,OAAO;gCACL;oCACE,KAAK,EAAE,sDAAsD;oCAC7D,KAAK,EAAE,yBAAyB;iCACjC;gCACD;oCACE,KAAK,EACH,0DAA0D;oCAC5D,KAAK,EAAE,8BAA8B;iCACtC;gCACD;oCACE,KAAK,EACH,uDAAuD;oCACzD,KAAK,EAAE,oBAAoB;iCAC5B;6BACF,CAAC;wBACJ,KAAK,SAAS;4BACZ,OAAO;gCACL;oCACE,KAAK,EACH,wDAAwD;oCAC1D,KAAK,EAAE,4BAA4B;iCACpC;gCACD;oCACE,KAAK,EACH,wDAAwD;oCAC1D,KAAK,EAAE,kCAAkC;iCAC1C;gCACD;oCACE,KAAK,EAAE,kDAAkD;oCACzD,KAAK,EAAE,yBAAyB;iCACjC;6BACF,CAAC;wBACJ,KAAK,SAAS;4BACZ,OAAO;gCACL;oCACE,KAAK,EAAE,mDAAmD;oCAC1D,KAAK,EAAE,mBAAmB;iCAC3B;gCACD;oCACE,KAAK,EAAE,2CAA2C;oCAClD,KAAK,EAAE,oBAAoB;iCAC5B;gCACD;oCACE,KAAK,EAAE,oDAAoD;oCAC3D,KAAK,EAAE,oBAAoB;iCAC5B;6BACF,CAAC;wBACJ,KAAK,SAAS;4BACZ,OAAO;gCACL;oCACE,KAAK,EACH,8DAA8D;oCAChE,KAAK,EAAE,iCAAiC;iCACzC;gCACD;oCACE,KAAK,EAAE,sDAAsD;oCAC7D,KAAK,EAAE,mBAAmB;iCAC3B;gCACD;oCACE,KAAK,EAAE,kDAAkD;oCACzD,KAAK,EAAE,yBAAyB;iCACjC;6BACF,CAAC;wBACJ,KAAK,cAAc;4BACjB,OAAO;gCACL;oCACE,KAAK,EAAE,oDAAoD;oCAC3D,KAAK,EAAE,mCAAmC;iCAC3C;gCACD;oCACE,KAAK,EACH,2DAA2D;oCAC7D,KAAK,EAAE,oBAAoB;iCAC5B;gCACD;oCACE,KAAK,EAAE,qDAAqD;oCAC5D,KAAK,EAAE,mBAAmB;iCAC3B;6BACF,CAAC;wBACJ;4BACE,OAAO;gCACL;oCACE,KAAK,EAAE,uCAAuC;oCAC9C,KAAK,EAAE,yBAAyB;iCACjC;6BACF,CAAC;oBACN,CAAC;gBACH,CAAC,CAAC;gBAEF,sDAAsD;gBACtD,IAAI,WAAW,KAAK,QAAQ,EAAE,CAAC;oBAC7B,OAAO;wBACL,QAAQ,EAAE,KAAK;wBACf,OAAO,EAAE,eAAe,CAAE,WAAsB,IAAI,MAAM,CAAC;qBAC5D,CAAC;gBACJ,CAAC;gBAED,qDAAqD;gBACrD,MAAM,aAAa,GAAG;oBACpB;wBACE,KAAK,EAAE,uCAAuC;wBAC9C,KAAK,EAAE,yBAAyB;qBACjC;oBACD;wBACE,KAAK,EAAE,iCAAiC;wBACxC,KAAK,EAAE,+BAA+B;qBACvC;oBACD;wBACE,KAAK,EAAE,oCAAoC;wBAC3C,KAAK,EAAE,mBAAmB;qBAC3B;iBACF,CAAC;gBAEF,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,OAAO;wBACL,QAAQ,EAAE,KAAK;wBACf,OAAO,EAAE,aAAa;qBACvB,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;wBAC5C,MAAM,EAAE,0BAAU,CAAC,GAAG;wBACtB,GAAG,EAAE,mCAAmC;wBACxC,WAAW,EAAE;4BACX,MAAM,EAAE,eAAe;4BACvB,IAAI,EAAE,WAAW;4BACjB,SAAS,EAAE,IAAI;4BACf,KAAK,EAAE,KAAK;yBACb;qBACF,CAAC,CAAC;oBAEH,MAAM,MAAM,GAAG,QAAQ,CAAC,IAItB,CAAC;oBAEH,MAAM,mBAAmB,GAAG,MAAM;yBAC/B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,KAAK,eAAe,CAAC;yBACzD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;;wBAAC,OAAA,CAAC;4BACf,KAAK,EAAE,GAAG,KAAK,CAAC,EAAE,KAChB,CAAA,MAAA,KAAK,CAAC,SAAS,0CAAE,cAAc,EAAE,KAAI,CACvC,aAAa;4BACb,KAAK,EAAE,KAAK,CAAC,EAAE;yBAChB,CAAC,CAAA;qBAAA,CAAC;yBACF,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAEhB,MAAM,UAAU,GAAG;wBACjB,GAAG,aAAa;wBAChB,GAAG,mBAAmB,CAAC,MAAM,CAC3B,CAAC,KAAK,EAAE,EAAE,CACR,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,CAClE;qBACF,CAAC;oBAEF,OAAO;wBACL,QAAQ,EAAE,KAAK;wBACf,OAAO,EAAE,UAAU;qBACpB,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO;wBACL,QAAQ,EAAE,KAAK;wBACf,OAAO,EAAE,aAAa;qBACvB,CAAC;gBACJ,CAAC;YACH,CAAC,CAAA;YACD,YAAY,EAAE,yBAAyB;SACxC,CAAC;QACF,IAAI,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YACtB,WAAW,EAAE,mBAAmB;YAChC,WAAW,EACT,0FAA0F;YAC5F,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,aAAa,EAAE,2BAAQ,CAAC,cAAc,CAAC;YACrC,WAAW,EAAE,gBAAgB;YAC7B,WAAW,EAAE,iCAAiC;YAC9C,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE;gBACP,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,wBAAwB,EAAE,KAAK,EAAE,OAAO,EAAE;oBACnD,EAAE,KAAK,EAAE,0BAA0B,EAAE,KAAK,EAAE,QAAQ,EAAE;oBACtD,EAAE,KAAK,EAAE,6BAA6B,EAAE,KAAK,EAAE,UAAU,EAAE;oBAC3D,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,QAAQ,EAAE;iBAC/C;aACF;YACD,YAAY,EAAE,QAAQ;SACvB,CAAC;QACF,eAAe,EAAE,2BAAQ,CAAC,MAAM,CAAC;YAC/B,WAAW,EAAE,mBAAmB;YAChC,WAAW,EAAE,0CAA0C;YACvD,QAAQ,EAAE,KAAK;SAChB,CAAC;QACF,eAAe,EAAE,2BAAQ,CAAC,MAAM,CAAC;YAC/B,WAAW,EAAE,mBAAmB;YAChC,WAAW,EAAE,0CAA0C;YACvD,QAAQ,EAAE,KAAK;SAChB,CAAC;QACF,aAAa,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YAC/B,WAAW,EAAE,uBAAuB;YACpC,WAAW,EAAE,6CAA6C;YAC1D,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,IAAI;SACnB,CAAC;QACF,kBAAkB,EAAE,2BAAQ,CAAC,cAAc,CAAC;YAC1C,WAAW,EAAE,qBAAqB;YAClC,WAAW,EAAE,8CAA8C;YAC3D,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE;gBACP,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,EAAE;oBACtD,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,eAAe,EAAE;oBAClD,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;oBAC5C,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;iBAC/C;aACF;YACD,YAAY,EAAE,eAAe;SAC9B,CAAC;QACF,QAAQ,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YAC1B,WAAW,EAAE,WAAW;YACxB,WAAW,EAAE,yCAAyC;YACtD,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,IAAI;SACnB,CAAC;QACF,YAAY,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YAC9B,WAAW,EAAE,gBAAgB;YAC7B,WAAW,EAAE,qDAAqD;YAClE,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,KAAK;SACpB,CAAC;KACH;IACK,GAAG,CAAC,OAAO;;YACf,MAAM,EACJ,WAAW,EACX,KAAK,EACL,IAAI,EACJ,aAAa,EACb,eAAe,EACf,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,QAAQ,EACR,YAAY,GACb,GAAG,OAAO,CAAC,UAAU,CAAC;YAEvB,2DAA2D;YAC3D,IAAI,SAAiB,CAAC;YACtB,IAAI,SAAiB,CAAC;YAEtB,QAAQ,aAAa,EAAE,CAAC;gBACtB,KAAK,OAAO;oBACV,SAAS,GAAG,EAAE,CAAC;oBACf,SAAS,GAAG,EAAE,CAAC;oBACf,MAAM;gBACR,KAAK,QAAQ;oBACX,SAAS,GAAG,EAAE,CAAC;oBACf,SAAS,GAAG,GAAG,CAAC;oBAChB,MAAM;gBACR,KAAK,UAAU;oBACb,SAAS,GAAG,GAAG,CAAC;oBAChB,SAAS,GAAG,GAAG,CAAC;oBAChB,MAAM;gBACR,KAAK,QAAQ;oBACX,SAAS,GAAG,eAAe,IAAI,EAAE,CAAC;oBAClC,SAAS,GAAG,eAAe,IAAI,GAAG,CAAC;oBACnC,MAAM;gBACR;oBACE,SAAS,GAAG,EAAE,CAAC;oBACf,SAAS,GAAG,GAAG,CAAC;YACpB,CAAC;YAED,0BAA0B;YAC1B,MAAM,UAAU,GAaZ,EAAE,CAAC;YAEP,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBAChC,UAAU,CAAC,4BAA4B,GAAG,aAAa,CAAC;YAC1D,CAAC;YAED,IACE,kBAAkB;gBAClB,CAAC,kBAAkB,KAAK,iBAAiB;oBACvC,kBAAkB,KAAK,eAAe;oBACtC,kBAAkB,KAAK,YAAY;oBACnC,kBAAkB,KAAK,aAAa,CAAC,EACvC,CAAC;gBACD,UAAU,CAAC,UAAU,GAAG,kBAAkB,CAAC;YAC7C,CAAC;YAED,4BAA4B;YAC5B,UAAU,CAAC,mBAAmB,GAAG;gBAC/B,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,SAAS;gBACrB,SAAS,EAAE,KAAK,EAAE,+CAA+C;gBACjE,WAAW,EAAE,GAAG,EAAE,+CAA+C;aAClE,CAAC;YAEF,MAAM,IAAI,GAA4B;gBACpC,MAAM,EAAE,IAAI;gBACZ,UAAU,EAAE,UAAU;gBACtB,OAAO,EAAE;oBACP,SAAS,EAAE,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,IAAI;oBAC3B,cAAc,EAAE,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,KAAK;iBACtC;aACF,CAAC;YAEF,MAAM,SAAS,GAAG,MAAM,IAAA,yBAAgB,EAEtC;gBACA,IAAI,EAAE,OAAO,CAAC,IAAc;gBAC5B,KAAK,EAAE,KAAK;gBACZ,IAAI;aACL,CAAC,CAAC;YAEH,MAAM,mBAAmB,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;gBAClD,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;gBACd,CAAC,CAAC,SAAS,CAAC;YAEd,4BAA4B;YAC5B,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC;YACnC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;YACtD,MAAM,WAAW,GAAG,mBAAmB,CAAC,YAAY,CAAC;YACrD,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;YAC5D,MAAM,gBAAgB,GAAG,CACvB,CAAC,CAAC,aAAa,GAAG,YAAY,CAAC,GAAG,aAAa,CAAC;gBAChD,GAAG,CACJ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAEb,OAAO;gBACL,OAAO,EAAE,WAAW;gBACpB,YAAY,EAAE,IAAI;gBAClB,UAAU,EAAE;oBACV,cAAc,EAAE,cAAc;oBAC9B,aAAa,EAAE,aAAa;oBAC5B,aAAa,EAAE,WAAW,CAAC,MAAM;oBACjC,YAAY,EAAE,YAAY;oBAC1B,gBAAgB,EAAE,GAAG,gBAAgB,GAAG;oBACxC,cAAc,EAAE,aAAa;iBAC9B;gBACD,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,WAAW;gBACxB,gBAAgB,EAAE;oBAChB,gBAAgB,EAAE,GAAG,IAAI,CAAC,GAAG,CAC3B,CAAC,EACD,IAAI,CAAC,KAAK,CAAC,CAAC,aAAa,GAAG,YAAY,CAAC,GAAG,GAAG,CAAC,CACjD,UAAU,EAAE,8BAA8B;oBAC3C,OAAO,EAAE,mBAAmB,CAAC,WAAW,CAAC;oBACzC,WAAW,EAAE,cAAc,CAAC,aAAa,EAAE,YAAY,CAAC;iBACzD;gBACD,SAAS,EAAE,SAAS;aACrB,CAAC;QACJ,CAAC;KAAA;CACF,CAAC,CAAC;AAEH,gDAAgD;AAChD,SAAS,mBAAmB,CAAC,WAAmB;IAC9C,MAAM,QAAQ,GAAG;QACf,IAAI,EAAE,sEAAsE;QAC5E,KAAK,EAAE,gEAAgE;QACvE,OAAO,EACL,uEAAuE;QACzE,OAAO,EAAE,6DAA6D;QACtE,OAAO,EAAE,2DAA2D;QACpE,YAAY,EACV,iEAAiE;QACnE,MAAM,EAAE,4DAA4D;KACrE,CAAC;IACF,OAAO,CACL,QAAQ,CAAC,WAAoC,CAAC;QAC9C,oCAAoC,CACrC,CAAC;AACJ,CAAC;AAED,0CAA0C;AAC1C,SAAS,cAAc,CAAC,aAAqB,EAAE,YAAoB;IACjE,MAAM,IAAI,GAAa,EAAE,CAAC;IAE1B,IAAI,aAAa,GAAG,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;IAC5E,CAAC;IAED,IAAI,aAAa,GAAG,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,CACP,wEAAwE,CACzE,CAAC;IACJ,CAAC;IAED,IAAI,YAAY,GAAG,aAAa,GAAG,GAAG,EAAE,CAAC;QACvC,IAAI,CAAC,IAAI,CACP,oEAAoE,CACrE,CAAC;IACJ,CAAC;IAED,IAAI,YAAY,GAAG,aAAa,GAAG,GAAG,EAAE,CAAC;QACvC,IAAI,CAAC,IAAI,CACP,4EAA4E,CAC7E,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const huggingFaceAuth: import("@taskmagic/pieces-framework").SecretTextProperty<true>;
|
package/src/lib/auth.js
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.huggingFaceAuth = void 0;
|
|
4
|
+
const pieces_framework_1 = require("@taskmagic/pieces-framework");
|
|
5
|
+
exports.huggingFaceAuth = pieces_framework_1.PieceAuth.SecretText({
|
|
6
|
+
displayName: 'API Token',
|
|
7
|
+
description: 'Your Hugging Face API token (get it from https://huggingface.co/settings/tokens)',
|
|
8
|
+
required: true,
|
|
9
|
+
});
|
|
10
|
+
//# sourceMappingURL=auth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../../../packages/pieces/community/hugging-face/src/lib/auth.ts"],"names":[],"mappings":";;;AAAA,kEAAwD;AAE3C,QAAA,eAAe,GAAG,4BAAS,CAAC,UAAU,CAAC;IAClD,WAAW,EAAE,WAAW;IACxB,WAAW,EACT,kFAAkF;IACpF,QAAQ,EAAE,IAAI;CACf,CAAC,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export declare const HF_ROUTER_BASE = "https://router.huggingface.co/hf-inference/models";
|
|
2
|
+
export declare const HF_CHAT_COMPLETIONS_URL = "https://router.huggingface.co/v1/chat/completions";
|
|
3
|
+
export declare function getMimeType(filename: string): string;
|
|
4
|
+
type PipelineTaskParams = {
|
|
5
|
+
auth: string;
|
|
6
|
+
model: string;
|
|
7
|
+
body: Record<string, unknown>;
|
|
8
|
+
};
|
|
9
|
+
export declare function callPipelineTask<T>({ auth, model, body, }: PipelineTaskParams): Promise<T>;
|
|
10
|
+
type BinaryTaskParams = {
|
|
11
|
+
auth: string;
|
|
12
|
+
model: string;
|
|
13
|
+
data: Buffer;
|
|
14
|
+
contentType: string;
|
|
15
|
+
};
|
|
16
|
+
export declare function callBinaryTask<T>({ auth, model, data, contentType, }: BinaryTaskParams): Promise<T>;
|
|
17
|
+
type ChatCompletionParams = {
|
|
18
|
+
auth: string;
|
|
19
|
+
body: Record<string, unknown>;
|
|
20
|
+
};
|
|
21
|
+
export type ChatCompletionResponse = {
|
|
22
|
+
choices?: Array<{
|
|
23
|
+
message?: {
|
|
24
|
+
role?: string;
|
|
25
|
+
content?: string;
|
|
26
|
+
};
|
|
27
|
+
finish_reason?: string;
|
|
28
|
+
}>;
|
|
29
|
+
usage?: {
|
|
30
|
+
total_tokens?: number;
|
|
31
|
+
prompt_tokens?: number;
|
|
32
|
+
completion_tokens?: number;
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
export declare function callChatCompletion({ auth, body, }: ChatCompletionParams): Promise<ChatCompletionResponse>;
|
|
36
|
+
export {};
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HF_CHAT_COMPLETIONS_URL = exports.HF_ROUTER_BASE = void 0;
|
|
4
|
+
exports.getMimeType = getMimeType;
|
|
5
|
+
exports.callPipelineTask = callPipelineTask;
|
|
6
|
+
exports.callBinaryTask = callBinaryTask;
|
|
7
|
+
exports.callChatCompletion = callChatCompletion;
|
|
8
|
+
const tslib_1 = require("tslib");
|
|
9
|
+
const pieces_common_1 = require("@taskmagic/pieces-common");
|
|
10
|
+
exports.HF_ROUTER_BASE = 'https://router.huggingface.co/hf-inference/models';
|
|
11
|
+
exports.HF_CHAT_COMPLETIONS_URL = 'https://router.huggingface.co/v1/chat/completions';
|
|
12
|
+
function getMimeType(filename) {
|
|
13
|
+
var _a, _b;
|
|
14
|
+
const extension = (_b = (_a = filename.split('.').pop()) === null || _a === void 0 ? void 0 : _a.toLowerCase()) !== null && _b !== void 0 ? _b : '';
|
|
15
|
+
switch (extension) {
|
|
16
|
+
case 'jpg':
|
|
17
|
+
case 'jpeg':
|
|
18
|
+
return 'image/jpeg';
|
|
19
|
+
case 'png':
|
|
20
|
+
return 'image/png';
|
|
21
|
+
case 'gif':
|
|
22
|
+
return 'image/gif';
|
|
23
|
+
case 'webp':
|
|
24
|
+
return 'image/webp';
|
|
25
|
+
case 'bmp':
|
|
26
|
+
return 'image/bmp';
|
|
27
|
+
case 'tiff':
|
|
28
|
+
case 'tif':
|
|
29
|
+
return 'image/tiff';
|
|
30
|
+
case 'pdf':
|
|
31
|
+
return 'application/pdf';
|
|
32
|
+
default:
|
|
33
|
+
return 'application/octet-stream';
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
function callPipelineTask(_a) {
|
|
37
|
+
return tslib_1.__awaiter(this, arguments, void 0, function* ({ auth, model, body, }) {
|
|
38
|
+
const response = yield pieces_common_1.httpClient.sendRequest({
|
|
39
|
+
method: pieces_common_1.HttpMethod.POST,
|
|
40
|
+
url: `${exports.HF_ROUTER_BASE}/${model}`,
|
|
41
|
+
headers: {
|
|
42
|
+
Authorization: `Bearer ${auth}`,
|
|
43
|
+
'Content-Type': 'application/json',
|
|
44
|
+
},
|
|
45
|
+
body,
|
|
46
|
+
});
|
|
47
|
+
return response.body;
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
function callBinaryTask(_a) {
|
|
51
|
+
return tslib_1.__awaiter(this, arguments, void 0, function* ({ auth, model, data, contentType, }) {
|
|
52
|
+
const response = yield pieces_common_1.httpClient.sendRequest({
|
|
53
|
+
method: pieces_common_1.HttpMethod.POST,
|
|
54
|
+
url: `${exports.HF_ROUTER_BASE}/${model}`,
|
|
55
|
+
headers: {
|
|
56
|
+
Authorization: `Bearer ${auth}`,
|
|
57
|
+
'Content-Type': contentType,
|
|
58
|
+
},
|
|
59
|
+
body: data,
|
|
60
|
+
});
|
|
61
|
+
return response.body;
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
function callChatCompletion(_a) {
|
|
65
|
+
return tslib_1.__awaiter(this, arguments, void 0, function* ({ auth, body, }) {
|
|
66
|
+
const response = yield pieces_common_1.httpClient.sendRequest({
|
|
67
|
+
method: pieces_common_1.HttpMethod.POST,
|
|
68
|
+
url: exports.HF_CHAT_COMPLETIONS_URL,
|
|
69
|
+
headers: {
|
|
70
|
+
Authorization: `Bearer ${auth}`,
|
|
71
|
+
'Content-Type': 'application/json',
|
|
72
|
+
},
|
|
73
|
+
body,
|
|
74
|
+
});
|
|
75
|
+
return response.body;
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/hugging-face/src/lib/common/index.ts"],"names":[],"mappings":";;;AAMA,kCAsBC;AAQD,4CAeC;AASD,wCAgBC;AAmBD,gDAcC;;AA7GD,4DAAkE;AAErD,QAAA,cAAc,GAAG,mDAAmD,CAAC;AACrE,QAAA,uBAAuB,GAClC,mDAAmD,CAAC;AAEtD,SAAgB,WAAW,CAAC,QAAgB;;IAC1C,MAAM,SAAS,GAAG,MAAA,MAAA,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,0CAAE,WAAW,EAAE,mCAAI,EAAE,CAAC;IACjE,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,KAAK,CAAC;QACX,KAAK,MAAM;YACT,OAAO,YAAY,CAAC;QACtB,KAAK,KAAK;YACR,OAAO,WAAW,CAAC;QACrB,KAAK,KAAK;YACR,OAAO,WAAW,CAAC;QACrB,KAAK,MAAM;YACT,OAAO,YAAY,CAAC;QACtB,KAAK,KAAK;YACR,OAAO,WAAW,CAAC;QACrB,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK;YACR,OAAO,YAAY,CAAC;QACtB,KAAK,KAAK;YACR,OAAO,iBAAiB,CAAC;QAC3B;YACE,OAAO,0BAA0B,CAAC;IACtC,CAAC;AACH,CAAC;AAQD,SAAsB,gBAAgB;iEAAI,EACxC,IAAI,EACJ,KAAK,EACL,IAAI,GACe;QACnB,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAI;YAC/C,MAAM,EAAE,0BAAU,CAAC,IAAI;YACvB,GAAG,EAAE,GAAG,sBAAc,IAAI,KAAK,EAAE;YACjC,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,IAAI,EAAE;gBAC/B,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI;SACL,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;CAAA;AASD,SAAsB,cAAc;iEAAI,EACtC,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,WAAW,GACM;QACjB,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAI;YAC/C,MAAM,EAAE,0BAAU,CAAC,IAAI;YACvB,GAAG,EAAE,GAAG,sBAAc,IAAI,KAAK,EAAE;YACjC,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,IAAI,EAAE;gBAC/B,cAAc,EAAE,WAAW;aAC5B;YACD,IAAI,EAAE,IAAI;SACX,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;CAAA;AAmBD,SAAsB,kBAAkB;iEAAC,EACvC,IAAI,EACJ,IAAI,GACiB;QACrB,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAyB;YACpE,MAAM,EAAE,0BAAU,CAAC,IAAI;YACvB,GAAG,EAAE,+BAAuB;YAC5B,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,IAAI,EAAE;gBAC/B,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI;SACL,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;CAAA"}
|