fastllm是后端无依赖的高性能大模型推理库,帮助您在大部分设备上高效推理大模型!
This report summarizes scanner evidence for ztxz16/fastllm, a C++ project with 5,130 GitHub stars. SynthScan examined 1,109,729 lines of code across 2369 source files, recording 3629 pattern matches distributed across 19 syntactic categories. The legacy adjusted pattern signal is 3.8 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 2995 finding(s).
Are imports declared and package/API names verified? 191 finding(s).
Are wrappers, guards, and repeated structures necessary? 1988 finding(s).
Which changes need focused human review? 3629 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 3629 distinct pattern matches across 19 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. 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 configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test_gemma4_moe.py | 49 | def compare_hf_and_fastllm_tokenizer(label, model_path, messages): | CODE |
| LOW | test_gemma4_moe.py | 109 | def print_fastllm_child_summary(label, result): | CODE |
| LOW | tools/fastllm_triton_server.py | 179 | def fastllm_chunk_gdn_prefill_h_kernel( | CODE |
| LOW | tools/fastllm_triton_server.py | 330 | def fastllm_chunk_gdn_prefill_o_kernel( | CODE |
| LOW | tools/fastllm_triton_server.py | 432 | def fastllm_chunk_gdn_varlen_prefill_h_kernel( | CODE |
| LOW | tools/fastllm_triton_server.py | 598 | def fastllm_chunk_gdn_varlen_prefill_o_kernel( | CODE |
| LOW | tools/fastllm_triton_server.py | 760 | def fastllm_chunk_gdn_kkt_kernel( | CODE |
| LOW | tools/fastllm_triton_server.py | 809 | def fastllm_chunk_gdn_postconv_kernel( | CODE |
| LOW | tools/fastllm_triton_server.py | 941 | def fastllm_chunk_gdn_recompute_kernel( | CODE |
| LOW | tools/fastllm_triton_server.py | 2488 | def chunk_gdn_prefill_cache_paths(payload): | CODE |
| LOW | tools/fastllm_triton_server.py | 2524 | def chunk_gdn_varlen_prefill_cache_paths(payload): | CODE |
| LOW | tools/fastllm_triton_server.py | 2558 | def chunk_gdn_postconv_cache_paths(payload): | CODE |
| LOW | tools/fastllm_triton_server.py | 2616 | def chunk_gdn_recompute_cache_paths(payload): | CODE |
| LOW | tools/fastllm_triton_server.py | 2893 | def compile_chunk_gdn_prefill(payload): | CODE |
| LOW | tools/fastllm_triton_server.py | 3042 | def compile_chunk_gdn_varlen_prefill(payload): | CODE |
| LOW | tools/fastllm_triton_server.py | 3190 | def compile_chunk_gdn_postconv(payload): | CODE |
| LOW | tools/fastllm_triton_server.py | 3348 | def compile_chunk_gdn_recompute(payload): | CODE |
| LOW | tools/fastllm_pytools/server.py | 87 | def _prewarm_request_executor(executor, workers: int) -> int: | CODE |
| LOW | tools/fastllm_pytools/server.py | 259 | def apply_default_generation_config_overrides(model, args): | CODE |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 135 | def _load_video_frames_from_path(path: str) -> Tuple[List[np.ndarray], Optional[float], np.ndarray]: | CODE |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 280 | def apply_chat_template_with_optional_thinking(tokenizer, conversation, add_generation_prompt, enable_thinking): | CODE |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 713 | def _load_video_frames_from_path(path: str) -> Tuple[List[np.ndarray], Optional[float], np.ndarray]: | CODE |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 858 | def apply_chat_template_with_optional_thinking(tokenizer, conversation, add_generation_prompt, enable_thinking): | CODE |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 1399 | def _load_video_frames_from_path(path: str) -> Tuple[List[Image.Image], Optional[float], np.ndarray]: | CODE |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 1600 | def apply_chat_template_with_optional_thinking(tokenizer, conversation, add_generation_prompt, enable_thinking): | CODE |
| LOW | tools/fastllm_pytools/qwen35_multimodal_native.py | 163 | def _load_video_frames_from_path(path: str) -> Tuple[List[np.ndarray], Optional[float], np.ndarray]: | CODE |
| LOW | tools/fastllm_pytools/qwen35_multimodal_native.py | 310 | def apply_chat_template_with_optional_thinking( | CODE |
| LOW | tools/fastllm_pytools/benchmark.py | 225 | def _format_tokens_per_second(value: float) -> str: | CODE |
| LOW⚡ | tools/fastllm_pytools/util.py | 130 | def _uses_non_nvidia_cuda_compatible_build() -> bool: | CODE |
| LOW | tools/fastllm_pytools/util.py | 287 | def _nvidia_cuda_compute_capabilities(device_ids): | CODE |
| LOW | tools/fastllm_pytools/util.py | 353 | def _thread_tp_cuda_device_ids(tp): | CODE |
| LOW | tools/fastllm_pytools/util.py | 364 | def _cuda_graph_auto_supported(cuda_spec) -> bool: | CODE |
| LOW | tools/fastllm_pytools/util.py | 375 | def _configure_multicuda_worker_affinity(tp, threads): | CODE |
| LOW | tools/fastllm_pytools/util.py | 450 | def _first_thread_tp_cuda_device(tp) -> str: | CODE |
| LOW | tools/fastllm_pytools/util.py | 473 | def _thread_tp_cuda_device_spec(tp) -> str: | CODE |
| LOW | tools/fastllm_pytools/util.py | 504 | def _thread_tp_cuda_device_count(tp) -> int: | CODE |
| LOW | tools/fastllm_pytools/util.py | 538 | def _configure_expert_parallel(args, is_naive_n05_model): | CODE |
| LOW | tools/fastllm_pytools/util.py | 569 | def apply_image_embedding_cache_env(args): | CODE |
| LOW | tools/fastllm_pytools/util.py | 581 | def apply_multimodal_warmup_env(args, is_qwen35_model): | CODE |
| LOW | tools/fastllm_pytools/util.py | 641 | def _fastllm_env_flag_enabled(name: str, fallback_name: str = "") -> bool: | CODE |
| LOW | tools/fastllm_pytools/util.py | 649 | def _single_cuda_total_memory_bytes(device) -> int: | CODE |
| LOW | tools/fastllm_pytools/util.py | 803 | def _configure_triton_compiler_python() -> str: | CODE |
| LOW | tools/fastllm_pytools/util.py | 912 | def _prefers_laguna_hybrid_tp(architecture: str, model_type: str = "") -> bool: | CODE |
| LOW | tools/fastllm_pytools/util.py | 1136 | def _configure_embedded_dspark(args): | CODE |
| LOW | tools/fastllm_pytools/gemma4_multimodal.py | 49 | def get_aspect_ratio_preserving_size(height, width, patch_size, max_patches, pooling_kernel_size): | CODE |
| LOW | tools/fastllm_pytools/gemma4_multimodal.py | 181 | def sanitize_conversation_for_template(conversation): | CODE |
| LOW | tools/fastllm_pytools/gemma4_multimodal.py | 248 | def apply_chat_template_with_optional_thinking(tokenizer, conversation, add_generation_prompt, enable_thinking): | CODE |
| LOW | tools/fastllm_pytools/gemma4_multimodal.py | 259 | def build_prompt_with_expanded_image_tokens(tokenizer, conversation, num_soft_tokens_per_image, add_generation_prompt, e | CODE |
| LOW | tools/fastllm_pytools/download.py | 144 | def should_regenerate_filelist(self) -> bool: | CODE |
| LOW⚡ | tools/fastllm_pytools/llm.py | 168 | def _preload_cuda_runtime_dependencies() -> Dict[str, Any]: | CODE |
| LOW⚡ | tools/fastllm_pytools/llm.py | 1260 | def _attach_local_chat_template(tokenizer, path): | CODE |
| LOW⚡ | tools/fastllm_pytools/llm.py | 1270 | def _load_fast_tokenizer_from_tokenizer_json(path): | CODE |
| LOW | tools/fastllm_pytools/llm.py | 97 | def _discover_nvidia_lib_dirs() -> List[str]: | CODE |
| LOW | tools/fastllm_pytools/llm.py | 329 | def _dispatch_model_load_progress(stage, current, total, completed_bytes, total_bytes): | CODE |
| LOW | tools/fastllm_pytools/llm.py | 344 | def set_model_load_progress_callback(callback): | CODE |
| LOW | tools/fastllm_pytools/llm.py | 363 | def report_model_load_progress(stage, current = 0, total = 0, | CODE |
| LOW | tools/fastllm_pytools/llm.py | 774 | def get_moe_cuda_cache_route_stats(device: int = 0, phase: str = None): | CODE |
| LOW | tools/fastllm_pytools/llm.py | 806 | def get_moe_cuda_cache_prefill_stats(device: int = 0): | CODE |
| LOW | tools/fastllm_pytools/llm.py | 904 | def set_layered_moe_device_map(device_map): | CODE |
| LOW | tools/fastllm_pytools/llm.py | 1358 | def _hf_tokenizer_compat_kwargs(path): | CODE |
| 1453 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | simple_install.sh | 21 | #python3 setup.py bdist_wheel | COMMENT |
| LOW | tools/ssd_read_bench.cpp | 1 | #include <algorithm> | COMMENT |
| LOW | tools/numas_fp8_moe_bench.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | tools/naive_n05_speculative_bench.cpp | 1 | #include "model.h" | COMMENT |
| LOW | tools/fastllm_pytools/llm.py | 281 | continue | COMMENT |
| LOW | …fastllm_pytools/openai_server/tool_parsers/__init__.py | 21 | #from .llama_tool_parser import Llama3JsonToolParser | COMMENT |
| LOW | tools/fastllm_pytools/ui_plugins/claude/styles.css | 1 | /* Harness-like quiet sidebar, open transcript and a compact composer. */ | COMMENT |
| LOW | tools/fastllm_pytools/ui_plugins/claude/styles.css | 21 | #claude-approvals { order:3; flex-shrink:0; } | COMMENT |
| LOW | tools/src/pytools.cpp | 1 | // | COMMENT |
| LOW | tools/src/cpu_thread_bench.h | 1 | #pragma once | COMMENT |
| LOW | test/basic/test_qwen35_mtp_sampling.cpp | 1 | #include "models/qwen3_5.h" | COMMENT |
| LOW | test/basic/test_cuda_v41_mxfp4.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_naive_n05_tp_model.cpp | 1 | #include "devices/cuda/fastllm-cuda.cuh" | COMMENT |
| LOW | test/basic/test_disk_qwen_gguf_cache.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_cpu_gguf_moe_decode.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_cpu_gguf_repack.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_cuda_fp8_perchannel_dispatch.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_cuda_paged_sm70_small_t.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_cuda_prefill_paths.cpp | 1 | #define CUDA_API_PER_THREAD_DEFAULT_STREAM | COMMENT |
| LOW | test/basic/test_qwen35_mtp_sample_row.cpp | 1 | #include "models/qwen3_5.h" | COMMENT |
| LOW | test/basic/test_naive_n05_attention.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_numas_moe_pipeline.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_numas_moe_batch_register.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_cuda_fp8_cache_tp.cpp | 1 | #define CUDA_API_PER_THREAD_DEFAULT_STREAM | COMMENT |
| LOW | test/basic/test_disk_glm5_gguf_cache.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_hf_parallel_merge.cpp | 1 | #include "model.h" | COMMENT |
| LOW | test/basic/test_deepseek_v41_hybrid_attention.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_cuda_single_query_attention.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_cuda_paged_fragmented_attention.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_naive_n05_tp.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_numas_nvfp4_moe.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_cuda_qwen4_gdn_output.cpp | 1 | #include <cuda_runtime_api.h> | COMMENT |
| LOW | test/basic/test_naive_n05_decode_graph.cpp | 1 | #ifndef CUDA_API_PER_THREAD_DEFAULT_STREAM | COMMENT |
| LOW | test/basic/test_qwen35_dflash_shortlist.cpp | 1 | #include "models/qwen3_5.h" | COMMENT |
| LOW | test/basic/test_disk_moe_cache.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_deepseek_v41_topk.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_cuda_mxfp8_linear.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_cpu_isa_compat.cpp | 1 | // Build this test with UNIT_TEST=ON. On GCC, exercise old x86 targets with | COMMENT |
| LOW | test/basic/test_deepseek_v41_disk_engram.cpp | 1 | #include "models/deepseekv41.h" | COMMENT |
| LOW | test/basic/test_cuda_glm5_gguf_cache.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_cpu_gguf_iq_native.cpp | 1 | #include "ggml-iq-native.h" | COMMENT |
| LOW | test/basic/test_disk_v41_gguf_cache.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_device_operator_lifetime.cpp | 1 | #include "device.h" | COMMENT |
| LOW | test/basic/test_naive_n05_rope_cache.cpp | 1 | #ifndef CUDA_API_PER_THREAD_DEFAULT_STREAM | COMMENT |
| LOW | test/basic/test_cuda_swiglu_fp8.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_glm5_next_gguf.cpp | 1 | #include "gguf.h" | COMMENT |
| LOW | test/basic/test_cuda_qwen4_attention_fusion.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_deepseek_v41_prefill.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_naive_n05_dsa_batch.cpp | 1 | #ifndef CUDA_API_PER_THREAD_DEFAULT_STREAM | COMMENT |
| LOW | test/basic/test_glm5_next_dsa.cpp | 1 | #include "../../src/models/glm5_next_dsa.h" | COMMENT |
| LOW | test/basic/test_naive_n05_prefill.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/cuda_delayed_down_upload.h | 1 | #pragma once | COMMENT |
| LOW | test/basic/test_numas_fp8_eager_moe.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/cuda_moe_prefill_test.h | 1 | #pragma once | COMMENT |
| LOW | test/basic/test_numas_nvfp4_hybrid_cold.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_naive_n05_decode.cpp | 1 | #include "fastllm.h" | COMMENT |
| LOW | test/basic/test_qwen35_vision_tp.cpp | 1 | #include "models/qwen3_5.h" | COMMENT |
| LOW | test/basic/test_qwen35_mtp_tp.cpp | 1 | #include "models/qwen3_5.h" | COMMENT |
| LOW | test/basic/test_naive_n05_logits.cpp | 1 | #ifndef CUDA_API_PER_THREAD_DEFAULT_STREAM | COMMENT |
| LOW | test/basic/test_legacy_paged_scheduler.cpp | 1 | #include "models/basellm.h" | COMMENT |
| 977 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tools/lingbot_world/server.py | 347 | except (BrokenPipeError, ConnectionResetError): | CODE |
| HIGH | tools/lingbot_world/server.py | 253 | except OSError: | CODE |
| HIGH | tools/fastllm_pytools/launcher_agent_models.py | 23 | except (OSError, ValueError, AttributeError, TypeError): | CODE |
| HIGH | tools/fastllm_pytools/agent_runtime_install.py | 45 | except (OSError, ValueError): | CODE |
| HIGH | tools/fastllm_pytools/agent_runtime_install.py | 122 | except ProcessLookupError: | CODE |
| HIGH | tools/fastllm_pytools/agent_runtime_install.py | 129 | except ProcessLookupError: | CODE |
| HIGH | tools/fastllm_pytools/launcher_agent_proxy.py | 220 | except (OSError, ConnectionClosed, WebSocketDisconnect): | CODE |
| HIGH | tools/fastllm_pytools/launcher_agent_proxy.py | 180 | except httpx.HTTPError: | CODE |
| HIGH | tools/fastllm_pytools/launcher_agent_proxy.py | 225 | except RuntimeError: | CODE |
| HIGH | tools/fastllm_pytools/auto_config.py | 108 | except (OSError, ValueError): | CODE |
| HIGH | tools/fastllm_pytools/launcher_agent_session.py | 70 | except (OSError, ValueError): | CODE |
| HIGH | tools/fastllm_pytools/util.py | 172 | except Exception: | CODE |
| HIGH | tools/fastllm_pytools/util.py | 191 | except Exception: | CODE |
| HIGH | tools/fastllm_pytools/util.py | 237 | except Exception: | CODE |
| HIGH | tools/fastllm_pytools/util.py | 1435 | except: | CODE |
| HIGH | tools/fastllm_pytools/util.py | 1731 | except: | CODE |
| HIGH | tools/fastllm_pytools/util.py | 1737 | except: | CODE |
| HIGH | tools/fastllm_pytools/util.py | 1742 | except: | CODE |
| HIGH | tools/fastllm_pytools/cpu_tuning.py | 62 | except (OSError, ValueError, IndexError): | CODE |
| HIGH | tools/fastllm_pytools/cpu_tuning.py | 103 | except ValueError: | CODE |
| HIGH | tools/fastllm_pytools/cpu_tuning.py | 57 | except (OSError, ValueError): | CODE |
| HIGH | tools/fastllm_pytools/hf_model.py | 131 | except: | CODE |
| HIGH | tools/fastllm_pytools/download.py | 153 | except FileNotFoundError: | CODE |
| HIGH | tools/fastllm_pytools/llm.py | 87 | except: | CODE |
| HIGH | tools/fastllm_pytools/llm.py | 120 | except Exception: | CODE |
| HIGH | tools/fastllm_pytools/llm.py | 126 | except Exception: | CODE |
| HIGH | tools/fastllm_pytools/llm.py | 1293 | except Exception: | CODE |
| HIGH | tools/fastllm_pytools/llm.py | 1288 | except Exception: | CODE |
| HIGH | tools/fastllm_pytools/llm.py | 1866 | except Exception: | CODE |
| HIGH | tools/fastllm_pytools/llm.py | 1673 | except Exception: | CODE |
| HIGH | tools/fastllm_pytools/llm.py | 3095 | except: | CODE |
| HIGH | tools/fastllm_pytools/llm.py | 2711 | except: | CODE |
| HIGH | tools/fastllm_pytools/llm.py | 3159 | except: | CODE |
| HIGH | tools/fastllm_pytools/llm.py | 3237 | except: | CODE |
| HIGH | tools/fastllm_pytools/llm.py | 3280 | except: | CODE |
| HIGH | tools/fastllm_pytools/deepseek_v41_history.py | 65 | except Exception: | CODE |
| HIGH | tools/fastllm_pytools/webui_utils.py | 10 | except (UnicodeDecodeError, LookupError): | CODE |
| HIGH | tools/fastllm_pytools/webui_history.py | 172 | except (TypeError, json.JSONDecodeError): | CODE |
| HIGH | tools/fastllm_pytools/webui_history.py | 201 | except (TypeError, json.JSONDecodeError): | CODE |
| HIGH | tools/fastllm_pytools/hybrid_auto.py | 214 | except OSError: | CODE |
| HIGH | tools/fastllm_pytools/hybrid_auto.py | 265 | except (OSError, ValueError): | CODE |
| HIGH | tools/fastllm_pytools/launcher_agent_management.py | 29 | except (OSError, ValueError, AttributeError): | CODE |
| HIGH | tools/fastllm_pytools/torch2flm.py | 216 | except: | CODE |
| HIGH | tools/fastllm_pytools/webui_server.py | 148 | except (OSError, AttributeError): | CODE |
| HIGH | tools/fastllm_pytools/webui_server.py | 127 | except Exception: | CODE |
| HIGH | tools/fastllm_pytools/webui_server.py | 154 | except Exception: | CODE |
| HIGH | tools/fastllm_pytools/data_agent.py | 71 | except (TypeError, ValueError): | CODE |
| HIGH | tools/fastllm_pytools/data_agent.py | 76 | except (TypeError, ValueError): | CODE |
| HIGH | tools/fastllm_pytools/data_agent.py | 87 | except (TypeError, ValueError): | CODE |
| HIGH | tools/fastllm_pytools/data_agent.py | 694 | except OSError: | CODE |
| HIGH | tools/fastllm_pytools/knowledge_agent.py | 226 | except (ValueError, IndexError): | CODE |
| HIGH | tools/fastllm_pytools/tui.py | 792 | except ValueError: | CODE |
| HIGH | tools/fastllm_pytools/tui.py | 1479 | except (AttributeError, curses.error): | CODE |
| HIGH | tools/fastllm_pytools/tui.py | 1483 | except curses.error: | CODE |
| HIGH | tools/fastllm_pytools/tui.py | 2584 | except ValueError: | CODE |
| HIGH | tools/fastllm_pytools/tui.py | 2564 | except curses.error: | CODE |
| HIGH | tools/fastllm_pytools/harness_install.py | 143 | except ProcessLookupError: | CODE |
| HIGH | tools/fastllm_pytools/launcher.py | 2591 | except KeyboardInterrupt: | CODE |
| HIGH | tools/fastllm_pytools/launcher.py | 2418 | except (OSError, subprocess.SubprocessError, json.JSONDecodeError): | CODE |
| HIGH | tools/fastllm_pytools/launcher.py | 2441 | except OSError: | CODE |
| 60 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | check_mem.py | 9 | CODE | |
| LOW | tools/naive_n05_speculative_check.py | 42 | CODE | |
| LOW | tools/fastllm_triton_server.py | 2211 | CODE | |
| LOW | tools/naive_n05_flash_logits.py | 47 | CODE | |
| LOW | tools/deepseek_v41_export_q2.py | 42 | CODE | |
| LOW | tools/deepseek_v41_export_q2.py | 104 | CODE | |
| LOW | tools/naive_n05_export_nvfp4.py | 49 | CODE | |
| LOW | tools/lingbot_world/server.py | 124 | CODE | |
| LOW | tools/lingbot_world/server.py | 281 | CODE | |
| LOW | tools/lingbot_world/server.py | 205 | CODE | |
| LOW | tools/lingbot_world/server.py | 292 | CODE | |
| LOW | tools/wheel/package_wheel.py | 37 | CODE | |
| LOW | tools/fastllm_pytools/pptx_generator.py | 524 | CODE | |
| LOW | tools/fastllm_pytools/agent_runtime_install.py | 99 | CODE | |
| LOW | tools/fastllm_pytools/agent_runtime_install.py | 166 | CODE | |
| LOW | tools/fastllm_pytools/nomas_prompt.py | 85 | CODE | |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 211 | CODE | |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 789 | CODE | |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 1531 | CODE | |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 1716 | CODE | |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 1779 | CODE | |
| LOW | tools/fastllm_pytools/launcher_opencode.py | 51 | CODE | |
| LOW | tools/fastllm_pytools/qwen35_multimodal_native.py | 239 | CODE | |
| LOW | tools/fastllm_pytools/qwen35_multimodal_native.py | 353 | CODE | |
| LOW | tools/fastllm_pytools/qwen35_multimodal_native.py | 370 | CODE | |
| LOW | tools/fastllm_pytools/auto_config.py | 178 | CODE | |
| LOW | tools/fastllm_pytools/auto_config.py | 493 | CODE | |
| LOW | tools/fastllm_pytools/launcher_agent_session.py | 58 | CODE | |
| LOW | tools/fastllm_pytools/launcher_agent_session.py | 105 | CODE | |
| LOW | tools/fastllm_pytools/launcher_agent_session.py | 194 | CODE | |
| LOW | tools/fastllm_pytools/util.py | 142 | CODE | |
| LOW | tools/fastllm_pytools/util.py | 185 | CODE | |
| LOW | tools/fastllm_pytools/util.py | 375 | CODE | |
| LOW | tools/fastllm_pytools/util.py | 518 | CODE | |
| LOW | tools/fastllm_pytools/util.py | 1145 | CODE | |
| LOW | tools/fastllm_pytools/cpu_tuning.py | 19 | CODE | |
| LOW | tools/fastllm_pytools/hf_model.py | 22 | CODE | |
| LOW | tools/fastllm_pytools/gemma4_multimodal.py | 181 | CODE | |
| LOW | tools/fastllm_pytools/download.py | 164 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 97 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 168 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 1270 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 1383 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 981 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 1431 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 2243 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 2283 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 2490 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 2613 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 2751 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 3121 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 3187 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 3492 | CODE | |
| LOW | tools/fastllm_pytools/deepseek_v41_multimodal.py | 137 | CODE | |
| LOW | tools/fastllm_pytools/deepseek_v41_multimodal.py | 143 | CODE | |
| LOW | tools/fastllm_pytools/hybrid_auto.py | 106 | CODE | |
| LOW | tools/fastllm_pytools/hybrid_auto.py | 191 | CODE | |
| LOW | tools/fastllm_pytools/hybrid_auto.py | 298 | CODE | |
| LOW | tools/fastllm_pytools/hybrid_auto.py | 644 | CODE | |
| LOW | tools/fastllm_pytools/hybrid_auto.py | 717 | CODE | |
| 275 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/fastllm_triton_server.py | 21 | except Exception as exc: # pragma: no cover - this is reported through /compile. | CODE |
| LOW | tools/fastllm_triton_server.py | 4621 | except Exception as exc: | CODE |
| LOW | tools/lingbot_world/server.py | 249 | except Exception as e: | CODE |
| LOW | tools/lingbot_world/server.py | 269 | except Exception as e: | CODE |
| LOW | tools/lingbot_world/server.py | 349 | except Exception as e: | CODE |
| MEDIUM | tools/lingbot_world/server.py | 205 | def run(self): | CODE |
| MEDIUM | tools/lingbot_world/server.py | 344 | def dispatch(self): | CODE |
| LOW | tools/fastllm_pytools/agent_runtime_install.py | 243 | except Exception as error: | CODE |
| LOW | tools/fastllm_pytools/agent_runtime_install.py | 254 | except Exception as error: | CODE |
| MEDIUM | tools/fastllm_pytools/agent_runtime_install.py | 240 | def _run(self, generation, install): | CODE |
| LOW | tools/fastllm_pytools/server.py | 226 | except Exception as e: | CODE |
| LOW | tools/fastllm_pytools/server.py | 244 | except Exception as e: | CODE |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 149 | except Exception as exc: | CODE |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 727 | except Exception as exc: | CODE |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 1413 | except Exception as exc: | CODE |
| LOW | tools/fastllm_pytools/launcher_agent_runtime.py | 83 | except Exception as error: | CODE |
| MEDIUM | tools/fastllm_pytools/launcher_agent_runtime.py | 63 | def _run(self, service, api_key, bind_host, browser_origin, cancelled, install): | CODE |
| LOW | tools/fastllm_pytools/qwen35_multimodal_native.py | 177 | except Exception as exc: | CODE |
| MEDIUM | tools/fastllm_pytools/util.py | 178 | def _normalize_mtp_arg(value) -> int: | CODE |
| MEDIUM | tools/fastllm_pytools/util.py | 185 | def _total_memory_gib() -> float: | CODE |
| MEDIUM | tools/fastllm_pytools/util.py | 228 | def _cuda_device_count() -> int: | CODE |
| LOW⚡ | tools/fastllm_pytools/util.py | 127 | except Exception: | CODE |
| LOW⚡ | tools/fastllm_pytools/util.py | 139 | except Exception: | CODE |
| LOW⚡ | tools/fastllm_pytools/util.py | 172 | except Exception: | CODE |
| LOW⚡ | tools/fastllm_pytools/util.py | 181 | except Exception: | CODE |
| LOW⚡ | tools/fastllm_pytools/util.py | 191 | except Exception: | CODE |
| LOW | tools/fastllm_pytools/util.py | 157 | except Exception: | CODE |
| LOW | tools/fastllm_pytools/util.py | 237 | except Exception: | CODE |
| LOW | tools/fastllm_pytools/util.py | 241 | except Exception: | CODE |
| LOW | tools/fastllm_pytools/util.py | 284 | except Exception: | CODE |
| LOW | tools/fastllm_pytools/util.py | 322 | except Exception: | CODE |
| LOW | tools/fastllm_pytools/util.py | 446 | except Exception: | CODE |
| LOW | tools/fastllm_pytools/util.py | 680 | except Exception: | CODE |
| LOW | tools/fastllm_pytools/util.py | 792 | except Exception: | CODE |
| LOW | tools/fastllm_pytools/util.py | 2161 | except Exception: | CODE |
| LOW | tools/fastllm_pytools/download.py | 111 | except Exception as e: | CODE |
| MEDIUM | tools/fastllm_pytools/download.py | 112 | color_print(f"Error: {str(e)}", "RED") | CODE |
| MEDIUM | tools/fastllm_pytools/download.py | 89 | def run(self): | CODE |
| MEDIUM | tools/fastllm_pytools/llm.py | 279 | print(f"Error loading {libname}: {e}") | CODE |
| MEDIUM | tools/fastllm_pytools/llm.py | 2783 | print("Error: can't detect architectures for this model.") | CODE |
| MEDIUM | tools/fastllm_pytools/llm.py | 2787 | print("Error: CogVLM multimodal only supports images.") | CODE |
| MEDIUM | tools/fastllm_pytools/llm.py | 2847 | print("Error: Gemma4 multimodal needs a Hugging Face tokenizer.") | CODE |
| MEDIUM | tools/fastllm_pytools/llm.py | 2967 | print("Error: can't support architectures: " + architecture) | CODE |
| MEDIUM | tools/fastllm_pytools/llm.py | 1861 | def _get_architecture(self) -> str: | CODE |
| LOW⚡ | tools/fastllm_pytools/llm.py | 114 | except Exception: | CODE |
| LOW⚡ | tools/fastllm_pytools/llm.py | 120 | except Exception: | CODE |
| LOW⚡ | tools/fastllm_pytools/llm.py | 126 | except Exception: | CODE |
| LOW⚡ | tools/fastllm_pytools/llm.py | 149 | except Exception: | CODE |
| LOW⚡ | tools/fastllm_pytools/llm.py | 158 | except Exception: | CODE |
| LOW⚡ | tools/fastllm_pytools/llm.py | 1257 | except Exception: | CODE |
| LOW⚡ | tools/fastllm_pytools/llm.py | 1906 | except Exception: | CODE |
| LOW⚡ | tools/fastllm_pytools/llm.py | 1914 | except Exception as e: | CODE |
| LOW⚡ | tools/fastllm_pytools/llm.py | 1923 | except Exception: | CODE |
| LOW | tools/fastllm_pytools/llm.py | 196 | except Exception as e: | CODE |
| LOW | tools/fastllm_pytools/llm.py | 219 | except Exception as e: | CODE |
| LOW | tools/fastllm_pytools/llm.py | 243 | except Exception as e: | CODE |
| LOW | tools/fastllm_pytools/llm.py | 277 | except Exception as e: | CODE |
| LOW | tools/fastllm_pytools/llm.py | 341 | except Exception: | CODE |
| LOW | tools/fastllm_pytools/llm.py | 1288 | except Exception: | CODE |
| LOW | tools/fastllm_pytools/llm.py | 1293 | except Exception: | CODE |
| 194 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/deepseek_v4_logits_align.py | 9 | CODE | |
| LOW | tools/dots3_note_transformers_logits.py | 10 | CODE | |
| LOW | tools/deepseek_v4_vllm_nsys_workload.py | 4 | CODE | |
| LOW | tools/qwen4_exp_transformers_check.py | 18 | CODE | |
| LOW | tools/deepseek_v4_fastllm_nsys_workload.py | 4 | CODE | |
| LOW | tools/deepseek_v4_fastllm_logits.py | 4 | CODE | |
| LOW | tools/dots3_note_fastllm_logits.py | 4 | CODE | |
| LOW | tools/glm5_next_fastllm_logits.py | 4 | CODE | |
| LOW | tools/naive_n05_flash_logits.py | 9 | CODE | |
| LOW | tools/deepseek_v4_nsys_compare.py | 11 | CODE | |
| LOW | tools/qwen4_exp_reference_check.py | 15 | CODE | |
| LOW | tools/glm5_next_transformers_logits.py | 4 | CODE | |
| LOW | tools/fastllm_pytools/agent_runtime_install.py | 3 | CODE | |
| LOW | tools/fastllm_pytools/server.py | 1 | CODE | |
| LOW | tools/fastllm_pytools/server.py | 15 | CODE | |
| LOW | tools/fastllm_pytools/server.py | 16 | CODE | |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 582 | CODE | |
| LOW | tools/fastllm_pytools/qwen35_multimodal.py | 1163 | CODE | |
| LOW | tools/fastllm_pytools/cpu_tuning.py | 6 | CODE | |
| LOW | tools/fastllm_pytools/download.py | 5 | CODE | |
| LOW | tools/fastllm_pytools/download.py | 10 | CODE | |
| LOW | tools/fastllm_pytools/download.py | 12 | CODE | |
| LOW | tools/fastllm_pytools/download.py | 13 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 17 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 86 | CODE | |
| LOW | tools/fastllm_pytools/export.py | 1 | CODE | |
| LOW | tools/fastllm_pytools/export.py | 4 | CODE | |
| LOW | tools/fastllm_pytools/export.py | 5 | CODE | |
| LOW | tools/fastllm_pytools/chat.py | 1 | CODE | |
| LOW | tools/fastllm_pytools/chat.py | 3 | CODE | |
| LOW | tools/fastllm_pytools/cli.py | 1 | CODE | |
| LOW | …ls/fastllm_pytools/openai_server/fastllm_completion.py | 31 | CODE | |
| LOW | …ls/fastllm_pytools/openai_server/fastllm_completion.py | 32 | CODE | |
| LOW | tools/fastllm_pytools/openai_server/fastllm_reranker.py | 1 | CODE | |
| LOW | tools/fastllm_pytools/openai_server/fastllm_reranker.py | 2 | CODE | |
| LOW | tools/fastllm_pytools/openai_server/fastllm_reranker.py | 3 | CODE | |
| LOW | tools/fastllm_pytools/openai_server/fastllm_reranker.py | 4 | CODE | |
| LOW | tools/fastllm_pytools/openai_server/fastllm_reranker.py | 7 | CODE | |
| LOW | tools/fastllm_pytools/openai_server/fastllm_embed.py | 1 | CODE | |
| LOW | tools/fastllm_pytools/openai_server/fastllm_embed.py | 2 | CODE | |
| LOW | tools/fastllm_pytools/openai_server/fastllm_embed.py | 3 | CODE | |
| LOW | tools/fastllm_pytools/openai_server/fastllm_embed.py | 4 | CODE | |
| LOW | tools/fastllm_pytools/openai_server/fastllm_embed.py | 7 | CODE | |
| LOW | …tools/openai_server/tool_parsers/hermes_tool_parser.py | 13 | CODE | |
| LOW | …ols/openai_server/tool_parsers/glm4_moe_tool_parser.py | 11 | CODE | |
| LOW | …ols/openai_server/tool_parsers/glm4_moe_tool_parser.py | 12 | CODE | |
| LOW | …ytools/openai_server/tool_parsers/hy_v3_tool_parser.py | 13 | CODE | |
| LOW | …ools/openai_server/tool_parsers/kimi_k2_tool_parser.py | 9 | CODE | |
| LOW | …ools/openai_server/tool_parsers/kimi_k2_tool_parser.py | 10 | CODE | |
| LOW | …fastllm_pytools/openai_server/tool_parsers/__init__.py | 4 | CODE | |
| LOW | …fastllm_pytools/openai_server/tool_parsers/__init__.py | 4 | CODE | |
| LOW | …fastllm_pytools/openai_server/tool_parsers/__init__.py | 5 | CODE | |
| LOW | …fastllm_pytools/openai_server/tool_parsers/__init__.py | 6 | CODE | |
| LOW | …fastllm_pytools/openai_server/tool_parsers/__init__.py | 7 | CODE | |
| LOW | …fastllm_pytools/openai_server/tool_parsers/__init__.py | 8 | CODE | |
| LOW | …fastllm_pytools/openai_server/tool_parsers/__init__.py | 9 | CODE | |
| LOW | …fastllm_pytools/openai_server/tool_parsers/__init__.py | 10 | CODE | |
| LOW | …fastllm_pytools/openai_server/tool_parsers/__init__.py | 13 | CODE | |
| LOW | …fastllm_pytools/openai_server/tool_parsers/__init__.py | 14 | CODE | |
| LOW | …fastllm_pytools/openai_server/tool_parsers/__init__.py | 18 | CODE | |
| 116 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | tools/fastllm_pytools/llm.py | 116 | # 2) Fallback: scan site-packages directly (more robust across envs) | COMMENT |
| MEDIUM | …ytools/openai_server/tool_parsers/llama_tool_parser.py | 54 | # This pattern is more robust and can handle nested JSON objects | COMMENT |
| MEDIUM | …ytools/openai_server/tool_parsers/llama_tool_parser.py | 200 | # re-set stuff pertaining to progress in the current tool | COMMENT |
| MEDIUM | …ytools/openai_server/tool_parsers/jamba_tool_parser.py | 207 | # re-set stuff pertaining to progress in the current tool | COMMENT |
| MEDIUM | …ools/openai_server/tool_parsers/granite_tool_parser.py | 172 | # re-set stuff pertaining to progress in the current tool | COMMENT |
| MEDIUM | …ools/openai_server/tool_parsers/mistral_tool_parser.py | 264 | # re-set stuff pertaining to progress in the current tool | COMMENT |
| LOW | …pytools/openai_server/tool_parsers/xlam_tool_parser.py | 465 | # If we encounter an error, just return the delta text as regular content | COMMENT |
| MEDIUM | …enai_server/tool_parsers/granite_20b_fc_tool_parser.py | 190 | # re-set stuff pertaining to progress in the current tool | COMMENT |
| MEDIUM | …ytools/openai_server/tool_parsers/step3_tool_parser.py | 45 | # Explicit state flags for robust streaming | COMMENT |
| MEDIUM⚡ | tools/fastllm_pytools/ui_plugins/harness/styles.css | 1 | #view-harness.active { display: flex; flex-direction: column; flex: 1; min-height: 0; width: 100%; max-width: none; anim | COMMENT |
| MEDIUM⚡ | tools/fastllm_pytools/ui_plugins/harness/styles.css | 4 | #harness-content { flex: 1; min-height: 0; } | COMMENT |
| MEDIUM⚡ | tools/fastllm_pytools/ui_plugins/harness/styles.css | 5 | #harness-content > iframe { display: block; width: 100%; height: 100%; border: 0; } | COMMENT |
| MEDIUM⚡ | tools/fastllm_pytools/ui_plugins/harness/styles.css | 9 | #harness-progress-detail { color: var(--muted); font-size: 12px; } | COMMENT |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1273 | first = self.page.frame_locator('#harness-content iframe').locator('#draft') | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1283 | second = other.frame_locator('#harness-content iframe').locator('#draft') | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1285 | expect(self.page.locator('#harness-content iframe')).to_have_attribute('src', re.compile(r'^http://localhost | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1286 | expect(other.locator('#harness-content iframe')).to_have_attribute('src', re.compile(r'^http://127\.0\.0\.1: | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1307 | expect(self.page.locator('#harness-content iframe')).to_have_attribute('src', new_first) | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1308 | expect(other.locator('#harness-content iframe')).to_have_attribute('src', new_second) | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1354 | expect(self.page.locator('#harness-content iframe')).to_be_visible() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1355 | embedded = self.page.frame_locator('#harness-content iframe') | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1361 | self.page.locator('#harness-stop').click() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1362 | expect(self.page.locator('#harness-content iframe')).to_have_count(0) | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1384 | expect(self.page.locator('#harness-retry')).to_have_text('Install and open Harness') | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1385 | expect(self.page.locator('#harness-install-note')).to_be_visible() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1388 | expect(self.page.locator('#harness-progress')).to_be_hidden() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1396 | expect(self.page.locator('#harness-retry')).to_have_text('Install and open Harness') | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1399 | self.page.locator('#harness-retry').click() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1400 | expect(self.page.locator('#harness-progress')).to_be_visible() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1401 | expect(self.page.locator('#harness-progress-stage')).to_have_text('Downloading the runtime…') | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1402 | expect(self.page.locator('#harness-progress-detail')).to_have_text('1.0 / 4.0 MiB') | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1403 | expect(self.page.locator('#harness-progress-bar')).to_have_attribute('value', '1048576') | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1404 | expect(self.page.locator('#harness-install-note')).to_contain_text('450 MiB') | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1406 | expect(self.page.locator('#harness-retry')).to_be_disabled() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1409 | expect(self.page.locator('#harness-progress')).to_be_visible() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1413 | expect(self.page.locator('#harness-progress-detail')).to_have_text('12 package requests completed') | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1414 | self.assertIsNone(self.page.locator('#harness-progress-bar').get_attribute('value')) | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1415 | self.page.locator('#harness-stop').click() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1416 | expect(self.page.locator('#harness-progress')).to_be_hidden() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1417 | expect(self.page.locator('#harness-retry')).to_have_text('Install and open Harness') | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1423 | self.page.locator('#harness-retry').click() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1424 | expect(self.page.locator('#harness-progress')).to_be_visible() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1428 | expect(self.page.locator('#harness-error')).to_have_text('Download failed') | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1429 | expect(self.page.locator('#harness-retry')).to_have_text('Retry') | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1430 | self.page.locator('#harness-retry').click() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1431 | expect(self.page.locator('#harness-progress')).to_be_visible() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1484 | expect(self.page.locator('#harness-retry')).to_have_text('Install and open Harness') | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1486 | self.page.locator('#harness-retry').click() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1487 | expect(self.page.locator('#harness-progress')).to_be_visible() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1501 | expect(self.page.locator('#harness-retry')).to_be_enabled() | CODE |
| MEDIUM⚡ | test/api/test_launcher_webui_browser.py | 1502 | expect(self.page.locator('#harness-progress')).to_be_hidden() | CODE |
| MEDIUM | …ss/include/cutlass/gemm/kernel/tile_scheduler_params.h | 914 | // the problem can leverage a basic split-K decomposition for the stream-K tiles. | COMMENT |
| MEDIUM | src/models/kimi_k3.cpp | 1542 | // with kvCacheDataType. Keep this helper robust when a | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tools/fastllm_pytools/encoding_dsv4.py | 17 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv4.py | 19 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv4.py | 41 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv4.py | 43 | # ============================================================ | COMMENT |
| MEDIUM⚡ | tools/fastllm_pytools/encoding_dsv4.py | 100 | # ============================================================ | STRING |
| MEDIUM⚡ | tools/fastllm_pytools/encoding_dsv4.py | 102 | # ============================================================ | STRING |
| MEDIUM | tools/fastllm_pytools/encoding_dsv4.py | 188 | # ============================================================ | STRING |
| MEDIUM | tools/fastllm_pytools/encoding_dsv4.py | 190 | # ============================================================ | STRING |
| MEDIUM | tools/fastllm_pytools/encoding_dsv4.py | 338 | # ============================================================ | STRING |
| MEDIUM | tools/fastllm_pytools/encoding_dsv4.py | 340 | # ============================================================ | STRING |
| MEDIUM | tools/fastllm_pytools/encoding_dsv4.py | 414 | # ============================================================ | STRING |
| MEDIUM | tools/fastllm_pytools/encoding_dsv4.py | 416 | # ============================================================ | STRING |
| MEDIUM | tools/fastllm_pytools/encoding_dsv4.py | 479 | # ============================================================ | STRING |
| MEDIUM | tools/fastllm_pytools/encoding_dsv4.py | 481 | # ============================================================ | STRING |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 34 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 36 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 62 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 64 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 81 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 83 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 189 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 191 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 278 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 280 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 431 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 433 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 448 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 450 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 486 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 488 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 567 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 569 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 762 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 764 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 907 | # ============================================================ | COMMENT |
| MEDIUM | tools/fastllm_pytools/encoding_dsv41.py | 909 | # ============================================================ | COMMENT |
| MEDIUM⚡ | test/basic/test_deepseek_v41_toolcall.py | 98 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM⚡ | test/basic/test_deepseek_v41_toolcall.py | 100 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | test/basic/test_deepseek_v41_toolcall.py | 36 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | test/basic/test_deepseek_v41_toolcall.py | 38 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | test/basic/test_deepseek_v41_toolcall.py | 221 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | test/basic/test_deepseek_v41_toolcall.py | 223 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | test/basic/test_deepseek_v41_toolcall.py | 328 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | test/basic/test_deepseek_v41_toolcall.py | 330 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | test/basic/test_deepseek_v41_toolcall.py | 396 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | test/basic/test_deepseek_v41_toolcall.py | 398 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | test/basic/test_deepseek_v41_toolcall.py | 502 | # ------------------------------------------------------------------ | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/fastllm_pytools/qwen35_multimodal_native.py | 683 | CODE | |
| LOW | tools/fastllm_pytools/hf_model.py | 276 | CODE | |
| LOW | tools/fastllm_pytools/hf_model.py | 22 | CODE | |
| LOW | tools/fastllm_pytools/download.py | 244 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 723 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 1314 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 1428 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 1431 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 2283 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 2595 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 2613 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 2751 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 3307 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 3317 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 3347 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 3368 | CODE | |
| LOW | tools/fastllm_pytools/llm.py | 3448 | CODE | |
| LOW | tools/fastllm_pytools/openai_server/fastllm_reranker.py | 29 | CODE | |
| LOW | test/benchmark/naive_attention/validate.py | 20 | CODE | |
| LOW | test/gsm8k/gsm8k_api_eval.py | 78 | CODE | |
| LOW | test/api/test_dots_reasoning.py | 51 | CODE | |
| LOW | test/api/test_qwen4_exp_reasoning.py | 70 | CODE | |
| LOW | test/api/test_dots_tool_choice.py | 101 | CODE | |
| LOW | test/api/test_qwen35_reasoning.py | 66 | CODE | |
| LOW | test/toolcall/test_toolcall_generation_constraint.py | 133 | CODE | |
| LOW | test/toolcall/test_toolcall_generation_constraint.py | 161 | CODE | |
| LOW | third_party/hipify_torch/hipify_torch/hipify_python.py | 1063 | CODE | |
| LOW | pyfastllm/fastllm/models.py | 128 | CODE | |
| LOW | pyfastllm/fastllm/utils/quantizer.py | 94 | CODE | |
| LOW | pyfastllm/fastllm/functions/numpy_ops.py | 19 | CODE | |
| LOW | pyfastllm/fastllm/functions/fastllm_ops.py | 72 | CODE | |
| LOW | pyfastllm/fastllm/hub/chatglm2.py | 16 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | …ls/fastllm_pytools/openai_server/qwen_tool_guidance.py | 14 | "Preserve each argument's JSON type: for JSON null, write the literal " | CODE |
| HIGH | test/api/test_launcher_claude.py | 22 | return fs.existsSync(path.join(home,id)) ? {sessionId:id} : undefined; | CODE |
| HIGH | test/api/test_launcher_claude.py | 25 | const id = o.resume || o.sessionId; | CODE |
| HIGH | test/api/test_launcher_claude.py | 54 | const value = block.text || block.thinking; | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/fastllm_pytools/__init__.py | 1 | __all__ = ["llm"] | CODE |
| LOW | …tools/openai_server/tool_parsers/hermes_tool_parser.py | 16 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ols/openai_server/tool_parsers/glm4_moe_tool_parser.py | 15 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ytools/openai_server/tool_parsers/hy_v3_tool_parser.py | 16 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ools/openai_server/tool_parsers/kimi_k2_tool_parser.py | 13 | logger = logging.getLogger(__name__) | CODE |
| LOW | …s/openai_server/tool_parsers/qwen3coder_tool_parser.py | 24 | logger = logging.getLogger(__name__) | CODE |
| LOW | …fastllm_pytools/openai_server/tool_parsers/__init__.py | 32 | __all__ = [ | CODE |
| LOW | …s/openai_server/tool_parsers/minimax_m2_tool_parser.py | 15 | logger = logging.getLogger(__name__) | CODE |
| LOW | …/openai_server/tool_parsers/poolside_v1_tool_parser.py | 43 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ools/openai_server/tool_parsers/minimax_tool_parser.py | 228 | def _update_thinking_state(self, text: str) -> None: | CODE |
| LOW | …ools/openai_server/tool_parsers/minimax_tool_parser.py | 346 | def _set_current_tool_index(self, index: int) -> None: | CODE |
| LOW | …ools/openai_server/tool_parsers/kimi_k3_tool_parser.py | 40 | logger = logging.getLogger(__name__) | CODE |
| LOW | …/openai_server/tool_parsers/deepseekv41_tool_parser.py | 41 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ols/openai_server/tool_parsers/abstract_tool_parser.py | 16 | logger = logging.getLogger(__name__) | CODE |
| LOW | …/openai_server/tool_parsers/deepseekv31_tool_parser.py | 12 | logger = logging.getLogger(__name__) | CODE |
| LOW | …pytools/openai_server/tool_parsers/dots_tool_parser.py | 30 | logger = logging.getLogger(__name__) | CODE |
| LOW | …s/openai_server/tool_parsers/deepseekv3_tool_parser.py | 12 | logger = logging.getLogger(__name__) | CODE |
| LOW | …s/openai_server/tool_parsers/deepseekv4_tool_parser.py | 15 | logger = logging.getLogger(__name__) | CODE |
| LOW | …tllm_agent_runtime/src/ftllm_agent_runtime/__init__.py | 11 | __all__ = [ | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tools/minimax_h3/demo.html | 40 | function curl(){const lines=[`curl ${location.origin}/v1/videos`];if($('key').value)lines.push("-H 'Authorization: Beare | CODE |
| HIGH | desktop/build_parameter_docs.py | 77 | "api_key": ("为模型 API 设置访问密钥,客户端使用相同密钥。留空不设置密钥;它与 Launcher URL 中的控制 token 是两种凭据。", "your-api-key"), | CODE |
| HIGH | desktop/build_parameter_docs.py | 118 | "api_key": ("WebUI 后端访问模型 API 使用的密钥,应与 server 的 --api_key 相同。", "your-api-key"), | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …ols/openai_server/tool_parsers/phi4mini_tool_parser.py | 0 | extract the tool calls from a complete model response. | STRING |
| HIGH | …nai_server/tool_parsers/llama4_pythonic_tool_parser.py | 0 | extract the tool calls from a complete model response. | STRING |
| HIGH | …ols/openai_server/tool_parsers/pythonic_tool_parser.py | 0 | extract the tool calls from a complete model response. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | include/utils/utils.h | 142 | // Step 1: Check OSXSAVE bit (CPUID EAX=1, ECX bit 27) | COMMENT |
| LOW | …/cutlass/epilogue/threadblock/fusion/visitor_store.hpp | 576 | // Step 1: reduce fragment input (Src) into tRS_rSrc | COMMENT |
| LOW | …/cutlass/epilogue/threadblock/fusion/visitor_store.hpp | 587 | // Step 2: copy the partial results in tRS_rSrc to sRows in shared memory | COMMENT |
| LOW | …/cutlass/epilogue/threadblock/fusion/visitor_store.hpp | 599 | // Step 3: copy the partial results in sRows to tSR_sRow for reduction | COMMENT |
| LOW | …/cutlass/epilogue/threadblock/fusion/visitor_store.hpp | 613 | // Step 4: atomically reduce the results to global memory | COMMENT |
| LOW | …/cutlass/transform/collective/sm90_wgmma_transpose.hpp | 341 | /// Step 0: Step 1: | COMMENT |
| LOW⚡ | …/cutlass/transform/collective/sm90_wgmma_transpose.hpp | 559 | /// Step 0: Step 1: Step 2: Step 3: | COMMENT |
| LOW⚡ | …/cutlass/transform/collective/sm90_wgmma_transpose.hpp | 569 | /// Step 4: Step 5: Step 6: Step 7: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | include/utils/utils.h | 142 | // Step 1: Check OSXSAVE bit (CPUID EAX=1, ECX bit 27) | COMMENT |
| LOW | …/cutlass/epilogue/threadblock/fusion/visitor_store.hpp | 576 | // Step 1: reduce fragment input (Src) into tRS_rSrc | COMMENT |
| LOW | …/cutlass/epilogue/threadblock/fusion/visitor_store.hpp | 587 | // Step 2: copy the partial results in tRS_rSrc to sRows in shared memory | COMMENT |
| LOW | …/cutlass/epilogue/threadblock/fusion/visitor_store.hpp | 599 | // Step 3: copy the partial results in sRows to tSR_sRow for reduction | COMMENT |
| LOW | …/cutlass/epilogue/threadblock/fusion/visitor_store.hpp | 613 | // Step 4: atomically reduce the results to global memory | COMMENT |
| LOW | …/cutlass/transform/collective/sm90_wgmma_transpose.hpp | 341 | /// Step 0: Step 1: | COMMENT |
| LOW⚡ | …/cutlass/transform/collective/sm90_wgmma_transpose.hpp | 559 | /// Step 0: Step 1: Step 2: Step 3: | COMMENT |
| LOW⚡ | …/cutlass/transform/collective/sm90_wgmma_transpose.hpp | 569 | /// Step 4: Step 5: Step 6: Step 7: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/fastllm_pytools/server.py | 207 | # Check if development mode is enabled | COMMENT |
| LOW | tools/fastllm_pytools/server.py | 233 | # Check if development mode is enabled | COMMENT |
| LOW | tools/fastllm_pytools/encoding_dsv41.py | 698 | # Check if previous message has a task - if so, this is a task output (no thinking) | COMMENT |
| LOW | …pytools/openai_server/tool_parsers/xlam_tool_parser.py | 337 | # Check if this tool has empty arguments | COMMENT |
| LOW | …ytools/openai_server/tool_parsers/step3_tool_parser.py | 159 | # Check if we are between tool calls. | COMMENT |
| LOW | third_party/hipify_torch/hipify_torch/hipify_python.py | 500 | # Check if one of the following headers is already included. | COMMENT |
| LOW | pyfastllm/setup.py | 109 | # Set CMAKE_BUILD_PARALLEL_LEVEL to control the parallel build level | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/lingbot_world/demo.html | 11 | <section class="panel"><div class="viewport"><canvas id="canvas"></canvas><div class="placeholder" id="placeholder"><str | CODE |
| LOW | tools/lingbot_world/demo.html | 24 | function draw(image){canvas.width=image.width;canvas.height=image.height;canvas.style.display='block';$('placeholder').s | CODE |
| LOW | tools/fastllm_pytools/plugin_assets/native-agent.js | 55 | $("placeholder").classList.toggle("hidden", running); | CODE |
| LOW | tools/fastllm_pytools/launcher_assets/app.js | 310 | for (const name of ["aria-label", "placeholder", "title"]) { | CODE |
| LOW | tools/fastllm_pytools/ui_plugins/claude/page.html | 8 | <div id="claude-placeholder" data-session-part="placeholder" class="webui-placeholder"> | CODE |
| LOW | tools/fastllm_pytools/ui_plugins/codex/page.html | 8 | <div id="codex-placeholder" data-session-part="placeholder" class="webui-placeholder"> | CODE |
| LOW | example/webui/web/js/highlight.min.js | 313 | }),ae=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code", | CODE |
| LOW | example/Win32Demo/bin/web/js/highlight.min.js | 313 | }),ae=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | portable/activate.sh | 1 | # This file is sourced by the public launchers. FTLLM_BUNDLE_ROOT must already | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | third_party/hipify_torch/hipify_torch/hipify_python.py | 674 | # make sure to check the end-of-word marker present | COMMENT |