Unsloth Studio is a web UI for training and running open models like Gemma 4, Qwen3.6, DeepSeek, gpt-oss locally.
This report presents the forensic synthetic code analysis of unslothai/unsloth, a Python project with 68,146 GitHub stars. SynthScan v2.0 examined 656,608 lines of code across 1850 source files, recording 14956 pattern matches distributed across 23 syntactic categories. The overall adjusted score of 25.7 places this repository in the Moderate AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 14956 distinct pattern matches across 23 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | unsloth-cli.py | 62 | def _tokenizer_for_raw_text_loader(tokenizer, is_mlx): | CODE |
| LOW | unsloth-cli.py | 68 | def _raw_text_loader_for_backend( | CODE |
| LOW | unsloth-cli.py | 83 | def _train_with_legacy_save_control(trainer, is_mlx): | CODE |
| LOW | unsloth-cli.py | 101 | def _iter_quantization_methods(quantization): | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 628 | def atomic_replace_from_tempfile(tmp_path: Path, destination: Path) -> None: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 633 | def source_archive_logical_name(upstream_tag: str) -> str: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 637 | def exact_source_archive_logical_name(source_commit: str) -> str: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 1137 | def upstream_source_archive_urls(tag: str) -> list[str]: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 1145 | def commit_source_archive_urls(repo: str, source_commit: str) -> list[str]: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 1153 | def release_asset_download_url( | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 4550 | def overlay_directory_for_choice(install_dir: Path, choice: AssetChoice, host: HostInfo) -> Path: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 4559 | def paired_runtime_dll_patterns(choice: AssetChoice) -> list[str]: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 5104 | def download_validation_model(path: Path, cache_path: Path | None = None) -> None: | CODE |
| LOW | studio/install_llama_prebuilt.py | 78 | def _external_hipinfo_on_path() -> bool: | CODE |
| LOW | studio/install_llama_prebuilt.py | 124 | def windows_hidden_subprocess_kwargs() -> dict[str, object]: | CODE |
| LOW | studio/install_llama_prebuilt.py | 247 | def _cuda_runtime_lines_for_major(major: int) -> list[str]: | CODE |
| LOW | studio/install_llama_prebuilt.py | 664 | def normalize_source_ref_kind(value: str | None) -> str | None: | CODE |
| LOW | studio/install_llama_prebuilt.py | 718 | def source_url_from_repo_slug(repo_slug: str | None) -> str | None: | CODE |
| LOW | studio/install_llama_prebuilt.py | 807 | def windows_cuda_upstream_asset_names(llama_tag: str, runtime: str) -> list[str]: | CODE |
| LOW | studio/install_llama_prebuilt.py | 814 | def windows_cuda_asset_aliases( | CODE |
| LOW | studio/install_llama_prebuilt.py | 839 | def _published_windows_cuda_runtime( | CODE |
| LOW | studio/install_llama_prebuilt.py | 1209 | def latest_upstream_release_tag() -> str: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1239 | def iter_release_payloads_by_time( | CODE |
| LOW | studio/install_llama_prebuilt.py | 1270 | def direct_release_matches_request(*, release_tag: str, llama_tag: str, requested_tag: str) -> bool: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1279 | def synthetic_checksums_for_release( | CODE |
| LOW | studio/install_llama_prebuilt.py | 1290 | def direct_upstream_release_plan( | CODE |
| LOW | studio/install_llama_prebuilt.py | 1502 | def resolve_simple_install_release_plans( | CODE |
| LOW | studio/install_llama_prebuilt.py | 1566 | def normalized_requested_llama_tag(requested_tag: str | None) -> str: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1606 | def parse_cuda_visible_devices(value: str | None) -> list[str] | None: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1615 | def supports_explicit_visible_device_matching(visible_devices: list[str] | None) -> bool: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1658 | def dir_provides_exact_library(directory: str | Path, library: str) -> bool: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1665 | def linux_runtime_dirs_for_required_libraries(required_libraries: Iterable[str]) -> list[str]: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1726 | def detected_linux_runtime_lines() -> tuple[list[str], dict[str, list[str]]]: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1837 | def parse_published_release_bundle( | CODE |
| LOW | studio/install_llama_prebuilt.py | 1939 | def parse_approved_release_checksums( | CODE |
| LOW | studio/install_llama_prebuilt.py | 2023 | def load_approved_release_checksums(repo: str, release_tag: str) -> ApprovedReleaseChecksums: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2048 | def iter_published_release_bundles( | CODE |
| LOW | studio/install_llama_prebuilt.py | 2089 | def _blackwell_capable_linux_runtime_lines( | CODE |
| LOW | studio/install_llama_prebuilt.py | 2113 | def linux_cuda_choice_from_release( | CODE |
| LOW | studio/install_llama_prebuilt.py | 2334 | def latest_published_linux_cuda_tag(host: HostInfo, published_repo: str) -> str | None: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2348 | def pinned_published_release_bundle( | CODE |
| LOW | studio/install_llama_prebuilt.py | 2359 | def validated_checksums_for_bundle( | CODE |
| LOW | studio/install_llama_prebuilt.py | 2386 | def published_release_matches_request(bundle: PublishedReleaseBundle, requested_ref: str) -> bool: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2400 | def resolve_published_release( | CODE |
| LOW | studio/install_llama_prebuilt.py | 2448 | def iter_resolved_published_releases( | CODE |
| LOW | studio/install_llama_prebuilt.py | 2507 | def resolve_requested_llama_tag( | CODE |
| LOW | studio/install_llama_prebuilt.py | 2546 | def resolve_requested_install_tag( | CODE |
| LOW | studio/install_llama_prebuilt.py | 2558 | def exact_source_archive_hash(checksums: ApprovedReleaseChecksums) -> ApprovedArtifactHash | None: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2564 | def source_clone_url_for_release( | CODE |
| LOW | studio/install_llama_prebuilt.py | 2576 | def source_build_plan_for_release(release: ResolvedPublishedRelease) -> SourceBuildPlan: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2625 | def resolve_source_build_plan( | CODE |
| LOW | studio/install_llama_prebuilt.py | 2773 | def windows_intel_gpu_in_registry() -> bool: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3137 | def pick_windows_cuda_runtime(host: HostInfo) -> str | None: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3148 | def compatible_linux_runtime_lines(host: HostInfo) -> list[str]: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3157 | def windows_runtime_line_info() -> dict[str, tuple[str, ...]]: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3170 | def detected_windows_runtime_lines() -> tuple[list[str], dict[str, list[str]]]: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3182 | def compatible_windows_runtime_lines(host: HostInfo) -> list[str]: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3193 | def runtime_line_from_cuda_version(cuda_version: str | None) -> str | None: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3207 | def detect_torch_cuda_runtime_preference(host: HostInfo) -> CudaRuntimePreference: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3409 | def _windows_cuda_attempt_covers_blackwell( | CODE |
| 9039 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | install.sh | 2245 | # ── Radeon repo wheel selection helpers ────────────────────────────────────── | COMMENT |
| MEDIUM | install.sh | 2331 | # ── ROCm-on-WSL bootstrap for AMD Strix Halo (gfx1151) ─────────────────────── | COMMENT |
| MEDIUM | install.sh | 2499 | # ── Strix Halo / Strix Point: force rocm7.2 wheels, bypass Radeon repo ─────── | COMMENT |
| MEDIUM | studio/setup.sh | 26 | # ── Maintainer-editable defaults ────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/setup.sh | 39 | # ────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/install_python_stack.py | 63 | # ── ROCm / AMD GPU support ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/install_python_stack.py | 1598 | # ── Color support ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …rc/features/studio/sections/dataset-preview-dialog.tsx | 116 | // ── AI Assist ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/src/features/chat/api/chat-adapter.ts | 2283 | // ── Audio model path (non-streaming) ───────────────────── | COMMENT |
| MEDIUM | …dio/frontend/src/features/training/api/datasets-api.ts | 64 | // ── AI Assist ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …/features/export/hooks/use-export-runtime-lifecycle.ts | 62 | // ── JSON log polling (tunnel-safe fallback) ────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/src/features/export/api/export-api.ts | 240 | // ───────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/src/features/export/api/export-api.ts | 242 | // ───────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/src/components/assistant-ui/sources.tsx | 22 | // ── Helpers ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/src/components/assistant-ui/sources.tsx | 37 | // ── Sub-components ─────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/src/components/assistant-ui/sources.tsx | 127 | // ── Source badge with hover card ───────────────────────────── | COMMENT |
| MEDIUM | studio/frontend/src/components/assistant-ui/sources.tsx | 179 | // ── Grouped sources with 2-row collapse ───────────────────── | COMMENT |
| MEDIUM | studio/frontend/src/components/assistant-ui/sources.tsx | 326 | // ── Exports ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …src/components/assistant-ui/model-selector/pickers.tsx | 596 | // ── GGUF Variant Expander ──────────────────────────────────── | COMMENT |
| MEDIUM | …src/components/assistant-ui/model-selector/pickers.tsx | 1043 | // ── Detect GGUF repos by naming convention or hub tag ──────────────────── | COMMENT |
| MEDIUM | …src/components/assistant-ui/model-selector/pickers.tsx | 1093 | // ── Hub Model Picker ────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/main.py | 45 | # ── Windows AMD ROCm DLL injection ────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/main.py | 170 | # ── WSL AMD Strix Halo (gfx1151): enable ROCDXG before any torch import ────── | COMMENT |
| MEDIUM | studio/backend/core/training/worker.py | 29 | # ── WSL AMD Strix Halo (gfx1151): enable ROCDXG before any torch import ────── | COMMENT |
| MEDIUM⚡ | studio/backend/core/training/training.py | 1216 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | studio/backend/core/training/training.py | 1218 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | studio/backend/core/training/training.py | 1648 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | studio/backend/core/training/training.py | 1650 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | studio/backend/core/training/training.py | 780 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | studio/backend/core/training/training.py | 782 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | studio/backend/core/training/training.py | 1183 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | studio/backend/core/training/training.py | 1185 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | studio/backend/core/inference/tool_call_parser.py | 2351 | # ── DeepSeek R1 / V3 / V3.1 ───────────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/tool_call_parser.py | 2522 | # ── GLM 4.5 / 4.6 / 4.7 ───────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/tool_call_parser.py | 2633 | # ── Kimi K2 / Moonshot ────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/audio_codecs.py | 73 | # ── Lazy loaders ───────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/audio_codecs.py | 176 | # ── Decoders ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/audio_codecs.py | 318 | # ── Cleanup ────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | studio/backend/core/inference/llama_cpp.py | 337 | # ── Pre-compiled patterns for GGUF shard detection ─────────── | COMMENT |
| MEDIUM⚡ | studio/backend/core/inference/llama_cpp.py | 342 | # ── Sliding-window-pattern resolver ─────────────────────────── | COMMENT |
| MEDIUM⚡ | studio/backend/core/inference/llama_cpp.py | 3767 | # ── Port allocation ─────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | studio/backend/core/inference/llama_cpp.py | 3776 | # ── Stdout drain (prevents pipe deadlock on Windows) ───────── | COMMENT |
| MEDIUM⚡ | studio/backend/core/inference/llama_cpp.py | 8941 | # ── Tool-calling agentic loop ────────────────────────────── | COMMENT |
| MEDIUM⚡ | studio/backend/core/inference/llama_cpp.py | 10352 | # ── TTS support ──────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 1649 | # ── Properties ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 2006 | # ── Binary discovery ────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 2153 | # ── llama-server capability probe ───────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 2327 | # ── GPU allocation ──────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 2625 | # ── NVIDIA via nvidia-smi ──────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 3163 | # ── KV cache VRAM estimation ───────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 3710 | # ── Variant fallback ──────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 4301 | # ── HF download (no lock held) ─────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 4817 | # ── Lifecycle ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 5452 | # ── Phase 1: kill old process (under lock, fast) ────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 5569 | # ── Phase 3: start llama-server (under lock) ────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 8479 | # ── Message building (OpenAI format) ────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 8523 | # ── Generation (proxy to llama-server) ──────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 9149 | # ── Re-prompt on plan-without-action ───────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 9212 | # ── Speculative buffer state machine ────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 10219 | # ── Prompt token counting ────────────────────────────────── | COMMENT |
| 1218 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | studio/setup.sh | 420 | except Exception: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 4546 | except Exception: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 5111 | except Exception as exc: | CODE |
| LOW⚡ | studio/install_llama_prebuilt.py | 5120 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 489 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1011 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1094 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1099 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1257 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 1556 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2026 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2041 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2061 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2540 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2639 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2658 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2816 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2854 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2872 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2917 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 2980 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3024 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3072 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3220 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3233 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3692 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3704 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3721 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 3744 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4364 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4470 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4498 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4649 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4763 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4787 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4863 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4891 | except Exception as rollback_exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4906 | except Exception as cleanup_exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 4923 | except Exception as cleanup_exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5069 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5091 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5199 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5218 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5224 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5258 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5363 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5428 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5894 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5917 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5958 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 5986 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 6010 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 6397 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 6517 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 6536 | except Exception: | CODE |
| LOW | studio/install_llama_prebuilt.py | 6734 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 6982 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 6991 | except Exception as exc: | CODE |
| LOW | studio/install_llama_prebuilt.py | 7255 | except Exception as exc: | CODE |
| LOW | studio/install_node_prebuilt.py | 248 | except Exception as exc: # noqa: BLE001 | CODE |
| 1746 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | studio/install_llama_prebuilt.py | 7 | CODE | |
| LOW | studio/install_node_prebuilt.py | 20 | CODE | |
| LOW | studio/install_python_stack.py | 12 | CODE | |
| LOW | studio/backend/cloudflare_tunnel.py | 14 | CODE | |
| LOW | studio/backend/run.py | 107 | CODE | |
| LOW | studio/backend/startup_banner.py | 9 | CODE | |
| LOW | studio/backend/colab.py | 16 | CODE | |
| LOW | studio/backend/main.py | 210 | CODE | |
| LOW | studio/backend/main.py | 290 | CODE | |
| LOW | studio/backend/main.py | 325 | CODE | |
| LOW | studio/backend/loggers/__init__.py | 4 | CODE | |
| LOW | studio/backend/core/import_guards.py | 6 | CODE | |
| LOW | studio/backend/core/_torchao_stub.py | 14 | CODE | |
| LOW | studio/backend/core/tool_healing.py | 26 | CODE | |
| LOW | studio/backend/core/data_recipe/service.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/__init__.py | 6 | CODE | |
| LOW | studio/backend/core/data_recipe/__init__.py | 6 | CODE | |
| LOW | studio/backend/core/data_recipe/jsonable.py | 4 | CODE | |
| LOW | …/backend/core/data_recipe/local_callable_validators.py | 4 | CODE | |
| LOW | …/backend/core/data_recipe/local_callable_validators.py | 8 | CODE | |
| LOW | studio/backend/core/data_recipe/huggingface.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/worker.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/worker.py | 7 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/worker.py | 8 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/constants.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/__init__.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/__init__.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/types.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/parse.py | 4 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/manager.py | 4 | CODE | |
| LOW | studio/backend/core/training/worker.py | 12 | CODE | |
| LOW | studio/backend/core/training/worker.py | 14 | CODE | |
| LOW | studio/backend/core/training/worker.py | 426 | CODE | |
| LOW | studio/backend/core/training/worker.py | 427 | CODE | |
| LOW | studio/backend/core/training/worker.py | 660 | CODE | |
| LOW | studio/backend/core/training/worker.py | 661 | CODE | |
| LOW | studio/backend/core/training/worker.py | 3312 | CODE | |
| LOW | studio/backend/core/training/worker.py | 2442 | CODE | |
| LOW | studio/backend/core/training/__init__.py | 6 | CODE | |
| LOW | studio/backend/core/training/__init__.py | 6 | CODE | |
| LOW | studio/backend/core/training/__init__.py | 6 | CODE | |
| LOW | studio/backend/core/training/s3_dataset.py | 17 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 34 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 54 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 60 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 65 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 69 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 2788 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 2789 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 2789 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 2789 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 2796 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 2796 | CODE | |
| LOW | studio/backend/core/training/training.py | 24 | CODE | |
| LOW | studio/backend/core/training/training.py | 27 | CODE | |
| LOW | studio/backend/core/rag/store.py | 12 | CODE | |
| LOW | studio/backend/core/rag/ingestion.py | 9 | CODE | |
| LOW | studio/backend/core/rag/chunking.py | 8 | CODE | |
| LOW | studio/backend/core/rag/locators.py | 12 | CODE | |
| LOW | studio/backend/core/rag/config.py | 6 | CODE | |
| 1153 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | studio/install_llama_prebuilt.py | 982 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 1021 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 1060 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 1290 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 1502 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 1726 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 2773 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 2824 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 3671 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 3801 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 3994 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 4225 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 4431 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 4635 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 4847 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 5354 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 5773 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 5924 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 6213 | CODE | |
| LOW | studio/install_llama_prebuilt.py | 6864 | CODE | |
| LOW | studio/install_node_prebuilt.py | 267 | CODE | |
| LOW | studio/install_node_prebuilt.py | 525 | CODE | |
| LOW | studio/install_node_prebuilt.py | 736 | CODE | |
| LOW | studio/install_python_stack.py | 401 | CODE | |
| LOW | studio/install_python_stack.py | 514 | CODE | |
| LOW | studio/install_python_stack.py | 782 | CODE | |
| LOW | studio/install_python_stack.py | 1020 | CODE | |
| LOW | studio/install_python_stack.py | 2053 | CODE | |
| LOW | studio/backend/cloudflare_tunnel.py | 62 | CODE | |
| LOW | studio/backend/cloudflare_tunnel.py | 137 | CODE | |
| LOW | studio/backend/cloudflare_tunnel.py | 253 | CODE | |
| LOW | studio/backend/cloudflare_tunnel.py | 289 | CODE | |
| LOW | studio/backend/run.py | 16 | CODE | |
| LOW | studio/backend/run.py | 232 | CODE | |
| LOW | studio/backend/run.py | 303 | CODE | |
| LOW | studio/backend/run.py | 543 | CODE | |
| LOW | studio/backend/run.py | 642 | CODE | |
| LOW | studio/backend/run.py | 668 | CODE | |
| LOW | studio/backend/run.py | 883 | CODE | |
| LOW | studio/backend/run.py | 1071 | CODE | |
| LOW | studio/backend/main.py | 53 | CODE | |
| LOW | studio/backend/loggers/config.py | 24 | CODE | |
| LOW | studio/backend/core/tool_healing.py | 171 | CODE | |
| LOW | studio/backend/core/tool_healing.py | 203 | CODE | |
| LOW | studio/backend/core/tool_healing.py | 240 | CODE | |
| LOW | studio/backend/core/tool_healing.py | 354 | CODE | |
| LOW | studio/backend/core/tool_healing.py | 436 | CODE | |
| LOW | studio/backend/core/tool_healing.py | 632 | CODE | |
| LOW | studio/backend/core/data_recipe/jobs/manager.py | 466 | CODE | |
| LOW | studio/backend/core/training/worker.py | 184 | CODE | |
| LOW | studio/backend/core/training/worker.py | 1200 | CODE | |
| LOW | studio/backend/core/training/worker.py | 1365 | CODE | |
| LOW | studio/backend/core/training/worker.py | 1414 | CODE | |
| LOW | studio/backend/core/training/worker.py | 2185 | CODE | |
| LOW | studio/backend/core/training/worker.py | 3282 | CODE | |
| LOW | studio/backend/core/training/worker.py | 99 | CODE | |
| LOW | studio/backend/core/training/worker.py | 1376 | CODE | |
| LOW | studio/backend/core/training/worker.py | 2987 | CODE | |
| LOW | studio/backend/core/training/worker.py | 2647 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 442 | CODE | |
| 648 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | studio/backend/core/inference/tool_call_parser.py | 1322 | """One ``.call`` value (string/number/true/false/null) at ``body[p:]``. | STRING |
| HIGH | …dio/backend/tests/test_training_progress_stream_nan.py | 5 | non-finite-loss stretches (loss reported as null) instead of replaying the | STRING |
| HIGH | studio/backend/tests/test_safetensors_tool_loop.py | 767 | '<|python_tag|>{"name":"foo","arguments":null}', | CODE |
| HIGH | studio/backend/tests/test_safetensors_tool_loop.py | 1023 | "enabled:true,attempts:5,threshold:1.5,nickname:null}<tool_call|>" | CODE |
| HIGH | studio/backend/tests/test_anthropic_fast_mode_edge.py | 38 | b'"role":"assistant","stop_reason":null,"usage":' | CODE |
| HIGH | studio/backend/tests/test_anthropic_fast_mode_edge.py | 50 | b'"role":"assistant","stop_reason":null,"usage":' | CODE |
| HIGH | studio/backend/tests/test_anthropic_fast_mode_edge.py | 397 | b'"role":"assistant","stop_reason":null,"usage":' | CODE |
| HIGH | studio/backend/tests/test_anthropic_fast_mode_edge.py | 334 | finish_reason=null); the frontend latches on | STRING |
| HIGH | …/backend/tests/test_anthropic_fast_mode_and_refusal.py | 38 | b'"stop_reason":null,"usage":{"input_tokens":1,"output_tokens":1}}}\n\n' | CODE |
| HIGH | …/backend/tests/test_anthropic_fast_mode_and_refusal.py | 49 | b'"stop_reason":null,"usage":{"input_tokens":1,"output_tokens":1}}}\n\n' | CODE |
| HIGH⚡ | studio/backend/tests/test_tool_call_parser_strict.py | 392 | calls = parse_tool_calls_from_text('[TOOL_CALLS][{"name":"get_time","arguments":null}]') | CODE |
| HIGH | studio/backend/tests/test_tool_call_parser_strict.py | 489 | text = '<|python_tag|>do.call(s="hi 😀", n=42, f=1.5, b=true, z=null)' | CODE |
| HIGH⚡ | studio/backend/tests/test_openai_tool_passthrough.py | 1146 | line = 'data: {"choices":[{"index":0,"delta":{"content":"hello"},"finish_reason":null}]}' | CODE |
| HIGH⚡ | studio/backend/tests/test_openai_tool_passthrough.py | 1155 | '"mentions \\"reasoning_content\\" in text"},"finish_reason":null}]}' | CODE |
| HIGH⚡ | studio/backend/tests/test_openai_tool_passthrough.py | 1163 | '"finish_reason":null}]}' | CODE |
| HIGH | studio/backend/tests/test_openai_tool_passthrough.py | 3948 | '"finish_reason":null}]}', | CODE |
| HIGH | studio/backend/tests/test_openai_tool_passthrough.py | 5170 | 'data: {"id":"chatcmpl-test","object":"chat.completion.chunk","created":1,"model":"m","choices":[{"i | CODE |
| HIGH | studio/backend/tests/test_openai_tool_passthrough.py | 5966 | yield 'data: {"choices":[{"index":0,"delta":{"content":"hi"},"finish_reason":null}]}' | CODE |
| HIGH | studio/backend/tests/test_openai_tool_passthrough.py | 6038 | yield 'data: {"choices":[{"index":0,"delta":{"content":"hi"},"finish_reason":null}]}' | CODE |
| HIGH | studio/backend/tests/test_consent_gate.py | 1034 | # {"AutoTokenizer": ["owner/repo--tokenization_x.Slow", null]}; the external code | COMMENT |
| HIGH⚡ | studio/backend/tests/test_consent_gate.py | 1214 | '{"auto_map": {"AutoTokenizer": ["tokenization_evil.EvilTokenizer", null]}}' | CODE |
| HIGH | studio/backend/tests/test_consent_gate.py | 1165 | '{"auto_map": {"AutoTokenizer": ["other/repo--tokenization_x.Slow", null]}}' | CODE |
| HIGH | …o/backend/tests/test_llama_cpp_wait_for_vram_settle.py | 579 | """On Windows signal.SIGKILL is undefined; the reaper must fall back to SIGTERM | STRING |
| HIGH⚡ | studio/backend/tests/test_sandbox_tools.py | 363 | assert self._find()("cat README.md && echo source") == set() | CODE |
| HIGH⚡ | studio/backend/tests/test_sandbox_tools.py | 364 | assert "source" not in self._find()("cat README.md && echo source") | CODE |
| HIGH⚡ | studio/backend/tests/test_sandbox_tools.py | 365 | assert "echo" not in self._find()("cat README.md && echo source") | CODE |
| HIGH⚡ | studio/backend/tests/test_sandbox_tools.py | 389 | assert "wget" in self._find()("cd /tmp && wget https://bad") | CODE |
| HIGH | studio/backend/tests/test_anthropic_messages.py | 1776 | # A resumed session replays assistant turns with `thinking` (and sometimes null) | COMMENT |
| HIGH | studio/backend/tests/test_anthropic_messages.py | 1924 | # user -> assistant(null) -> user is now accepted: the null assistant turn coerces | COMMENT |
| HIGH | studio/backend/models/inference.py | 1150 | # ``None`` on a pure tool-call turn (OpenAI content=null); string otherwise. | COMMENT |
| HIGH | studio/backend/models/inference.py | 1620 | # 400 on null; "" keeps the converter's `for block in content` safe). | COMMENT |
| HIGH | studio/backend/routes/inference.py | 1816 | key: (index) => Array.from(data.keys())[index] ?? null, | CODE |
| HIGH | studio/backend/routes/inference.py | 1817 | getItem: (key) => data.has(String(key)) ? data.get(String(key)) : null, | CODE |
| HIGH | studio/backend/routes/inference.py | 1853 | if (!data || data.type !== "unsloth:artifact-html" || typeof data.html !== "string") return; | CODE |
| HIGH⚡ | studio/backend/routes/inference.py | 5166 | Returns an empty payload (``phase=null, bytes=0``) when no load is in | STRING |
| HIGH | studio/backend/hub/utils/llm_assist.py | 266 | "label_mapping": null, | CODE |
| HIGH | tests/studio/test_frontend_dep_removal.py | 434 | '/** @type {import("react").FC} */\nconst Foo = () => null;', | CODE |
| HIGH | tests/studio/test_frontend_dep_removal.py | 853 | '/** @type {import("__adv_only_pkg_l__").Foo} */\n' "const x = null;\n", | CODE |
| HIGH | tests/studio/test_frontend_dep_removal.py | 1481 | {"build": "tsc -b && cross-env CI=1 biome check"}, | CODE |
| HIGH | tests/studio/test_sync_allow_scripts_pins.py | 53 | assert sync.split_spec("msw@2.14.3 || 2.15.0") == ("msw", "2.14.3 || 2.15.0") | CODE |
| HIGH | tests/studio/test_sync_allow_scripts_pins.py | 113 | assert got == {"msw@2.14.3 || 2.15.0": True} | CODE |
| HIGH⚡ | tests/studio/_playwright_robust.py | 429 | if (body !== null) opts.body = body; | CODE |
| HIGH⚡ | tests/studio/_playwright_robust.py | 439 | parsed = null; | CODE |
| HIGH⚡ | tests/studio/_playwright_robust.py | 442 | return {status: r.status, body: parsed, error: null}; | CODE |
| HIGH⚡ | tests/studio/_playwright_robust.py | 445 | return {status: 0, body: null, error: String(e)}; | CODE |
| HIGH | tests/studio/_playwright_robust.py | 74 | (document.head || document.documentElement).appendChild(style); | CODE |
| HIGH⚡ | tests/studio/_playwright_robust.py | 299 | """() => (document.body && document.body.innerText || '').slice(0, 800)""", | STRING |
| HIGH | tests/studio/test_chat_title_generation.py | 66 | assert "parts.push(`Assistant: ${assistant}`);" in block | CODE |
| HIGH⚡ | tests/studio/test_chat_title_generation.py | 125 | assert "finish_reason?: string | null;" in source | CODE |
| HIGH⚡ | tests/studio/test_chat_title_generation.py | 126 | assert 'if (choice?.finish_reason === "length") return null;' in model_block | CODE |
| HIGH⚡ | tests/studio/test_chat_title_generation.py | 127 | assert r"if (!raw || /<\/?think>/i.test(raw)) return null;" in model_block | CODE |
| HIGH | tests/studio/playwright_chat_ime_i18n.py | 518 | try { form && form.requestSubmit(); } catch (e) {} | STRING |
| HIGH | tests/studio/playwright_chat_ime_i18n.py | 576 | const form = ta && ta.closest('form'); | STRING |
| HIGH⚡ | tests/studio/test_chat_response_details_ui_contract.py | 77 | assert "!isExternalRequest && supportsTools && toolsEnabled" in src | CODE |
| HIGH⚡ | tests/studio/test_chat_response_details_ui_contract.py | 78 | assert "!isExternalRequest && supportsTools && codeToolsEnabled" in src | CODE |
| HIGH⚡ | tests/studio/test_chat_preset_builtin_invariants.py | 96 | matches: def ? isSamePresetConfig(def.params, DEFAULT_INFERENCE_PARAMS) : null, | CODE |
| HIGH | tests/studio/install/test_rocm_support.py | 3468 | call = source.find("\n_maybe_reroute_strixhalo_to_2404 || true") | CODE |
| HIGH | tests/studio/install/test_pr4562_bugfixes.py | 385 | if ! command -v cmake &>/dev/null; then | CODE |
| HIGH | tests/studio/install/test_pr4562_bugfixes.py | 387 | elif ! command -v git &>/dev/null; then | CODE |
| HIGH | tests/studio/install/test_pr4562_bugfixes.py | 419 | if ! command -v cmake &>/dev/null; then | CODE |
| 19 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | install.sh | 1 | #!/bin/sh | COMMENT |
| LOW | install.sh | 1741 | COMMENT | |
| LOW | install.sh | 1901 | else | COMMENT |
| LOW | install.sh | 2141 | fi | COMMENT |
| LOW | install.sh | 2501 | # that causes a segfault in torch._grouped_mm (moe_utils.py line 167). | COMMENT |
| LOW | install.sh | 2781 | fi | COMMENT |
| LOW | build.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | studio/setup.sh | 21 | ;; | COMMENT |
| LOW | studio/setup.sh | 261 | # device is deliberately hidden (mixed AMD+NVIDIA hosts steering work to the | COMMENT |
| LOW | studio/setup.sh | 741 | mv "${_gi}._twbuild" "$_gi" 2>/dev/null || true | COMMENT |
| LOW | studio/__init__.py | 1 | # SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | studio/install_llama_prebuilt.py | 2921 | # subdir per GPU here regardless of nvidia-smi state, so a host whose | COMMENT |
| LOW | studio/install_llama_prebuilt.py | 3801 | def resolve_upstream_asset_choice(host: HostInfo, llama_tag: str) -> AssetChoice: | COMMENT |
| LOW | studio/install_python_stack.py | 821 | env = _amd_smi_env() if cmd[0] == "amd-smi" else None, | COMMENT |
| LOW | studio/install_python_stack.py | 2361 | # patch_package_file( | COMMENT |
| LOW | …nd/src/features/settings/components/usage-examples.tsx | 541 | // direction. `codex` needs a GGUF model (unsloth_cli's | COMMENT |
| LOW | studio/frontend/src/features/chat/shared-composer.tsx | 641 | const supportsBuiltinWebFetch = providerSupportsBuiltinWebFetch( | COMMENT |
| LOW | …/features/chat/components/openai-code-exec-section.tsx | 261 | // Auto-bind the active thread to the most-recently-active container when the | COMMENT |
| LOW | studio/frontend/src/features/profile/sloth-avatars.ts | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | …rc/features/hub/download-manager/transport-conflict.ts | 81 | } | COMMENT |
| LOW | …dio/frontend/src/features/hub/lib/hub-feature-flags.ts | 1 | // SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | …omponents/assistant-ui/use-intent-aware-autoscroll.tsx | 41 | const AT_BOTTOM_THRESHOLD_PX = 2; | COMMENT |
| LOW | …omponents/assistant-ui/use-intent-aware-autoscroll.tsx | 361 | COMMENT | |
| LOW | studio/backend/__init__.py | 1 | # SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | studio/backend/core/training/worker.py | 2481 | import torch as _torch | COMMENT |
| LOW | studio/backend/core/training/worker.py | 2741 | # Classify unified vs discrete via _rocm_classify_unified_memory | COMMENT |
| LOW | studio/backend/core/inference/tools.py | 381 | "AWS_EC2_METADATA_DISABLED", | COMMENT |
| LOW | studio/backend/core/inference/external_provider.py | 2201 | # code_execution state (bash / text_editor sub-tools); kept | COMMENT |
| LOW | studio/backend/core/inference/external_provider.py | 2221 | # it onto the assistant message for next-turn round-tripping. | COMMENT |
| LOW | studio/backend/core/inference/external_provider.py | 2781 | thinking_open = False | COMMENT |
| LOW | studio/backend/core/inference/external_provider.py | 3301 | # native parts; the matching role="tool" must be skipped | COMMENT |
| LOW | studio/backend/core/inference/external_provider.py | 5041 | # per call), so the aggregate list is shared and applied to | COMMENT |
| LOW | studio/backend/core/inference/llama_cpp.py | 341 | COMMENT | |
| LOW | studio/backend/core/inference/llama_cpp.py | 2901 | # (~2-3%); kept >= 3% as a floor (0.90 dropped 91-94% fits to CPU offload, #5106). | COMMENT |
| LOW | studio/backend/core/inference/llama_cpp.py | 3461 | _MMPROJ_VRAM_SAFETY = 1.4 # mmproj worst-case buffer vs file size (runtime ~1.3x) | COMMENT |
| LOW | studio/backend/core/inference/llama_cpp.py | 5061 | # term. cache_type_kv here is always non-quantized (tensor forces f16), so | COMMENT |
| LOW | studio/backend/core/inference/llama_cpp.py | 5461 | # ── Phase 2: download (NO lock held, so cancel can proceed) ── | COMMENT |
| LOW | studio/backend/core/inference/llama_cpp.py | 5581 | ctx_override = parse_ctx_override(extra_args) | COMMENT |
| LOW | studio/backend/core/inference/llama_cpp.py | 5601 | # an inherited tensor LLAMA_ARG_SPLIT_MODE flips it on (the child | COMMENT |
| LOW | studio/backend/core/inference/llama_cpp.py | 5921 | # Context-linear compute-buffer growth (flash-attn KQ mask + | COMMENT |
| LOW | studio/backend/core/inference/llama_cpp.py | 6761 | if "--threads" not in cmd: | COMMENT |
| LOW | studio/backend/core/inference/llama_cpp.py | 6821 | if getattr(_torch.version, "hip", None) is not None: | COMMENT |
| LOW | studio/backend/core/inference/llama_cpp.py | 6841 | COMMENT | |
| LOW | studio/backend/core/inference/llama_cpp.py | 7681 | COMMENT | |
| LOW | studio/backend/core/inference/llama_cpp.py | 9141 | _MAX_BUFFER_CHARS = 32 | COMMENT |
| LOW | studio/backend/core/inference/llama_cpp.py | 9661 | # synthesis streams correctly even if content was emitted | COMMENT |
| LOW | studio/backend/core/inference/orchestrator.py | 661 | # Latch the target model so the recheck below can detect a switch that completed | COMMENT |
| LOW | studio/backend/core/inference/orchestrator.py | 1101 | self.models.clear() | COMMENT |
| LOW | studio/backend/core/inference/orchestrator.py | 1141 | if model_name != self.active_model_name and model_name not in self.models: | COMMENT |
| LOW | studio/backend/core/inference/chat_templates.py | 21 | COMMENT | |
| LOW | …po-seed/src/data_designer_github_repo_seed/__init__.py | 1 | # SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | …ata_designer_github_repo_seed/scraper_impl/__init__.py | 1 | # SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | …nd/plugins/data-designer-unstructured-seed/__init__.py | 1 | # SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | studio/backend/tests/__init__.py | 1 | # SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | studio/backend/tests/test_orchestrator_unload_cancel.py | 1501 | # A compare request whose _start_dispatcher is queued behind an unload's | COMMENT |
| LOW | studio/backend/tests/test_llama_cpp_mtp_detection.py | 1601 | chat_template_override = None, | COMMENT |
| LOW | studio/backend/utils/mlx_repair.py | 61 | COMMENT | |
| LOW | studio/backend/utils/__init__.py | 1 | # SPDX-License-Identifier: AGPL-3.0-only | COMMENT |
| LOW | studio/backend/utils/models/model_config.py | 2261 | # import torch | COMMENT |
| LOW | studio/backend/utils/models/model_config.py | 2301 | with open(adapter_config_path, "r") as f: | COMMENT |
| 238 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | studio/backend/main.py | 534 | # RAG-warm threads). Default to None until the thread populates them. | COMMENT |
| MEDIUM | studio/backend/main.py | 648 | # In Colab, the kernel/output scaffolding injects scripts and fetch/WS from | COMMENT |
| MEDIUM | studio/backend/core/inference/tool_call_parser.py | 244 | # that block is chain-of-thought, not a real call. | COMMENT |
| MEDIUM | studio/backend/core/inference/tools.py | 800 | # the RAG stack; dispatch imports it lazily. | COMMENT |
| MEDIUM | studio/backend/core/inference/tools.py | 1085 | # Forced first-pass RAG retrieval: a high cosine floor keeps it precise (fires on | COMMENT |
| MEDIUM | studio/backend/core/inference/external_provider.py | 2792 | # https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/handle-str | COMMENT |
| MEDIUM | studio/backend/core/inference/external_provider.py | 2792 | # https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/handle-str | COMMENT |
| MEDIUM⚡ | studio/backend/core/inference/llama_cpp.py | 1965 | # frames are dropped by the agentic tool loop; never route it through tools. | COMMENT |
| MEDIUM⚡ | studio/backend/core/inference/llama_cpp.py | 1972 | # supports_tools is forced off for DiffusionGemma (its agentic loop drops the | COMMENT |
| MEDIUM⚡ | studio/backend/core/inference/llama_cpp.py | 8941 | # ── Tool-calling agentic loop ────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 8985 | # Forced first-pass RAG so a doc question doesn't lose to web_search. Emits | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 9145 | # RAG: cap knowledge-base searches per assistant turn. The controller is | COMMENT |
| MEDIUM | studio/backend/core/inference/llama_cpp.py | 9973 | # RAG: cap paraphrased KB re-searches that slip past the dup guard. | COMMENT |
| MEDIUM | studio/backend/core/inference/safetensors_agentic.py | 455 | # Forced first-pass RAG (mirrors the GGUF loop) so doc Qs don't lose to web_search. | COMMENT |
| MEDIUM | studio/backend/core/inference/safetensors_agentic.py | 478 | # RAG: cap knowledge-base searches per assistant turn (controller-agnostic). | COMMENT |
| MEDIUM | studio/backend/core/inference/safetensors_agentic.py | 1105 | # RAG: cap paraphrased KB re-searches that slip past the dup guard. | COMMENT |
| MEDIUM⚡ | studio/backend/core/inference/local_model_resolver.py | 202 | # Skip what Studio hides from its pickers (validation probe, RAG embed | COMMENT |
| MEDIUM | studio/backend/tests/test_openai_auto_switch.py | 691 | # The llama.cpp validation probe and RAG embedding weights are hidden from | COMMENT |
| MEDIUM | studio/backend/tests/conftest.py | 114 | # ── RAG fixtures ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_safetensors_tool_loop.py | 974 | # inside the reasoning is chain-of-thought, not a real call; only the | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_safetensors_tool_loop.py | 4148 | # the agentic loop is gated off and the real call is dropped. | COMMENT |
| MEDIUM | studio/backend/tests/test_safetensors_tool_loop.py | 698 | # strip must drop it so the raw chain-of-thought does not leak into the | COMMENT |
| MEDIUM | studio/backend/tests/test_safetensors_tool_loop.py | 1091 | # agentic loop can collapse a looping model's repeated calls. | COMMENT |
| MEDIUM | studio/backend/tests/test_safetensors_tool_loop.py | 2322 | # The agentic loop must recognise Llama-3's <|python_tag|> | COMMENT |
| MEDIUM | studio/backend/tests/test_safetensors_tool_loop.py | 2406 | # DeepSeek V3.1 emission inside the agentic loop -- the buffer state machine must wake on | COMMENT |
| MEDIUM | …/backend/tests/test_anthropic_fast_mode_and_refusal.py | 10 | https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/handle-streaming-refusals | STRING |
| MEDIUM⚡ | studio/backend/tests/test_openai_tool_passthrough.py | 264 | # Empty tool output (mkdir, git add, ...) is routine in agentic loops; | COMMENT |
| MEDIUM | studio/backend/tests/test_bypass_permissions.py | 226 | # ── agentic loop forwards disable_sandbox, never gates under bypass ── | COMMENT |
| MEDIUM | studio/backend/tests/test_gguf_tool_non_streaming.py | 30 | # The agentic loop runs one tool, then the model answers. Event shapes | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_anthropic_messages.py | 1731 | # a Studio server-tool alias must NOT enter the agentic loop then. | COMMENT |
| MEDIUM | studio/backend/utils/datasets/model_mappings.py | 599 | # no later user turn; "<think>" is scaffolding GLM-4.x renders as a lone | COMMENT |
| MEDIUM | studio/backend/models/inference.py | 612 | # normalize to "" instead of a 400 agentic clients treat as fatal. | COMMENT |
| MEDIUM | studio/backend/requirements/no-torch-runtime.txt | 72 | # RAG store + document parsing, mirroring studio.txt. Pinned here because | COMMENT |
| MEDIUM | studio/backend/requirements/no-torch-runtime.txt | 73 | # this file installs --no-deps; without them Studio runs with RAG disabled. | COMMENT |
| MEDIUM | studio/backend/requirements/studio.txt | 21 | # RAG (knowledge bases, hybrid retrieval). sentence-transformers lives in | COMMENT |
| MEDIUM⚡ | studio/backend/storage/rag_db.py | 30 | except Exception as exc: # noqa: BLE001 - any import failure disables RAG | CODE |
| MEDIUM⚡ | studio/backend/routes/inference.py | 2247 | # small local models can hallucinate a missing tool call instead of following | COMMENT |
| MEDIUM⚡ | studio/backend/routes/inference.py | 8112 | # Mirrors the GGUF agentic loop's event shape. Disabled for vision turns | COMMENT |
| MEDIUM | studio/backend/routes/inference.py | 2304 | # Nudge appended when the RAG knowledge-base tool is active: ground answers in | COMMENT |
| MEDIUM | studio/backend/routes/inference.py | 2333 | # Drop the RAG tool without a scope: nothing to search over. | COMMENT |
| MEDIUM | studio/backend/routes/inference.py | 6700 | # never gets injected. (The agentic tool loop below does support | COMMENT |
| MEDIUM | studio/backend/routes/inference.py | 6827 | # ── Tool-calling path (agentic loop) ────────────────── | COMMENT |
| MEDIUM | studio/backend/routes/inference.py | 7284 | # Non-streaming JSON: drain the agentic generator into one | COMMENT |
| MEDIUM | studio/backend/routes/inference.py | 8169 | # RAG nudge, mirroring the GGUF path. | COMMENT |
| MEDIUM | studio/backend/routes/inference.py | 11575 | # The server-side agentic loop doesn't support multimodal input -- matches | COMMENT |
| MEDIUM | studio/backend/routes/inference.py | 11758 | # Anthropic passthrough has no rag_scope field (RAG is local-only). | COMMENT |
| MEDIUM | studio/backend/routes/chat_history.py | 343 | # Best-effort: drop the project's RAG sources (lazy import keeps RAG optional). | COMMENT |
| MEDIUM⚡ | tests/studio/install/test_rocm_support.py | 1224 | # RAG embedder -- runs in the main backend process and also needs the stub. | COMMENT |
| MEDIUM⚡ | unsloth_cli/tests/test_start.py | 1853 | # Pin the real context window (top-level override) and compact at 90% of it. | COMMENT |
| MEDIUM | unsloth_cli/commands/start.py | 881 | # path (C:...). Scalar knobs (e.g. a numeric context window) must pass through | COMMENT |
| MEDIUM | scripts/scan_packages.py | 197 | # Container / orchestration abuse | COMMENT |
| MEDIUM | .github/workflows/studio-inference-smoke.yml | 398 | # the server-side agentic loop and breaks the standard | COMMENT |
| MEDIUM | .github/workflows/studio-inference-smoke.yml | 901 | # response_format requests aren't routed through the agentic | COMMENT |
| MEDIUM | .github/workflows/studio-mac-inference-smoke.yml | 384 | # the server-side agentic loop and breaks the standard | COMMENT |
| MEDIUM | .github/workflows/studio-mac-inference-smoke.yml | 570 | # 123 * 456 = 56088. The agentic loop streams SSE; we | COMMENT |
| MEDIUM | .github/workflows/studio-mac-inference-smoke.yml | 599 | # the SAME server-side agentic loop wiring (only the registry | COMMENT |
| MEDIUM | .github/workflows/studio-mac-inference-smoke.yml | 793 | # response_format requests aren't routed through the agentic | COMMENT |
| MEDIUM | unsloth/models/sentence_transformer.py | 189 | # 4. Patch environment so Unsloth treats this embedding model correctly | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | install.sh | 1658 | # elevate for the target distro; the child already printed the NEED_SUDO line, so | COMMENT |
| LOW | install.sh | 2382 | # just set, which dies with the installer. Persist the drop-in so login | COMMENT |
| MEDIUM | studio/frontend/package-lock.json | 14032 | "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.3.tgz", | CODE |
| MEDIUM | studio/backend/tests/test_anthropic_citations_edge.py | 23 | # ── shared SSE harness ─────────────────────────────────────── | COMMENT |
| MEDIUM | studio/backend/tests/test_trained_model_scan.py | 145 | # Assert on the logger directly: robust to the logging backend (structlog vs stub). | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_consent_gate.py | 286 | # A Hub repo id is case-insensitive; folded so the pin is casing-robust. | COMMENT |
| MEDIUM⚡ | studio/backend/tests/test_mtp_vram_budget.py | 484 | # robust to that and to any formatter line-wrapping. | COMMENT |
| MEDIUM | studio/backend/routes/inference.py | 11903 | # dropping every later tool_start and its paired tool_end (robust | COMMENT |
| MEDIUM⚡ | tests/conftest.py | 136 | # (they run at import time in unsloth/import_fixes.py). The harness above lets | COMMENT |
| MEDIUM | tests/_zoo_rocm_spoof.py | 35 | """Load the sibling CUDA spoof by path (robust to sys.path), so we reuse its | STRING |
| MEDIUM | tests/_zoo_aggressive_cuda_spoof.py | 3 | # tests/conftest.py's harness with deeper patches that unblock more patch_* / | COMMENT |
| MEDIUM | tests/studio/run_real_mlx_smoke.py | 327 | # 13-seed sweep hit post_train_loss <= 0.05, so 0.1 is a robust bound. | COMMENT |
| MEDIUM⚡ | tests/studio/install/test_pr5940_followups.py | 119 | # amd-smi does not auto-elevate on Linux, so no env override is applied. | COMMENT |
| MEDIUM⚡ | tests/studio/install/test_pr5940_followups.py | 244 | # Linux amd-smi does not elevate -> always allowed. | COMMENT |
| MEDIUM | tests/studio/install/test_pr5940_followups.py | 718 | # desktop app to elevate for the target distro. The reroute must propagate that | COMMENT |
| MEDIUM | tests/utils/aime_eval.py | 429 | """Generate comprehensive comparison for AIME evaluation results""" | STRING |
| LOW | tests/saving/test_imatrix_export.py | 220 | # output_gguf is the 2nd-to-last token before quant_type/threads; just create it. | COMMENT |
| MEDIUM | …/saving/language_models/test_save_merged_grpo_model.py | 370 | """Generate comprehensive comparison of multiple model results""" | STRING |
| MEDIUM | .github/workflows/version-compat-ci.yml | 291 | # runner under the tests/conftest.py spoof harness -- no GPU, no training. | COMMENT |
| MEDIUM | .github/workflows/studio-inference-smoke.yml | 285 | # assertion robust to formatting jitter. | COMMENT |
| MEDIUM⚡ | .github/workflows/consolidated-tests-ci.yml | 411 | # tests/conftest.py's GPU-spoof harness applies before the import. | COMMENT |
| MEDIUM⚡ | .github/workflows/consolidated-tests-ci.yml | 412 | # _zoo_aggressive_cuda_spoof extends conftest's harness with deeper | COMMENT |
| MEDIUM | .github/workflows/consolidated-tests-ci.yml | 185 | # so we inherit the same CPU-spoof harness in tests/conftest.py and | COMMENT |
| MEDIUM | .github/workflows/consolidated-tests-ci.yml | 400 | # picks up tests/conftest.py, whose GPU-spoof harness (lines 84-141) | COMMENT |
| MEDIUM | .github/workflows/consolidated-tests-ci.yml | 507 | # Routed through pytest so tests/conftest.py's GPU-spoof harness | COMMENT |
| MEDIUM | .github/workflows/consolidated-tests-ci.yml | 519 | # tests/conftest.py GPU-spoof harness applies. continue-on-error | COMMENT |
| MEDIUM | .github/workflows/consolidated-tests-ci.yml | 635 | # unsloth_zoo.tiled_mlp, so the GPU-spoof harness covers | COMMENT |
| MEDIUM | .github/workflows/consolidated-tests-ci.yml | 941 | # module globals after import so this shim is robust to that | COMMENT |
| MEDIUM | .github/workflows/consolidated-tests-ci.yml | 1733 | # harness so unsloth_zoo.temporary_patches imports are clean. | COMMENT |
| MEDIUM | .github/workflows/consolidated-tests-ci.yml | 2123 | # without an accelerator and the spoof harness only kicks in under | COMMENT |
| MEDIUM | .github/workflows/studio-mac-inference-smoke.yml | 279 | # assertion robust to formatting jitter. | COMMENT |
| MEDIUM | .github/workflows/studio-backend-ci.yml | 122 | # compile a tiny TS harness against the frontend chat sources. | COMMENT |
| MEDIUM | .github/workflows/notebooks-ci.yml | 17 | # tests/_zoo_aggressive_cuda_spoof.py harness so `import unsloth` | COMMENT |
| MEDIUM | unsloth/tokenizer_utils.py | 564 | # Let's utilize them | COMMENT |
| LOW | unsloth/tokenizer_utils.py | 582 | # Cannot just use use_fast = False as per https://twitter.com/danielhanchen/status/1789659394302718373 | COMMENT |
| LOW | unsloth/tokenizer_utils.py | 1434 | # Cannot just use use_fast = False as per https://twitter.com/danielhanchen/status/17896593943027183 | COMMENT |
| LOW | unsloth/import_fixes.py | 578 | # trl.import_utils to bool; the existing accessors that just return | COMMENT |
| MEDIUM | unsloth/kernels/rms_layernorm.py | 139 | # exactly. Essentially all in float32! | COMMENT |
| MEDIUM | unsloth/models/rl_replacements.py | 1882 | # Essentially, for VLMs we do not go via the optimized path in models/, | COMMENT |
| LOW | unsloth/dataprep/raw_text.py | 272 | # so just use re.findall with compiled flags | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | studio/backend/run.py | 1071 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 491 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 876 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 2220 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 2749 | CODE | |
| LOW | studio/backend/core/training/trainer.py | 1148 | CODE | |
| LOW | studio/backend/core/training/training.py | 362 | CODE | |
| LOW | studio/backend/core/training/training.py | 420 | CODE | |
| LOW | studio/backend/core/training/training.py | 452 | CODE | |
| LOW | studio/backend/core/inference/mlx_inference.py | 180 | CODE | |
| LOW | studio/backend/core/inference/mlx_inference.py | 384 | CODE | |
| LOW | studio/backend/core/inference/external_provider.py | 816 | CODE | |
| LOW | studio/backend/core/inference/external_provider.py | 1625 | CODE | |
| LOW | studio/backend/core/inference/external_provider.py | 2943 | CODE | |
| LOW | studio/backend/core/inference/llama_cpp.py | 3603 | CODE | |
| LOW | studio/backend/core/inference/llama_cpp.py | 4956 | CODE | |
| LOW | studio/backend/core/inference/llama_cpp.py | 5347 | CODE | |
| LOW | studio/backend/core/inference/llama_cpp.py | 8734 | CODE | |
| LOW | studio/backend/core/inference/llama_cpp.py | 8943 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 423 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 628 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 885 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 1226 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 1276 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 1387 | CODE | |
| LOW | studio/backend/core/inference/orchestrator.py | 1603 | CODE | |
| LOW | studio/backend/core/inference/inference.py | 816 | CODE | |
| LOW | studio/backend/core/inference/inference.py | 892 | CODE | |
| LOW | studio/backend/core/inference/inference.py | 935 | CODE | |
| LOW | studio/backend/core/inference/inference.py | 1448 | CODE | |
| LOW | studio/backend/core/inference/safetensors_agentic.py | 415 | CODE | |
| LOW | studio/backend/tests/test_mtp_mla_target_ctx.py | 76 | CODE | |
| LOW | studio/backend/tests/test_mtp_vram_budget.py | 94 | CODE | |
| LOW | studio/backend/utils/hf_xet_fallback.py | 172 | CODE | |
| LOW | studio/backend/utils/hf_xet_fallback.py | 283 | CODE | |
| LOW | studio/backend/utils/hardware/hardware.py | 1523 | CODE | |
| LOW | studio/backend/utils/hardware/hardware.py | 1652 | CODE | |
| LOW | studio/backend/utils/hardware/hardware.py | 1796 | CODE | |
| LOW | studio/backend/utils/datasets/dataset_utils.py | 414 | CODE | |
| LOW | studio/backend/utils/datasets/dataset_utils.py | 865 | CODE | |
| LOW | studio/backend/utils/datasets/llm_assist.py | 375 | CODE | |
| LOW | studio/backend/utils/datasets/chat_templates.py | 127 | CODE | |
| LOW | studio/backend/routes/inference.py | 12193 | CODE | |
| LOW | studio/backend/routes/inference.py | 12256 | CODE | |
| LOW | studio/backend/routes/inference.py | 12447 | CODE | |
| LOW | studio/backend/hub/services/models/common.py | 418 | CODE | |
| LOW | tests/studio/install/test_selection_logic.py | 192 | CODE | |
| LOW | tests/studio/install/test_cuda_repair.py | 53 | CODE | |
| LOW | tests/studio/load_freeze/llama_server_shim.py | 176 | CODE | |
| LOW | tests/saving/test_prewarm_base_model_hub_cache.py | 67 | CODE | |
| LOW | unsloth_cli/commands/studio.py | 693 | CODE | |
| LOW | unsloth_cli/commands/studio.py | 1035 | CODE | |
| LOW | unsloth_cli/commands/export.py | 35 | CODE | |
| LOW | unsloth_cli/commands/start.py | 1465 | CODE | |
| LOW | unsloth_cli/commands/start.py | 1549 | CODE | |
| LOW | unsloth_cli/commands/start.py | 1593 | CODE | |
| LOW | unsloth_cli/commands/start.py | 1640 | CODE | |
| LOW | unsloth_cli/commands/start.py | 1718 | CODE | |
| LOW | unsloth_cli/commands/start.py | 1750 | CODE | |
| LOW | unsloth_cli/commands/chat.py | 158 | CODE | |
| 75 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | studio/install_llama_prebuilt.py | 4656 | # Check if the holder process is still alive | COMMENT |
| LOW | studio/backend/core/training/trainer.py | 1092 | # Check if stopped during LoRA preparation | COMMENT |
| LOW | studio/backend/core/training/trainer.py | 2310 | # Check if stopped during dataset loading | COMMENT |
| LOW | studio/backend/core/training/trainer.py | 2419 | # Check if stopped during dataset loading | COMMENT |
| LOW | studio/backend/core/training/trainer.py | 2529 | # Check if stopped before applying template | COMMENT |
| LOW | studio/backend/core/training/trainer.py | 2629 | # Check if stopped during formatting | COMMENT |
| LOW | studio/backend/utils/datasets/format_conversion.py | 41 | # Check if vision tokenizer is used | COMMENT |
| LOW | studio/backend/routes/inference.py | 4372 | # Check if YAML says this model needs trust_remote_code. | COMMENT |
| LOW | studio/backend/routes/inference.py | 4778 | # Check if the GGUF backend has this model loaded or is loading it. | COMMENT |
| LOW | unsloth_cli/commands/studio.py | 1527 | # Check if still alive (os.kill(pid, 0) is invalid on Windows -- see _pid_alive). | COMMENT |
| LOW | scripts/scan_packages.py | 2788 | # Check if any are git deps | COMMENT |
| LOW | unsloth/save.py | 924 | # Check if PEFT Model or not - if yes, 3 levels. If not 2 levels. | COMMENT |
| LOW | unsloth/save.py | 1099 | # Check if Kaggle or Colab, since only 20GB of Disk space allowed. | COMMENT |
| LOW | unsloth/save.py | 1246 | # Check if pushing to an organization | COMMENT |
| LOW | unsloth/save.py | 1292 | # Check if pushing to an organization | COMMENT |
| LOW | unsloth/save.py | 1627 | # Check if the llama.cpp exists | COMMENT |
| LOW | unsloth/save.py | 1671 | # Check if successful | COMMENT |
| LOW | unsloth/save.py | 1731 | # Check if the executable exists and is executable | COMMENT |
| LOW | unsloth/save.py | 1777 | # Check if bfloat16 is supported | COMMENT |
| LOW | unsloth/save.py | 1839 | # Check if q8_0 is the ONLY quantization method requested | COMMENT |
| LOW | unsloth/save.py | 3920 | # Check if wrong method | COMMENT |
| LOW⚡ | unsloth/save.py | 2779 | # Check if push_to_hub is requested | STRING |
| LOW | unsloth/save.py | 2493 | # Check if BOS added already, then warn | STRING |
| LOW | unsloth/save.py | 5243 | # Check if push_to_hub exists before accessing its __name__ | STRING |
| LOW | unsloth/tokenizer_utils.py | 112 | # Check if token is the actual same one - if not, edit it | COMMENT |
| LOW | unsloth/tokenizer_utils.py | 175 | # Check if they're similar! | COMMENT |
| LOW | unsloth/tokenizer_utils.py | 280 | # Check if chat template is enabled! | COMMENT |
| LOW | unsloth/tokenizer_utils.py | 373 | # Check if tokenizer.model exists | COMMENT |
| LOW | unsloth/tokenizer_utils.py | 1372 | # Check if sep_token or other generic types | COMMENT |
| LOW | unsloth/chat_templates.py | 2486 | # Check if the user provided a correct prompt | COMMENT |
| LOW | unsloth/chat_templates.py | 2665 | # Check if system part is the same! | COMMENT |
| LOW | unsloth/kernels/moe/grouped_gemm/interface.py | 55 | # Check if triton.set_allocator is available (Triton 3.0+) | COMMENT |
| LOW | unsloth/kernels/moe/grouped_gemm/kernels/forward.py | 114 | # Check if L2 cache reuse for this order is optimal | COMMENT |
| LOW⚡ | unsloth/models/loader_utils.py | 739 | # Check if this is Hopper or above | COMMENT |
| LOW⚡ | unsloth/models/loader_utils.py | 749 | # Check if torch >= 2.9.0 | COMMENT |
| LOW⚡ | unsloth/models/loader_utils.py | 755 | # Check if torchao has this PR: https://github.com/pytorch/ao/pull/3158, | COMMENT |
| LOW | unsloth/models/sentence_transformer.py | 1984 | # Check if this is a fast encoder model (uses torch.compile instead of Unsloth patching) | COMMENT |
| LOW | unsloth/models/sentence_transformer.py | 1992 | # Check if model is quantized (4-bit/8-bit) | COMMENT |
| LOW | unsloth/models/sentence_transformer.py | 2195 | # Check if model has pending compile | COMMENT |
| LOW | unsloth/models/vision.py | 959 | # Check if model already has a non-bitsandbytes quantization config (e.g. compressed-tensors/NVFP4) | COMMENT |
| LOW | unsloth/models/vision.py | 1135 | # Check if using forced float32 - we load it in bfloat16, then cast to float16! | COMMENT |
| LOW | unsloth/models/rl.py | 1056 | # Check if per_device_eval_batch_size (default 8) bigger than bsz | STRING |
| LOW | unsloth/models/rl.py | 1069 | # Check if gradient accumulation bug fix is applied | STRING |
| LOW | unsloth/models/rl.py | 1402 | # Check if max_seq_length is NOT defined (max_length is now default) | STRING |
| LOW | unsloth/models/rl.py | 1573 | # Check if SamplingParams is in there | STRING |
| LOW | unsloth/models/llama.py | 2459 | # Check if RoPE Scaling is even allowed | COMMENT |
| LOW | unsloth/models/llama.py | 3125 | # Check if exactly the same and then pass through! | COMMENT |
| LOW | unsloth/models/llama.py | 3310 | # Check if we added new tokens! | COMMENT |
| LOW | unsloth/models/llama.py | 3312 | # Check if embed_tokens/lm_head are already being trained | COMMENT |
| LOW | unsloth/models/loader.py | 475 | # Check if 4bit is allowed specifically for AMD | COMMENT |
| LOW | unsloth/models/loader.py | 512 | # Check if pre-quantized models are allowed | COMMENT |
| LOW | unsloth/models/loader.py | 648 | # Check if folder exists locally | COMMENT |
| LOW | unsloth/models/loader.py | 673 | # Check if pre-quantized models are allowed | COMMENT |
| LOW | unsloth/models/loader.py | 1145 | # Check if 4bit is allowed specifically for AMD | COMMENT |
| LOW | unsloth/models/loader.py | 1195 | # Check if pre-quantized models are allowed | COMMENT |
| LOW | unsloth/models/loader.py | 1420 | # Set norms to float32 since anyways they get upcasted to float32 | COMMENT |
| LOW | unsloth/models/loader.py | 1429 | # Set norms to float32 since anyways they get upcasted to float32 | COMMENT |
| LOW | unsloth/models/loader.py | 1491 | # Set norms to float32 since anyways they get upcasted to float32 | COMMENT |
| LOW | unsloth/models/loader.py | 1506 | # Set norms to float32 since anyways they get upcasted to float32 | COMMENT |
| LOW | unsloth/models/loader.py | 1517 | # Set norms to float32 since anyways they get upcasted to float32 | COMMENT |
| 5 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | studio/backend/loggers/__init__.py | 6 | __all__ = ["get_logger"] | CODE |
| LOW | studio/backend/core/__init__.py | 21 | __all__ = [ | CODE |
| LOW | studio/backend/core/data_recipe/__init__.py | 8 | __all__ = ["JobManager", "get_job_manager"] | CODE |
| LOW | studio/backend/core/data_recipe/jobs/__init__.py | 6 | __all__ = ["JobManager", "get_job_manager"] | CODE |
| LOW | studio/backend/core/training/__init__.py | 8 | __all__ = [ | CODE |
| LOW | studio/backend/core/training/s3_dataset.py | 26 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/rag/ingestion.py | 21 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/rag/captioner.py | 18 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/rag/embed_llama_server.py | 37 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/rag/__init__.py | 7 | __all__ = [ | CODE |
| LOW | studio/backend/core/rag/parsers.py | 21 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/rag/embeddings.py | 28 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/inference/api_monitor.py | 149 | def set_reply(self, entry_id: Optional[str], text: str) -> None: | CODE |
| LOW | studio/backend/core/inference/chat_template_helpers.py | 53 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/inference/llama_keepwarm.py | 184 | def _set_last_unloaded(value) -> None: | CODE |
| LOW | studio/backend/core/inference/__init__.py | 21 | __all__ = [ | CODE |
| LOW⚡ | studio/backend/core/inference/llama_cpp.py | 8598 | def _set_stream_read_timeout(response: "httpx.Response", read_timeout_s: float) -> None: | CODE |
| LOW | studio/backend/core/inference/tensor_fallback.py | 20 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/inference/key_exchange.py | 23 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/core/inference/_html_to_md.py | 18 | __all__ = ["html_to_markdown"] | CODE |
| LOW | studio/backend/core/export/worker.py | 40 | def _setup_log_capture(resp_queue: Any) -> None: | CODE |
| LOW | studio/backend/core/export/__init__.py | 16 | __all__ = [ | CODE |
| LOW | studio/backend/auth/__init__.py | 33 | __all__ = [ | CODE |
| LOW | …d-seed/src/data_designer_unstructured_seed/__init__.py | 15 | __all__ = [ | CODE |
| LOW | studio/backend/tests/test_checkpoints_scan.py | 29 | def _setup_training_runs_table(db_path: Path) -> None: | CODE |
| LOW⚡ | studio/backend/utils/hf_xet_fallback.py | 252 | __all__ = [ | CODE |
| LOW | studio/backend/utils/hardware/__init__.py | 53 | __all__ = [ | CODE |
| LOW | studio/backend/utils/security/__init__.py | 38 | __all__ = [ | CODE |
| LOW | studio/backend/utils/datasets/cache_safe.py | 19 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/utils/datasets/__init__.py | 53 | __all__ = [ | CODE |
| LOW | studio/backend/utils/paths/__init__.py | 56 | __all__ = [ | CODE |
| LOW | studio/backend/utils/paths/storage_roots.py | 272 | def _setup_cache_env() -> None: | CODE |
| LOW | studio/backend/utils/models/__init__.py | 30 | __all__ = [ | CODE |
| LOW | studio/backend/utils/inference/__init__.py | 10 | __all__ = ["load_inference_config"] | CODE |
| LOW | studio/backend/models/__init__.py | 72 | __all__ = [ | CODE |
| LOW | studio/backend/state/tool_policy.py | 41 | def set_tool_policy(value: Optional[bool]) -> None: | CODE |
| LOW | studio/backend/storage/studio_db.py | 21 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/storage/studio_db.py | 581 | def update_run_total_steps(id: str, total_steps: int) -> None: | CODE |
| LOW | studio/backend/storage/studio_db.py | 685 | def update_run_display_name(id: str, display_name: Optional[str]) -> None: | CODE |
| LOW⚡ | studio/backend/storage/rag_db.py | 22 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/storage/providers_db.py | 17 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/routes/__init__.py | 22 | __all__ = [ | CODE |
| LOW | studio/backend/routes/rag.py | 31 | logger = logging.getLogger(__name__) | CODE |
| LOW | studio/backend/routes/data_recipe/__init__.py | 30 | __all__ = ["router"] | CODE |
| LOW | studio/backend/hub/utils/paths.py | 504 | __all__ = [ | CODE |
| LOW | studio/backend/hub/routes/__init__.py | 9 | __all__ = [ | CODE |
| LOW | studio/backend/hub/services/download_lifecycle.py | 24 | logger = logging.getLogger(__name__) | CODE |
| LOW | scripts/scan_packages.py | 2736 | def update_req_file(filepath: str, updates: dict[int, str]) -> None: | CODE |
| LOW | unsloth/save.py | 71 | __all__ = [ | CODE |
| LOW | unsloth/tokenizer_utils.py | 39 | __all__ = [ | CODE |
| LOW | unsloth/import_fixes.py | 36 | logger = logging.getLogger(__name__) | CODE |
| LOW | unsloth/ollama_template_mappers.py | 15 | __all__ = [ | CODE |
| LOW | unsloth/chat_templates.py | 15 | __all__ = [ | CODE |
| LOW | unsloth/device_type.py | 15 | __all__ = [ | CODE |
| LOW | unsloth/trainer.py | 46 | __all__ = [ | CODE |
| LOW | unsloth/trainer.py | 56 | logger = logging.getLogger(__name__) | CODE |
| LOW | unsloth/kernels/moe/autotune_cache.py | 30 | logger = logging.getLogger(__name__) | CODE |
| LOW | unsloth/kernels/moe/grouped_gemm/interface.py | 28 | logger = logging.getLogger(__name__) | CODE |
| LOW | unsloth/kernels/moe/grouped_gemm/kernels/autotuning.py | 28 | logger = logging.getLogger(__name__) | CODE |
| LOW | unsloth/utils/__init__.py | 34 | __all__ = [ | CODE |
| 17 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | unsloth-cli.py | 0 | below is an instruction that describes a task, paired with an input that provides further context. write a response that | STRING |
| HIGH | studio/backend/utils/datasets/chat_templates.py | 0 | below is an instruction that describes a task, paired with an input that provides further context. write a response that | STRING |
| HIGH | …language_models/test_merge_model_perplexity_mistral.py | 0 | below is an instruction that describes a task, paired with an input that provides further context. write a response that | STRING |
| HIGH | …nguage_models/test_merged_model_perplexity_qwen_2.5.py | 0 | below is an instruction that describes a task, paired with an input that provides further context. write a response that | STRING |
| HIGH | studio/install_llama_prebuilt.py | 0 | true if a hipinfo outside the venv is on path. shutil.which returns only the first hit, so the venv hipinfo could shadow | STRING |
| HIGH | studio/install_python_stack.py | 0 | true if a hipinfo outside the venv is on path. shutil.which returns only the first hit, so the venv hipinfo could shadow | STRING |
| HIGH | studio/backend/utils/hardware/amd.py | 0 | true if a hipinfo outside the venv is on path. shutil.which returns only the first hit, so the venv hipinfo could shadow | STRING |
| HIGH | studio/backend/core/training/worker.py | 0 | activate the correct transformers version before any ml imports. | STRING |
| HIGH | studio/backend/core/inference/worker.py | 0 | activate the correct transformers version before any ml imports. | STRING |
| HIGH | studio/backend/core/export/worker.py | 0 | activate the correct transformers version before any ml imports. | STRING |
| HIGH | studio/backend/auth/storage.py | 0 | insert into auth_user ( username, password_salt, password_hash, jwt_secret, must_change_password ) values (?, ?, ?, ?, ? | STRING |
| HIGH | studio/backend/tests/test_desktop_auth.py | 0 | insert into auth_user ( username, password_salt, password_hash, jwt_secret, must_change_password ) values (?, ?, ?, ?, ? | STRING |
| HIGH | unsloth_cli/commands/studio.py | 0 | insert into auth_user ( username, password_salt, password_hash, jwt_secret, must_change_password ) values (?, ?, ?, ?, ? | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | install.sh | 511 | # Step 1: Try installing without sudo (works when already root) | COMMENT |
| LOW⚡ | install.sh | 515 | # Step 2: Check which packages are still missing | COMMENT |
| LOW | install.sh | 534 | # Step 3: Escalate -- need elevated permissions for remaining packages | COMMENT |
| LOW | studio/backend/core/training/worker.py | 814 | # Step 1: --no-deps keeps --force-reinstall off torch/CUDA via the dep graph. | COMMENT |
| LOW | studio/backend/core/training/worker.py | 836 | # Step 2: regular install pulls transitive deps (z3-solver, ml-dtypes) without touching torch. | COMMENT |
| LOW⚡ | studio/backend/core/inference/inference.py | 1045 | # Step 2: format with tokenizer.apply_chat_template(). | COMMENT |
| LOW⚡ | studio/backend/core/inference/inference.py | 1094 | # Step 3: generate | COMMENT |
| LOW | studio/backend/core/inference/inference.py | 1004 | # Step 1: apply get_chat_template if model is in mapper. | COMMENT |
| LOW | studio/backend/utils/datasets/dataset_utils.py | 1135 | # Step 1: Format the dataset | COMMENT |
| LOW | studio/backend/utils/datasets/dataset_utils.py | 1167 | # Step 2: Apply chat template | COMMENT |
| LOW | studio/backend/utils/datasets/dataset_utils.py | 1194 | # Step 3: Generate summary | COMMENT |
| LOW⚡ | unsloth/save.py | 1897 | # Step 2: Download and patch converter script | COMMENT |
| LOW⚡ | unsloth/save.py | 1904 | # Step 3: Initial GGUF conversion | COMMENT |
| LOW | unsloth/save.py | 1880 | # Step 1: Ensure llama.cpp is installed | COMMENT |
| LOW | unsloth/save.py | 1951 | # Step 4: Additional quantizations using llama-quantize | COMMENT |
| LOW⚡ | unsloth/save.py | 2785 | # Step 1: Check if this is a VLM (Vision-Language Model) and check if gpt-oss | STRING |
| LOW⚡ | unsloth/save.py | 2842 | # Step 4: Save/merge model to 16-bit format | STRING |
| LOW⚡ | unsloth/save.py | 2884 | # Step 6: Clean up memory | STRING |
| LOW⚡ | unsloth/save.py | 2891 | # Step 7: Get model dtype and type | STRING |
| LOW⚡ | unsloth/save.py | 2908 | # Step 8: Convert to GGUF format | STRING |
| LOW⚡ | unsloth/save.py | 2993 | # Step 10: Show BOS token warning if applicable | STRING |
| LOW⚡ | unsloth/save.py | 3171 | # Step 3: Upload to HuggingFace Hub | STRING |
| LOW | unsloth/save.py | 2797 | # Step 2: Prepare arguments for model saving | STRING |
| LOW | unsloth/save.py | 2831 | # Step 3: Fix tokenizer BOS token if needed | STRING |
| LOW | unsloth/save.py | 2971 | # Step 9: Create Ollama modelfile | STRING |
| LOW | unsloth/save.py | 3121 | # Step 1: Determine save directory | STRING |
| LOW | unsloth/save.py | 3134 | # Step 2: Call save_pretrained_gguf to do the conversion | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | install.sh | 511 | # Step 1: Try installing without sudo (works when already root) | COMMENT |
| LOW⚡ | install.sh | 515 | # Step 2: Check which packages are still missing | COMMENT |
| LOW | install.sh | 534 | # Step 3: Escalate -- need elevated permissions for remaining packages | COMMENT |
| LOW | studio/backend/core/training/worker.py | 836 | # Step 2: regular install pulls transitive deps (z3-solver, ml-dtypes) without touching torch. | COMMENT |
| LOW⚡ | studio/backend/core/inference/inference.py | 1045 | # Step 2: format with tokenizer.apply_chat_template(). | COMMENT |
| LOW⚡ | studio/backend/core/inference/inference.py | 1094 | # Step 3: generate | COMMENT |
| LOW | studio/backend/core/inference/inference.py | 1004 | # Step 1: apply get_chat_template if model is in mapper. | COMMENT |
| LOW | studio/backend/utils/datasets/dataset_utils.py | 1135 | # Step 1: Format the dataset | COMMENT |
| LOW | studio/backend/utils/datasets/dataset_utils.py | 1167 | # Step 2: Apply chat template | COMMENT |
| LOW | studio/backend/utils/datasets/dataset_utils.py | 1194 | # Step 3: Generate summary | COMMENT |
| LOW⚡ | unsloth/save.py | 1897 | # Step 2: Download and patch converter script | COMMENT |
| LOW⚡ | unsloth/save.py | 1904 | # Step 3: Initial GGUF conversion | COMMENT |
| LOW | unsloth/save.py | 1880 | # Step 1: Ensure llama.cpp is installed | COMMENT |
| LOW | unsloth/save.py | 1951 | # Step 4: Additional quantizations using llama-quantize | COMMENT |
| LOW⚡ | unsloth/save.py | 2785 | # Step 1: Check if this is a VLM (Vision-Language Model) and check if gpt-oss | STRING |
| LOW⚡ | unsloth/save.py | 2842 | # Step 4: Save/merge model to 16-bit format | STRING |
| LOW⚡ | unsloth/save.py | 2884 | # Step 6: Clean up memory | STRING |
| LOW⚡ | unsloth/save.py | 2891 | # Step 7: Get model dtype and type | STRING |
| LOW⚡ | unsloth/save.py | 2908 | # Step 8: Convert to GGUF format | STRING |
| LOW⚡ | unsloth/save.py | 2993 | # Step 10: Show BOS token warning if applicable | STRING |
| LOW⚡ | unsloth/save.py | 3171 | # Step 3: Upload to HuggingFace Hub | STRING |
| LOW | unsloth/save.py | 2797 | # Step 2: Prepare arguments for model saving | STRING |
| LOW | unsloth/save.py | 2831 | # Step 3: Fix tokenizer BOS token if needed | STRING |
| LOW | unsloth/save.py | 2971 | # Step 9: Create Ollama modelfile | STRING |
| LOW | unsloth/save.py | 3121 | # Step 1: Determine save directory | STRING |
| LOW | unsloth/save.py | 3134 | # Step 2: Call save_pretrained_gguf to do the conversion | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | studio/backend/utils/wheel_utils.py | 37 | CODE | |
| MEDIUM | studio/backend/utils/wheel_utils.py | 38 | CODE | |
| MEDIUM | studio/backend/utils/wheel_utils.py | 40 | CODE | |
| MEDIUM | studio/backend/utils/wheel_utils.py | 51 | CODE | |
| MEDIUM | studio/backend/utils/wheel_utils.py | 53 | CODE | |
| MEDIUM | studio/backend/utils/wheel_utils.py | 64 | CODE | |
| MEDIUM | unsloth/kernels/fast_lora.py | 666 | CODE | |
| MEDIUM | unsloth/kernels/fast_lora.py | 667 | CODE | |
| MEDIUM | unsloth/kernels/fast_lora.py | 669 | CODE | |
| MEDIUM | unsloth/kernels/fast_lora.py | 732 | CODE | |
| MEDIUM | unsloth/kernels/moe/autotune_cache.py | 365 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | studio/backend/core/training/training.py | 923 | # Create the DB run row before the pump can consume events, so it appears | COMMENT |
| MEDIUM | studio/backend/core/inference/orchestrator.py | 708 | # Create the mailbox BEFORE sending, rechecking _unload_pending under | COMMENT |
| MEDIUM | tests/sh/test_mac_intel_compat.sh | 179 | # Create a mock uname that returns Darwin | COMMENT |
| MEDIUM | tests/sh/test_mac_intel_compat.sh | 294 | # Create a mock uv that logs all calls instead of running them | COMMENT |
| MEDIUM | tests/saving/vision_models/test_push_to_hub_merged.py | 1 | ## Import required libraries | COMMENT |
| MEDIUM | unsloth/save.py | 3362 | # Create the custom directory if it doesn't exist | STRING |
| MEDIUM | unsloth/models/loader.py | 618 | # Create a combined error message showing both failures | COMMENT |
| MEDIUM | unsloth/models/loader.py | 1327 | # Create a combined error message showing both failures | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | unsloth/save.py | 1121 | state_dict["model.embed_tokens.weight"] = internal_model.model.embed_tokens.weight.data.to( | CODE |
| CRITICAL | unsloth/kernels/moe/grouped_gemm/kernels/tuning.py | 40 | properties = triton.runtime.driver.active.utils.get_device_properties( | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …nd/src/features/settings/components/usage-examples.tsx | 245 | print(chunk.choices[0].delta.content or "", end="")`; | CODE |
| HIGH | …nd/src/features/settings/components/usage-examples.tsx | 283 | print(chunk.choices[0].delta.content or "", end="")` | CODE |
| HIGH | …nd/src/features/settings/components/usage-examples.tsx | 285 | print(chunk.choices[0].delta.content or "", end="")`; | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | scripts/install_gemma4_mlx.sh | 15 | # Usage: | COMMENT |
| LOW⚡ | scripts/install_qwen3_6_mlx.sh | 18 | # Usage: | COMMENT |
| LOW | .github/scripts/assert-prompt-cache.sh | 38 | # Usage: | COMMENT |
| LOW | .github/scripts/agent-guides-drive.sh | 20 | # Usage: | COMMENT |
| LOW | .github/scripts/serve-unsloth-run.sh | 11 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | studio/backend/tests/test_safetensors_tool_loop.py | 4223 | "</function>\n\nLet me know if you need anything else." | CODE |
| LOW | unsloth/kernels/cross_entropy_loss.py | 373 | losses.masked_fill_(labels == -100, 0) # Don't forget to mask padding out! | CODE |
| LOW | unsloth/kernels/fast_lora.py | 64 | Don't forget to see our blog post for more details! | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …io/backend/tests/test_gguf_xet_fallback_integration.py | 144 | def helper( | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | studio/backend/tests/test_safetensors_tool_loop.py | 1463 | assert args == {"name": "John Doe", "age": 30, "active": True, "score": 95.5} | CODE |