Ctrl K
ComunidadGuías…

Makefile

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
.DEFAULT_GOAL := help
SHELL := /bin/bash

WORKER_URL ?= http://localhost:8081
SCENARIO ?= bench/scenarios/stt-backends.toml
BENCH_ARGS ?= --dry-run

.PHONY: help
help: ## Show this help
	@grep -hE '^[a-zA-Z_-]+:.*?## ' $(MAKEFILE_LIST) \
		| awk 'BEGIN {FS = ":.*?## "}; {printf "  \033[1m%-14s\033[0m %s\n", $$1, $$2}'

.PHONY: sync
sync: ## Install the workspace (CPU deps only)
	uv sync

.PHONY: sync-gpu
sync-gpu: ## Full workspace + inference extras in one venv (mcp, worker, whisperX, ST, NVML, dev)
	uv sync --group gpu

.PHONY: test
test: ## Run the test suite (CPU only, no model downloads)
	uv run pytest -q

.PHONY: lock
lock: ## Refresh uv.lock
	uv lock

.PHONY: openapi
openapi: ## Regenerate worker/openapi.json — the mcp/worker contract
	uv run python worker/scripts/export_openapi.py

.PHONY: run-worker
run-worker: ## Run the worker locally (needs `make sync-gpu` for real inference)
	uv run vidtheque-worker

.PHONY: bench
bench: ## Run a bench scenario (SCENARIO=… BENCH_ARGS='--out bench/runs/')
	uv run python bench/run.py $(SCENARIO) --worker-url $(WORKER_URL) $(BENCH_ARGS)

.PHONY: bench-list
bench-list: ## List bundled bench scenarios
	uv run python bench/run.py --list

.PHONY: web-check
web-check: ## Run every web/ check CI runs, in the same order
	cd web && pnpm install --frozen-lockfile
	cd web && pnpm tokens:check
	cd web && pnpm format:check
	cd web && pnpm lint
	cd web && pnpm test
	cd web && pnpm typecheck
	cd web && pnpm build

.PHONY: images
images: ## Build the dependency bases and three runnable images locally
	worker_base_tag="$$(scripts/image_inputs.sh worker --tag)"; \
	docker build -f worker/Dockerfile.base -t "vidtheque-worker-base:$$worker_base_tag" .; \
	docker build --build-arg "BASE_IMAGE=vidtheque-worker-base:$$worker_base_tag" -f worker/Dockerfile -t vidtheque-worker:dev .
	mcp_base_tag="$$(scripts/image_inputs.sh mcp --tag)"; \
	docker build -f mcp/Dockerfile.base -t "vidtheque-mcp-base:$$mcp_base_tag" .; \
	docker build --build-arg "BASE_IMAGE=vidtheque-mcp-base:$$mcp_base_tag" -f mcp/Dockerfile -t vidtheque-mcp:dev .
	docker build -f web/Dockerfile -t vidtheque-web:dev web