@huggingface/tasks 0.14.0 → 0.15.0
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/dist/commonjs/index.d.ts +1 -0
- package/dist/commonjs/index.d.ts.map +1 -1
- package/dist/commonjs/index.js +1 -0
- package/dist/commonjs/inference-providers.d.ts +10 -0
- package/dist/commonjs/inference-providers.d.ts.map +1 -0
- package/dist/commonjs/inference-providers.js +16 -0
- package/dist/commonjs/snippets/curl.d.ts +8 -8
- package/dist/commonjs/snippets/curl.d.ts.map +1 -1
- package/dist/commonjs/snippets/curl.js +58 -30
- package/dist/commonjs/snippets/js.d.ts +11 -10
- package/dist/commonjs/snippets/js.d.ts.map +1 -1
- package/dist/commonjs/snippets/js.js +162 -53
- package/dist/commonjs/snippets/python.d.ts +12 -12
- package/dist/commonjs/snippets/python.d.ts.map +1 -1
- package/dist/commonjs/snippets/python.js +141 -71
- package/dist/commonjs/snippets/types.d.ts +1 -1
- package/dist/commonjs/snippets/types.d.ts.map +1 -1
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/inference-providers.d.ts +10 -0
- package/dist/esm/inference-providers.d.ts.map +1 -0
- package/dist/esm/inference-providers.js +12 -0
- package/dist/esm/snippets/curl.d.ts +8 -8
- package/dist/esm/snippets/curl.d.ts.map +1 -1
- package/dist/esm/snippets/curl.js +58 -29
- package/dist/esm/snippets/js.d.ts +11 -10
- package/dist/esm/snippets/js.d.ts.map +1 -1
- package/dist/esm/snippets/js.js +159 -50
- package/dist/esm/snippets/python.d.ts +12 -12
- package/dist/esm/snippets/python.d.ts.map +1 -1
- package/dist/esm/snippets/python.js +140 -69
- package/dist/esm/snippets/types.d.ts +1 -1
- package/dist/esm/snippets/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +2 -0
- package/src/inference-providers.ts +16 -0
- package/src/snippets/curl.ts +72 -23
- package/src/snippets/js.ts +189 -56
- package/src/snippets/python.ts +154 -75
- package/src/snippets/types.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"python.d.ts","sourceRoot":"","sources":["../../../src/snippets/python.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAG1F,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"python.d.ts","sourceRoot":"","sources":["../../../src/snippets/python.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkD,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAG1F,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAWrE,eAAO,MAAM,qBAAqB,UAC1B,gBAAgB,eACV,MAAM,YACT,iBAAiB,SACpB;IACN,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,0BAA0B,EAAE,CAAC;IACxC,WAAW,CAAC,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAClD,UAAU,CAAC,EAAE,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAChD,KAAK,CAAC,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;CACtC,KACC,gBAAgB,EA+FlB,CAAC;AAEF,eAAO,MAAM,6BAA6B,UAAW,gBAAgB,KAAG,gBAAgB,EAcvF,CAAC;AAEF,eAAO,MAAM,kCAAkC,UAAW,gBAAgB,KAAG,gBAAgB,EAoB5F,CAAC;AAEF,eAAO,MAAM,YAAY,UAAW,gBAAgB,KAAG,gBAAgB,EAatE,CAAC;AAEF,eAAO,MAAM,WAAW,UAAW,gBAAgB,KAAG,gBAAgB,EAarE,CAAC;AAEF,eAAO,MAAM,kBAAkB,UACvB,gBAAgB,eACV,MAAM,YACT,iBAAiB,KACzB,gBAAgB,EAqDlB,CAAC;AAEF,eAAO,MAAM,cAAc,UAAW,gBAAgB,KAAG,gBAAgB,EAYxE,CAAC;AAEF,eAAO,MAAM,kBAAkB,UAAW,gBAAgB,KAAG,gBAAgB,EAqC5E,CAAC;AAEF,eAAO,MAAM,gCAAgC,UAAW,gBAAgB,KAAG,gBAAgB,EAgB1F,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,OAAO,CACnC,MAAM,CACL,YAAY,EACZ,CACC,KAAK,EAAE,gBAAgB,EACvB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC1B,gBAAgB,EAAE,CACvB,CA8BD,CAAC;AAEF,wBAAgB,yBAAyB,CACxC,KAAK,EAAE,gBAAgB,EACvB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,gBAAgB,EAAE,CA+BpB"}
|
|
@@ -2,13 +2,17 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.pythonSnippets = exports.snippetDocumentQuestionAnswering = exports.snippetTextToAudio = exports.snippetTabular = exports.snippetTextToImage = exports.snippetFile = exports.snippetBasic = exports.snippetZeroShotImageClassification = exports.snippetZeroShotClassification = exports.snippetConversational = void 0;
|
|
4
4
|
exports.getPythonInferenceSnippet = getPythonInferenceSnippet;
|
|
5
|
-
|
|
5
|
+
const inference_providers_js_1 = require("../inference-providers.js");
|
|
6
6
|
const common_js_1 = require("./common.js");
|
|
7
7
|
const inputs_js_1 = require("./inputs.js");
|
|
8
|
-
const snippetImportInferenceClient = (
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
const snippetImportInferenceClient = (accessToken, provider) => `\
|
|
9
|
+
from huggingface_hub import InferenceClient
|
|
10
|
+
|
|
11
|
+
client = InferenceClient(
|
|
12
|
+
provider="${provider}",
|
|
13
|
+
api_key="${accessToken || "{API_TOKEN}"}"
|
|
14
|
+
)`;
|
|
15
|
+
const snippetConversational = (model, accessToken, provider, opts) => {
|
|
12
16
|
const streaming = opts?.streaming ?? true;
|
|
13
17
|
const exampleMessages = (0, inputs_js_1.getModelInputSnippet)(model);
|
|
14
18
|
const messages = opts?.messages ?? exampleMessages;
|
|
@@ -26,9 +30,8 @@ const snippetConversational = (model, accessToken, opts) => {
|
|
|
26
30
|
return [
|
|
27
31
|
{
|
|
28
32
|
client: "huggingface_hub",
|
|
29
|
-
content:
|
|
30
|
-
|
|
31
|
-
client = InferenceClient(api_key="${accessToken || "{API_TOKEN}"}")
|
|
33
|
+
content: `\
|
|
34
|
+
${snippetImportInferenceClient(accessToken, provider)}
|
|
32
35
|
|
|
33
36
|
messages = ${messagesStr}
|
|
34
37
|
|
|
@@ -47,7 +50,7 @@ for chunk in stream:
|
|
|
47
50
|
content: `from openai import OpenAI
|
|
48
51
|
|
|
49
52
|
client = OpenAI(
|
|
50
|
-
base_url="
|
|
53
|
+
base_url="${(0, inference_providers_js_1.openAIbaseUrl)(provider)}",
|
|
51
54
|
api_key="${accessToken || "{API_TOKEN}"}"
|
|
52
55
|
)
|
|
53
56
|
|
|
@@ -69,9 +72,8 @@ for chunk in stream:
|
|
|
69
72
|
return [
|
|
70
73
|
{
|
|
71
74
|
client: "huggingface_hub",
|
|
72
|
-
content:
|
|
73
|
-
|
|
74
|
-
client = InferenceClient(api_key="${accessToken || "{API_TOKEN}"}")
|
|
75
|
+
content: `\
|
|
76
|
+
${snippetImportInferenceClient(accessToken, provider)}
|
|
75
77
|
|
|
76
78
|
messages = ${messagesStr}
|
|
77
79
|
|
|
@@ -88,7 +90,7 @@ print(completion.choices[0].message)`,
|
|
|
88
90
|
content: `from openai import OpenAI
|
|
89
91
|
|
|
90
92
|
client = OpenAI(
|
|
91
|
-
base_url="
|
|
93
|
+
base_url="${(0, inference_providers_js_1.openAIbaseUrl)(provider)}",
|
|
92
94
|
api_key="${accessToken || "{API_TOKEN}"}"
|
|
93
95
|
)
|
|
94
96
|
|
|
@@ -106,8 +108,11 @@ print(completion.choices[0].message)`,
|
|
|
106
108
|
}
|
|
107
109
|
};
|
|
108
110
|
exports.snippetConversational = snippetConversational;
|
|
109
|
-
const snippetZeroShotClassification = (model) =>
|
|
110
|
-
|
|
111
|
+
const snippetZeroShotClassification = (model) => {
|
|
112
|
+
return [
|
|
113
|
+
{
|
|
114
|
+
client: "requests",
|
|
115
|
+
content: `def query(payload):
|
|
111
116
|
response = requests.post(API_URL, headers=headers, json=payload)
|
|
112
117
|
return response.json()
|
|
113
118
|
|
|
@@ -115,10 +120,15 @@ output = query({
|
|
|
115
120
|
"inputs": ${(0, inputs_js_1.getModelInputSnippet)(model)},
|
|
116
121
|
"parameters": {"candidate_labels": ["refund", "legal", "faq"]},
|
|
117
122
|
})`,
|
|
118
|
-
}
|
|
123
|
+
},
|
|
124
|
+
];
|
|
125
|
+
};
|
|
119
126
|
exports.snippetZeroShotClassification = snippetZeroShotClassification;
|
|
120
|
-
const snippetZeroShotImageClassification = (model) =>
|
|
121
|
-
|
|
127
|
+
const snippetZeroShotImageClassification = (model) => {
|
|
128
|
+
return [
|
|
129
|
+
{
|
|
130
|
+
client: "requests",
|
|
131
|
+
content: `def query(data):
|
|
122
132
|
with open(data["image_path"], "rb") as f:
|
|
123
133
|
img = f.read()
|
|
124
134
|
payload={
|
|
@@ -132,40 +142,81 @@ output = query({
|
|
|
132
142
|
"image_path": ${(0, inputs_js_1.getModelInputSnippet)(model)},
|
|
133
143
|
"parameters": {"candidate_labels": ["cat", "dog", "llama"]},
|
|
134
144
|
})`,
|
|
135
|
-
}
|
|
145
|
+
},
|
|
146
|
+
];
|
|
147
|
+
};
|
|
136
148
|
exports.snippetZeroShotImageClassification = snippetZeroShotImageClassification;
|
|
137
|
-
const snippetBasic = (model) =>
|
|
138
|
-
|
|
149
|
+
const snippetBasic = (model) => {
|
|
150
|
+
return [
|
|
151
|
+
{
|
|
152
|
+
client: "requests",
|
|
153
|
+
content: `def query(payload):
|
|
139
154
|
response = requests.post(API_URL, headers=headers, json=payload)
|
|
140
155
|
return response.json()
|
|
141
156
|
|
|
142
157
|
output = query({
|
|
143
158
|
"inputs": ${(0, inputs_js_1.getModelInputSnippet)(model)},
|
|
144
159
|
})`,
|
|
145
|
-
}
|
|
160
|
+
},
|
|
161
|
+
];
|
|
162
|
+
};
|
|
146
163
|
exports.snippetBasic = snippetBasic;
|
|
147
|
-
const snippetFile = (model) =>
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
164
|
+
const snippetFile = (model) => {
|
|
165
|
+
return [
|
|
166
|
+
{
|
|
167
|
+
client: "requests",
|
|
168
|
+
content: `def query(filename):
|
|
169
|
+
with open(filename, "rb") as f:
|
|
170
|
+
data = f.read()
|
|
171
|
+
response = requests.post(API_URL, headers=headers, data=data)
|
|
172
|
+
return response.json()
|
|
173
|
+
|
|
174
|
+
output = query(${(0, inputs_js_1.getModelInputSnippet)(model)})`,
|
|
175
|
+
},
|
|
176
|
+
];
|
|
177
|
+
};
|
|
156
178
|
exports.snippetFile = snippetFile;
|
|
157
|
-
const snippetTextToImage = (model, accessToken) =>
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
179
|
+
const snippetTextToImage = (model, accessToken, provider) => {
|
|
180
|
+
return [
|
|
181
|
+
{
|
|
182
|
+
client: "huggingface_hub",
|
|
183
|
+
content: `\
|
|
184
|
+
${snippetImportInferenceClient(accessToken, provider)}
|
|
185
|
+
|
|
161
186
|
# output is a PIL.Image object
|
|
162
|
-
image = client.text_to_image(
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
187
|
+
image = client.text_to_image(
|
|
188
|
+
${(0, inputs_js_1.getModelInputSnippet)(model)},
|
|
189
|
+
model="${model.id}"
|
|
190
|
+
)`,
|
|
191
|
+
},
|
|
192
|
+
...(provider === "fal-ai"
|
|
193
|
+
? [
|
|
194
|
+
{
|
|
195
|
+
client: "fal-client",
|
|
196
|
+
content: `\
|
|
197
|
+
import fal_client
|
|
198
|
+
|
|
199
|
+
result = fal_client.subscribe(
|
|
200
|
+
# replace with correct id from fal.ai
|
|
201
|
+
"fal-ai/${model.id}",
|
|
202
|
+
arguments={
|
|
203
|
+
"prompt": ${(0, inputs_js_1.getModelInputSnippet)(model)},
|
|
204
|
+
},
|
|
205
|
+
)
|
|
206
|
+
print(result)
|
|
207
|
+
`,
|
|
208
|
+
},
|
|
209
|
+
]
|
|
210
|
+
: []),
|
|
211
|
+
...(provider === "hf-inference"
|
|
212
|
+
? [
|
|
213
|
+
{
|
|
214
|
+
client: "requests",
|
|
215
|
+
content: `\
|
|
216
|
+
def query(payload):
|
|
167
217
|
response = requests.post(API_URL, headers=headers, json=payload)
|
|
168
218
|
return response.content
|
|
219
|
+
|
|
169
220
|
image_bytes = query({
|
|
170
221
|
"inputs": ${(0, inputs_js_1.getModelInputSnippet)(model)},
|
|
171
222
|
})
|
|
@@ -174,25 +225,35 @@ image_bytes = query({
|
|
|
174
225
|
import io
|
|
175
226
|
from PIL import Image
|
|
176
227
|
image = Image.open(io.BytesIO(image_bytes))`,
|
|
177
|
-
|
|
178
|
-
]
|
|
228
|
+
},
|
|
229
|
+
]
|
|
230
|
+
: []),
|
|
231
|
+
];
|
|
232
|
+
};
|
|
179
233
|
exports.snippetTextToImage = snippetTextToImage;
|
|
180
|
-
const snippetTabular = (model) =>
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
234
|
+
const snippetTabular = (model) => {
|
|
235
|
+
return [
|
|
236
|
+
{
|
|
237
|
+
client: "requests",
|
|
238
|
+
content: `def query(payload):
|
|
239
|
+
response = requests.post(API_URL, headers=headers, json=payload)
|
|
240
|
+
return response.content
|
|
241
|
+
response = query({
|
|
242
|
+
"inputs": {"data": ${(0, inputs_js_1.getModelInputSnippet)(model)}},
|
|
243
|
+
})`,
|
|
244
|
+
},
|
|
245
|
+
];
|
|
246
|
+
};
|
|
188
247
|
exports.snippetTabular = snippetTabular;
|
|
189
248
|
const snippetTextToAudio = (model) => {
|
|
190
249
|
// Transformers TTS pipeline and api-inference-community (AIC) pipeline outputs are diverged
|
|
191
250
|
// with the latest update to inference-api (IA).
|
|
192
251
|
// Transformers IA returns a byte object (wav file), whereas AIC returns wav and sampling_rate.
|
|
193
252
|
if (model.library_name === "transformers") {
|
|
194
|
-
return
|
|
195
|
-
|
|
253
|
+
return [
|
|
254
|
+
{
|
|
255
|
+
client: "requests",
|
|
256
|
+
content: `def query(payload):
|
|
196
257
|
response = requests.post(API_URL, headers=headers, json=payload)
|
|
197
258
|
return response.content
|
|
198
259
|
|
|
@@ -202,11 +263,14 @@ audio_bytes = query({
|
|
|
202
263
|
# You can access the audio with IPython.display for example
|
|
203
264
|
from IPython.display import Audio
|
|
204
265
|
Audio(audio_bytes)`,
|
|
205
|
-
|
|
266
|
+
},
|
|
267
|
+
];
|
|
206
268
|
}
|
|
207
269
|
else {
|
|
208
|
-
return
|
|
209
|
-
|
|
270
|
+
return [
|
|
271
|
+
{
|
|
272
|
+
client: "requests",
|
|
273
|
+
content: `def query(payload):
|
|
210
274
|
response = requests.post(API_URL, headers=headers, json=payload)
|
|
211
275
|
return response.json()
|
|
212
276
|
|
|
@@ -216,12 +280,16 @@ audio, sampling_rate = query({
|
|
|
216
280
|
# You can access the audio with IPython.display for example
|
|
217
281
|
from IPython.display import Audio
|
|
218
282
|
Audio(audio, rate=sampling_rate)`,
|
|
219
|
-
|
|
283
|
+
},
|
|
284
|
+
];
|
|
220
285
|
}
|
|
221
286
|
};
|
|
222
287
|
exports.snippetTextToAudio = snippetTextToAudio;
|
|
223
|
-
const snippetDocumentQuestionAnswering = (model) =>
|
|
224
|
-
|
|
288
|
+
const snippetDocumentQuestionAnswering = (model) => {
|
|
289
|
+
return [
|
|
290
|
+
{
|
|
291
|
+
client: "requests",
|
|
292
|
+
content: `def query(payload):
|
|
225
293
|
with open(payload["image"], "rb") as f:
|
|
226
294
|
img = f.read()
|
|
227
295
|
payload["image"] = base64.b64encode(img).decode("utf-8")
|
|
@@ -231,7 +299,9 @@ const snippetDocumentQuestionAnswering = (model) => ({
|
|
|
231
299
|
output = query({
|
|
232
300
|
"inputs": ${(0, inputs_js_1.getModelInputSnippet)(model)},
|
|
233
301
|
})`,
|
|
234
|
-
}
|
|
302
|
+
},
|
|
303
|
+
];
|
|
304
|
+
};
|
|
235
305
|
exports.snippetDocumentQuestionAnswering = snippetDocumentQuestionAnswering;
|
|
236
306
|
exports.pythonSnippets = {
|
|
237
307
|
// Same order as in tasks/src/pipelines.ts
|
|
@@ -263,23 +333,26 @@ exports.pythonSnippets = {
|
|
|
263
333
|
"image-to-text": exports.snippetFile,
|
|
264
334
|
"zero-shot-image-classification": exports.snippetZeroShotImageClassification,
|
|
265
335
|
};
|
|
266
|
-
function getPythonInferenceSnippet(model, accessToken, opts) {
|
|
336
|
+
function getPythonInferenceSnippet(model, accessToken, provider, opts) {
|
|
267
337
|
if (model.tags.includes("conversational")) {
|
|
268
338
|
// Conversational model detected, so we display a code snippet that features the Messages API
|
|
269
|
-
return (0, exports.snippetConversational)(model, accessToken, opts);
|
|
339
|
+
return (0, exports.snippetConversational)(model, accessToken, provider, opts);
|
|
270
340
|
}
|
|
271
341
|
else {
|
|
272
|
-
|
|
273
|
-
? exports.pythonSnippets[model.pipeline_tag]?.(model, accessToken) ??
|
|
274
|
-
:
|
|
275
|
-
|
|
342
|
+
const snippets = model.pipeline_tag && model.pipeline_tag in exports.pythonSnippets
|
|
343
|
+
? exports.pythonSnippets[model.pipeline_tag]?.(model, accessToken, provider) ?? []
|
|
344
|
+
: [];
|
|
345
|
+
const baseUrl = provider === "hf-inference"
|
|
346
|
+
? `https://api-inference.huggingface.co/models/${model.id}`
|
|
347
|
+
: inference_providers_js_1.HF_HUB_INFERENCE_PROXY_TEMPLATE.replace("{{PROVIDER}}", provider);
|
|
276
348
|
return snippets.map((snippet) => {
|
|
277
349
|
return {
|
|
278
350
|
...snippet,
|
|
279
|
-
content: snippet.
|
|
280
|
-
?
|
|
351
|
+
content: snippet.client === "requests"
|
|
352
|
+
? `\
|
|
353
|
+
import requests
|
|
281
354
|
|
|
282
|
-
API_URL = "
|
|
355
|
+
API_URL = "${baseUrl}"
|
|
283
356
|
headers = {"Authorization": ${accessToken ? `"Bearer ${accessToken}"` : `f"Bearer {API_TOKEN}"`}}
|
|
284
357
|
|
|
285
358
|
${snippet.content}`
|
|
@@ -288,6 +361,3 @@ ${snippet.content}`
|
|
|
288
361
|
});
|
|
289
362
|
}
|
|
290
363
|
}
|
|
291
|
-
function hasPythonInferenceSnippet(model) {
|
|
292
|
-
return !!model.pipeline_tag && model.pipeline_tag in exports.pythonSnippets;
|
|
293
|
-
}
|
|
@@ -7,6 +7,6 @@ import type { ModelData } from "../model-data.js";
|
|
|
7
7
|
export type ModelDataMinimal = Pick<ModelData, "id" | "pipeline_tag" | "mask_token" | "library_name" | "config" | "tags" | "inference">;
|
|
8
8
|
export interface InferenceSnippet {
|
|
9
9
|
content: string;
|
|
10
|
-
client
|
|
10
|
+
client: string;
|
|
11
11
|
}
|
|
12
12
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/snippets/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAClC,SAAS,EACT,IAAI,GAAG,cAAc,GAAG,YAAY,GAAG,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CACvF,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/snippets/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAClC,SAAS,EACT,IAAI,GAAG,cAAc,GAAG,YAAY,GAAG,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CACvF,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CACf"}
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -19,4 +19,5 @@ export { LOCAL_APPS } from "./local-apps.js";
|
|
|
19
19
|
export type { LocalApp, LocalAppKey, LocalAppSnippet } from "./local-apps.js";
|
|
20
20
|
export { DATASET_LIBRARIES_UI_ELEMENTS } from "./dataset-libraries.js";
|
|
21
21
|
export type { DatasetLibraryUiElement, DatasetLibraryKey } from "./dataset-libraries.js";
|
|
22
|
+
export * from "./inference-providers.js";
|
|
22
23
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACvF,cAAc,kBAAkB,CAAC;AACjC,OAAO,EACN,aAAa,EACb,cAAc,EACd,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,UAAU,EACV,eAAe,EACf,aAAa,EACb,kBAAkB,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,8BAA8B,EAC9B,sBAAsB,EACtB,2BAA2B,GAC3B,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC9E,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACzF,YAAY,EACX,aAAa,EACb,sBAAsB,EACtB,gCAAgC,EAChC,8BAA8B,EAC9B,kCAAkC,EAClC,uBAAuB,EACvB,sBAAsB,EACtB,oCAAoC,EACpC,gCAAgC,EAChC,2BAA2B,EAC3B,gCAAgC,EAChC,8BAA8B,EAC9B,sBAAsB,EACtB,8BAA8B,EAC9B,mBAAmB,EACnB,sBAAsB,EACtB,yBAAyB,EACzB,8BAA8B,EAC9B,uBAAuB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,cAAc,WAAW,CAAC;AAE1B,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAC7D,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE9E,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACvE,YAAY,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACvF,cAAc,kBAAkB,CAAC;AACjC,OAAO,EACN,aAAa,EACb,cAAc,EACd,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,UAAU,EACV,eAAe,EACf,aAAa,EACb,kBAAkB,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,8BAA8B,EAC9B,sBAAsB,EACtB,2BAA2B,GAC3B,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC9E,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACzF,YAAY,EACX,aAAa,EACb,sBAAsB,EACtB,gCAAgC,EAChC,8BAA8B,EAC9B,kCAAkC,EAClC,uBAAuB,EACvB,sBAAsB,EACtB,oCAAoC,EACpC,gCAAgC,EAChC,2BAA2B,EAC3B,gCAAgC,EAChC,8BAA8B,EAC9B,sBAAsB,EACtB,8BAA8B,EAC9B,mBAAmB,EACnB,sBAAsB,EACtB,yBAAyB,EACzB,8BAA8B,EAC9B,uBAAuB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,cAAc,WAAW,CAAC;AAE1B,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAC7D,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE9E,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACvE,YAAY,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEzF,cAAc,0BAA0B,CAAC"}
|
package/dist/esm/index.js
CHANGED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const INFERENCE_PROVIDERS: readonly ["hf-inference", "fal-ai", "replicate", "sambanova", "together"];
|
|
2
|
+
export type InferenceProvider = (typeof INFERENCE_PROVIDERS)[number];
|
|
3
|
+
export declare const HF_HUB_INFERENCE_PROXY_TEMPLATE = "https://huggingface.co/api/inference-proxy/{{PROVIDER}}";
|
|
4
|
+
/**
|
|
5
|
+
* URL to set as baseUrl in the OpenAI SDK.
|
|
6
|
+
*
|
|
7
|
+
* TODO(Expose this from HfInference in the future?)
|
|
8
|
+
*/
|
|
9
|
+
export declare function openAIbaseUrl(provider: InferenceProvider): string;
|
|
10
|
+
//# sourceMappingURL=inference-providers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inference-providers.d.ts","sourceRoot":"","sources":["../../src/inference-providers.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,2EAA4E,CAAC;AAE7G,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAErE,eAAO,MAAM,+BAA+B,4DAA4D,CAAC;AAEzG;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAIjE"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export const INFERENCE_PROVIDERS = ["hf-inference", "fal-ai", "replicate", "sambanova", "together"];
|
|
2
|
+
export const HF_HUB_INFERENCE_PROXY_TEMPLATE = `https://huggingface.co/api/inference-proxy/{{PROVIDER}}`;
|
|
3
|
+
/**
|
|
4
|
+
* URL to set as baseUrl in the OpenAI SDK.
|
|
5
|
+
*
|
|
6
|
+
* TODO(Expose this from HfInference in the future?)
|
|
7
|
+
*/
|
|
8
|
+
export function openAIbaseUrl(provider) {
|
|
9
|
+
return provider === "hf-inference"
|
|
10
|
+
? "https://api-inference.huggingface.co/v1/"
|
|
11
|
+
: HF_HUB_INFERENCE_PROXY_TEMPLATE.replace("{{PROVIDER}}", provider);
|
|
12
|
+
}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
+
import { type InferenceProvider } from "../inference-providers.js";
|
|
1
2
|
import type { PipelineType } from "../pipelines.js";
|
|
2
3
|
import type { ChatCompletionInputMessage, GenerationParameters } from "../tasks/index.js";
|
|
3
4
|
import type { InferenceSnippet, ModelDataMinimal } from "./types.js";
|
|
4
|
-
export declare const snippetBasic: (model: ModelDataMinimal, accessToken: string) => InferenceSnippet;
|
|
5
|
-
export declare const snippetTextGeneration: (model: ModelDataMinimal, accessToken: string, opts?: {
|
|
5
|
+
export declare const snippetBasic: (model: ModelDataMinimal, accessToken: string, provider: InferenceProvider) => InferenceSnippet[];
|
|
6
|
+
export declare const snippetTextGeneration: (model: ModelDataMinimal, accessToken: string, provider: InferenceProvider, opts?: {
|
|
6
7
|
streaming?: boolean;
|
|
7
8
|
messages?: ChatCompletionInputMessage[];
|
|
8
9
|
temperature?: GenerationParameters["temperature"];
|
|
9
10
|
max_tokens?: GenerationParameters["max_tokens"];
|
|
10
11
|
top_p?: GenerationParameters["top_p"];
|
|
11
|
-
}) => InferenceSnippet;
|
|
12
|
-
export declare const snippetZeroShotClassification: (model: ModelDataMinimal, accessToken: string) => InferenceSnippet;
|
|
13
|
-
export declare const snippetFile: (model: ModelDataMinimal, accessToken: string) => InferenceSnippet;
|
|
14
|
-
export declare const curlSnippets: Partial<Record<PipelineType, (model: ModelDataMinimal, accessToken: string, opts?: Record<string, unknown>) => InferenceSnippet>>;
|
|
15
|
-
export declare function getCurlInferenceSnippet(model: ModelDataMinimal, accessToken: string, opts?: Record<string, unknown>): InferenceSnippet;
|
|
16
|
-
export declare function hasCurlInferenceSnippet(model: Pick<ModelDataMinimal, "pipeline_tag">): boolean;
|
|
12
|
+
}) => InferenceSnippet[];
|
|
13
|
+
export declare const snippetZeroShotClassification: (model: ModelDataMinimal, accessToken: string, provider: InferenceProvider) => InferenceSnippet[];
|
|
14
|
+
export declare const snippetFile: (model: ModelDataMinimal, accessToken: string, provider: InferenceProvider) => InferenceSnippet[];
|
|
15
|
+
export declare const curlSnippets: Partial<Record<PipelineType, (model: ModelDataMinimal, accessToken: string, provider: InferenceProvider, opts?: Record<string, unknown>) => InferenceSnippet[]>>;
|
|
16
|
+
export declare function getCurlInferenceSnippet(model: ModelDataMinimal, accessToken: string, provider: InferenceProvider, opts?: Record<string, unknown>): InferenceSnippet[];
|
|
17
17
|
//# sourceMappingURL=curl.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curl.d.ts","sourceRoot":"","sources":["../../../src/snippets/curl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAG1F,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAErE,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"curl.d.ts","sourceRoot":"","sources":["../../../src/snippets/curl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmC,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACpG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAG1F,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAErE,eAAO,MAAM,YAAY,UACjB,gBAAgB,eACV,MAAM,YACT,iBAAiB,KACzB,gBAAgB,EAelB,CAAC;AAEF,eAAO,MAAM,qBAAqB,UAC1B,gBAAgB,eACV,MAAM,YACT,iBAAiB,SACpB;IACN,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,0BAA0B,EAAE,CAAC;IACxC,WAAW,CAAC,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAClD,UAAU,CAAC,EAAE,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAChD,KAAK,CAAC,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;CACtC,KACC,gBAAgB,EA0ClB,CAAC;AAEF,eAAO,MAAM,6BAA6B,UAClC,gBAAgB,eACV,MAAM,YACT,iBAAiB,KACzB,gBAAgB,EAclB,CAAC;AAEF,eAAO,MAAM,WAAW,UAChB,gBAAgB,eACV,MAAM,YACT,iBAAiB,KACzB,gBAAgB,EAalB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,OAAO,CACjC,MAAM,CACL,YAAY,EACZ,CACC,KAAK,EAAE,gBAAgB,EACvB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC1B,gBAAgB,EAAE,CACvB,CA0BD,CAAC;AAEF,wBAAgB,uBAAuB,CACtC,KAAK,EAAE,gBAAgB,EACvB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,gBAAgB,EAAE,CAIpB"}
|
|
@@ -1,14 +1,27 @@
|
|
|
1
|
+
import { HF_HUB_INFERENCE_PROXY_TEMPLATE } from "../inference-providers.js";
|
|
1
2
|
import { stringifyGenerationConfig, stringifyMessages } from "./common.js";
|
|
2
3
|
import { getModelInputSnippet } from "./inputs.js";
|
|
3
|
-
export const snippetBasic = (model, accessToken) =>
|
|
4
|
-
|
|
4
|
+
export const snippetBasic = (model, accessToken, provider) => {
|
|
5
|
+
if (provider !== "hf-inference") {
|
|
6
|
+
return [];
|
|
7
|
+
}
|
|
8
|
+
return [
|
|
9
|
+
{
|
|
10
|
+
client: "curl",
|
|
11
|
+
content: `\
|
|
12
|
+
curl https://api-inference.huggingface.co/models/${model.id} \\
|
|
5
13
|
-X POST \\
|
|
6
14
|
-d '{"inputs": ${getModelInputSnippet(model, true)}}' \\
|
|
7
15
|
-H 'Content-Type: application/json' \\
|
|
8
16
|
-H 'Authorization: Bearer ${accessToken || `{API_TOKEN}`}'`,
|
|
9
|
-
}
|
|
10
|
-
|
|
17
|
+
},
|
|
18
|
+
];
|
|
19
|
+
};
|
|
20
|
+
export const snippetTextGeneration = (model, accessToken, provider, opts) => {
|
|
11
21
|
if (model.tags.includes("conversational")) {
|
|
22
|
+
const baseUrl = provider === "hf-inference"
|
|
23
|
+
? `https://api-inference.huggingface.co/models/${model.id}/v1/chat/completions`
|
|
24
|
+
: HF_HUB_INFERENCE_PROXY_TEMPLATE.replace("{{PROVIDER}}", provider) + "/v1/chat/completions";
|
|
12
25
|
// Conversational model detected, so we display a code snippet that features the Messages API
|
|
13
26
|
const streaming = opts?.streaming ?? true;
|
|
14
27
|
const exampleMessages = getModelInputSnippet(model);
|
|
@@ -18,45 +31,64 @@ export const snippetTextGeneration = (model, accessToken, opts) => {
|
|
|
18
31
|
max_tokens: opts?.max_tokens ?? 500,
|
|
19
32
|
...(opts?.top_p ? { top_p: opts.top_p } : undefined),
|
|
20
33
|
};
|
|
21
|
-
return
|
|
22
|
-
|
|
34
|
+
return [
|
|
35
|
+
{
|
|
36
|
+
client: "curl",
|
|
37
|
+
content: `curl '${baseUrl}' \\
|
|
23
38
|
-H 'Authorization: Bearer ${accessToken || `{API_TOKEN}`}' \\
|
|
24
39
|
-H 'Content-Type: application/json' \\
|
|
25
40
|
--data '{
|
|
26
41
|
"model": "${model.id}",
|
|
27
42
|
"messages": ${stringifyMessages(messages, {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
43
|
+
indent: "\t",
|
|
44
|
+
attributeKeyQuotes: true,
|
|
45
|
+
customContentEscaper: (str) => str.replace(/'/g, "'\\''"),
|
|
46
|
+
})},
|
|
32
47
|
${stringifyGenerationConfig(config, {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
48
|
+
indent: "\n ",
|
|
49
|
+
attributeKeyQuotes: true,
|
|
50
|
+
attributeValueConnector: ": ",
|
|
51
|
+
})},
|
|
37
52
|
"stream": ${!!streaming}
|
|
38
53
|
}'`,
|
|
39
|
-
|
|
54
|
+
},
|
|
55
|
+
];
|
|
40
56
|
}
|
|
41
57
|
else {
|
|
42
|
-
return snippetBasic(model, accessToken);
|
|
58
|
+
return snippetBasic(model, accessToken, provider);
|
|
43
59
|
}
|
|
44
60
|
};
|
|
45
|
-
export const snippetZeroShotClassification = (model, accessToken) =>
|
|
46
|
-
|
|
61
|
+
export const snippetZeroShotClassification = (model, accessToken, provider) => {
|
|
62
|
+
if (provider !== "hf-inference") {
|
|
63
|
+
return [];
|
|
64
|
+
}
|
|
65
|
+
return [
|
|
66
|
+
{
|
|
67
|
+
client: "curl",
|
|
68
|
+
content: `curl https://api-inference.huggingface.co/models/${model.id} \\
|
|
47
69
|
-X POST \\
|
|
48
70
|
-d '{"inputs": ${getModelInputSnippet(model, true)}, "parameters": {"candidate_labels": ["refund", "legal", "faq"]}}' \\
|
|
49
71
|
-H 'Content-Type: application/json' \\
|
|
50
72
|
-H 'Authorization: Bearer ${accessToken || `{API_TOKEN}`}'`,
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
|
|
73
|
+
},
|
|
74
|
+
];
|
|
75
|
+
};
|
|
76
|
+
export const snippetFile = (model, accessToken, provider) => {
|
|
77
|
+
if (provider !== "hf-inference") {
|
|
78
|
+
return [];
|
|
79
|
+
}
|
|
80
|
+
return [
|
|
81
|
+
{
|
|
82
|
+
client: "curl",
|
|
83
|
+
content: `curl https://api-inference.huggingface.co/models/${model.id} \\
|
|
54
84
|
-X POST \\
|
|
55
85
|
--data-binary '@${getModelInputSnippet(model, true, true)}' \\
|
|
56
86
|
-H 'Authorization: Bearer ${accessToken || `{API_TOKEN}`}'`,
|
|
57
|
-
}
|
|
87
|
+
},
|
|
88
|
+
];
|
|
89
|
+
};
|
|
58
90
|
export const curlSnippets = {
|
|
59
|
-
// Same order as in
|
|
91
|
+
// Same order as in tasks/src/pipelines.ts
|
|
60
92
|
"text-classification": snippetBasic,
|
|
61
93
|
"token-classification": snippetBasic,
|
|
62
94
|
"table-question-answering": snippetBasic,
|
|
@@ -81,11 +113,8 @@ export const curlSnippets = {
|
|
|
81
113
|
"object-detection": snippetFile,
|
|
82
114
|
"image-segmentation": snippetFile,
|
|
83
115
|
};
|
|
84
|
-
export function getCurlInferenceSnippet(model, accessToken, opts) {
|
|
116
|
+
export function getCurlInferenceSnippet(model, accessToken, provider, opts) {
|
|
85
117
|
return model.pipeline_tag && model.pipeline_tag in curlSnippets
|
|
86
|
-
? curlSnippets[model.pipeline_tag]?.(model, accessToken, opts) ??
|
|
87
|
-
:
|
|
88
|
-
}
|
|
89
|
-
export function hasCurlInferenceSnippet(model) {
|
|
90
|
-
return !!model.pipeline_tag && model.pipeline_tag in curlSnippets;
|
|
118
|
+
? curlSnippets[model.pipeline_tag]?.(model, accessToken, provider, opts) ?? []
|
|
119
|
+
: [];
|
|
91
120
|
}
|
|
@@ -1,19 +1,20 @@
|
|
|
1
|
+
import { type InferenceProvider } from "../inference-providers.js";
|
|
1
2
|
import type { PipelineType } from "../pipelines.js";
|
|
2
3
|
import type { ChatCompletionInputMessage, GenerationParameters } from "../tasks/index.js";
|
|
3
4
|
import type { InferenceSnippet, ModelDataMinimal } from "./types.js";
|
|
4
|
-
export declare const snippetBasic: (model: ModelDataMinimal, accessToken: string) => InferenceSnippet;
|
|
5
|
-
export declare const snippetTextGeneration: (model: ModelDataMinimal, accessToken: string, opts?: {
|
|
5
|
+
export declare const snippetBasic: (model: ModelDataMinimal, accessToken: string, provider: InferenceProvider) => InferenceSnippet[];
|
|
6
|
+
export declare const snippetTextGeneration: (model: ModelDataMinimal, accessToken: string, provider: InferenceProvider, opts?: {
|
|
6
7
|
streaming?: boolean;
|
|
7
8
|
messages?: ChatCompletionInputMessage[];
|
|
8
9
|
temperature?: GenerationParameters["temperature"];
|
|
9
10
|
max_tokens?: GenerationParameters["max_tokens"];
|
|
10
11
|
top_p?: GenerationParameters["top_p"];
|
|
11
|
-
}) => InferenceSnippet
|
|
12
|
-
export declare const snippetZeroShotClassification: (model: ModelDataMinimal, accessToken: string) => InferenceSnippet;
|
|
13
|
-
export declare const snippetTextToImage: (model: ModelDataMinimal, accessToken: string) => InferenceSnippet;
|
|
14
|
-
export declare const snippetTextToAudio: (model: ModelDataMinimal, accessToken: string) => InferenceSnippet;
|
|
15
|
-
export declare const
|
|
16
|
-
export declare const
|
|
17
|
-
export declare
|
|
18
|
-
export declare function
|
|
12
|
+
}) => InferenceSnippet[];
|
|
13
|
+
export declare const snippetZeroShotClassification: (model: ModelDataMinimal, accessToken: string) => InferenceSnippet[];
|
|
14
|
+
export declare const snippetTextToImage: (model: ModelDataMinimal, accessToken: string, provider: InferenceProvider) => InferenceSnippet[];
|
|
15
|
+
export declare const snippetTextToAudio: (model: ModelDataMinimal, accessToken: string, provider: InferenceProvider) => InferenceSnippet[];
|
|
16
|
+
export declare const snippetAutomaticSpeechRecognition: (model: ModelDataMinimal, accessToken: string, provider: InferenceProvider) => InferenceSnippet[];
|
|
17
|
+
export declare const snippetFile: (model: ModelDataMinimal, accessToken: string, provider: InferenceProvider) => InferenceSnippet[];
|
|
18
|
+
export declare const jsSnippets: Partial<Record<PipelineType, (model: ModelDataMinimal, accessToken: string, provider: InferenceProvider, opts?: Record<string, unknown>) => InferenceSnippet[]>>;
|
|
19
|
+
export declare function getJsInferenceSnippet(model: ModelDataMinimal, accessToken: string, provider: InferenceProvider, opts?: Record<string, unknown>): InferenceSnippet[];
|
|
19
20
|
//# sourceMappingURL=js.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"js.d.ts","sourceRoot":"","sources":["../../../src/snippets/js.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAG1F,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"js.d.ts","sourceRoot":"","sources":["../../../src/snippets/js.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAClF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAG1F,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAgBrE,eAAO,MAAM,YAAY,UACjB,gBAAgB,eACV,MAAM,YACT,iBAAiB,KACzB,gBAAgB,EA8ClB,CAAC;AAEF,eAAO,MAAM,qBAAqB,UAC1B,gBAAgB,eACV,MAAM,YACT,iBAAiB,SACpB;IACN,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,0BAA0B,EAAE,CAAC;IACxC,WAAW,CAAC,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAClD,UAAU,CAAC,EAAE,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAChD,KAAK,CAAC,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;CACtC,KACC,gBAAgB,EA6GlB,CAAC;AAEF,eAAO,MAAM,6BAA6B,UAAW,gBAAgB,eAAe,MAAM,KAAG,gBAAgB,EA2B5G,CAAC;AAEF,eAAO,MAAM,kBAAkB,UACvB,gBAAgB,eACV,MAAM,YACT,iBAAiB,KACzB,gBAAgB,EA4ClB,CAAC;AAEF,eAAO,MAAM,kBAAkB,UACvB,gBAAgB,eACV,MAAM,YACT,iBAAiB,KACzB,gBAAgB,EAgDlB,CAAC;AAEF,eAAO,MAAM,iCAAiC,UACtC,gBAAgB,eACV,MAAM,YACT,iBAAiB,KACzB,gBAAgB,EAsBlB,CAAC;AAEF,eAAO,MAAM,WAAW,UAChB,gBAAgB,eACV,MAAM,YACT,iBAAiB,KACzB,gBAAgB,EA6BlB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,OAAO,CAC/B,MAAM,CACL,YAAY,EACZ,CACC,KAAK,EAAE,gBAAgB,EACvB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC1B,gBAAgB,EAAE,CACvB,CA0BD,CAAC;AAEF,wBAAgB,qBAAqB,CACpC,KAAK,EAAE,gBAAgB,EACvB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,gBAAgB,EAAE,CAIpB"}
|