Skip to content

Commit 6377fcf

Browse files
committed
♻️ Move generation code to tasks-gen
1 parent 730de17 commit 6377fcf

File tree

8 files changed

+256
-18
lines changed

8 files changed

+256
-18
lines changed

packages/tasks-gen/package.json

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"name": "@huggingface/tasks-gen",
3+
"packageManager": "[email protected]",
4+
"version": "0.13.1",
5+
"description": "Utilities to generate files for @huggingface/tasks, and avoid unnecessary deps in the published package",
6+
"repository": "https://github.com/huggingface/huggingface.js.git",
7+
"private": true,
8+
"scripts": {
9+
"lint": "eslint --quiet --fix --ext .cjs,.ts .",
10+
"lint:check": "eslint --ext .cjs,.ts .",
11+
"format": "prettier --write .",
12+
"format:check": "prettier --check .",
13+
"check": "tsc",
14+
"inference-codegen": "tsx scripts/inference-codegen.ts && prettier --write ../tasks/src/tasks/*/inference.ts",
15+
"inference-tgi-import": "tsx scripts/inference-tgi-import.ts && prettier --write ../tasks/src/tasks/text-generation/spec/*.json && prettier --write ../tasks/src/tasks/chat-completion/spec/*.json",
16+
"inference-tei-import": "tsx scripts/inference-tei-import.ts && prettier --write ../tasks/src/tasks/feature-extraction/spec/*.json"
17+
},
18+
"type": "module",
19+
"author": "Hugging Face",
20+
"license": "MIT",
21+
"devDependencies": {
22+
"@types/node": "^20.11.5",
23+
"quicktype-core": "https://github.com/huggingface/quicktype/raw/pack-18.0.17/packages/quicktype-core/quicktype-core-18.0.17.tgz",
24+
"type-fest": "^3.13.1"
25+
}
26+
}

packages/tasks-gen/pnpm-lock.yaml

Lines changed: 223 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/tasks/scripts/inference-codegen.ts renamed to packages/tasks-gen/scripts/inference-codegen.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,6 @@ const PYTHON_HEADER_FILE = `
2222
# - specs: https://github.com/huggingface/huggingface.js/tree/main/packages/tasks/src/tasks.
2323
`;
2424

25-
const PYTHON_DIR = "./.python_generated";
26-
2725
const rootDirFinder = function (): string {
2826
let currentPath = path.normalize(import.meta.url);
2927

@@ -172,8 +170,10 @@ async function postProcessOutput(path2generated: string, outputSpec: Record<stri
172170
return;
173171
}
174172

175-
const rootDir = rootDirFinder();
173+
const rootDir = path.join(rootDirFinder(), "..", "tasks");
176174
const tasksDir = path.join(rootDir, "src", "tasks");
175+
const PYTHON_DIR = path.join(rootDir, ".python_generated");
176+
177177
const allTasks = await Promise.all(
178178
(await fs.readdir(tasksDir, { withFileTypes: true }))
179179
.filter((entry) => entry.isDirectory())

packages/tasks/scripts/inference-tei-import.ts renamed to packages/tasks-gen/scripts/inference-tei-import.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ const rootDirFinder = function (): string {
2424
return "/";
2525
};
2626

27-
const rootDir = rootDirFinder();
27+
const rootDir = path.join(rootDirFinder(), "..", "tasks");
2828
const tasksDir = path.join(rootDir, "src", "tasks");
2929

3030
function toCamelCase(str: string, joiner = "") {

packages/tasks/scripts/inference-tgi-import.ts renamed to packages/tasks-gen/scripts/inference-tgi-import.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ const rootDirFinder = function (): string {
2424
return "/";
2525
};
2626

27-
const rootDir = rootDirFinder();
27+
const rootDir = path.join(rootDirFinder(), "..", "tasks");
2828
const tasksDir = path.join(rootDir, "src", "tasks");
2929

3030
function toCamelCase(str: string, joiner = "") {

packages/tasks/package.json

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,7 @@
3535
"watch": "npm-run-all --parallel watch:esm watch:cjs",
3636
"prepare": "pnpm run build",
3737
"check": "tsc",
38-
"test": "vitest run",
39-
"inference-codegen": "tsx scripts/inference-codegen.ts && prettier --write src/tasks/*/inference.ts",
40-
"inference-tgi-import": "tsx scripts/inference-tgi-import.ts && prettier --write src/tasks/text-generation/spec/*.json && prettier --write src/tasks/chat-completion/spec/*.json",
41-
"inference-tei-import": "tsx scripts/inference-tei-import.ts && prettier --write src/tasks/feature-extraction/spec/*.json"
38+
"test": "vitest run"
4239
},
4340
"type": "module",
4441
"files": [
@@ -51,11 +48,6 @@
5148
],
5249
"author": "Hugging Face",
5350
"license": "MIT",
54-
"devDependencies": {
55-
"@types/node": "^20.11.5",
56-
"quicktype-core": "https://github.com/huggingface/quicktype/raw/pack-18.0.17/packages/quicktype-core/quicktype-core-18.0.17.tgz",
57-
"type-fest": "^3.13.1"
58-
},
5951
"tshy": {
6052
"exports": {
6153
"./package.json": "./package.json",

packages/tasks/tsconfig.local.json

Lines changed: 0 additions & 4 deletions
This file was deleted.

pnpm-workspace.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ packages:
55
- "packages/agents"
66
- "packages/languages"
77
- "packages/tasks"
8+
- "packages/tasks-gen"
89
- "packages/gguf"
910
- "packages/jinja"
1011
- "packages/space-header"

0 commit comments

Comments
 (0)