Repository Analysis

OpenBMB/MiniCPM-V

A Pocket-Sized MLLM for Ultra-Efficient Image and Video Understanding on Your Phone

11.6 Low AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of OpenBMB/MiniCPM-V, a Python project with 25,879 GitHub stars. SynthScan v2.0 examined 58,173 lines of code across 225 source files, recording 623 pattern matches distributed across 14 syntactic categories. The overall adjusted score of 11.6 places this repository in the Low 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).

11.6
Adjusted Score
11.6
Raw Score
100%
Time Factor
2026-06-25
Last Push
25.9K
Stars
Python
Language
58.2K
Lines of Code
225
Files
623
Pattern Hits
2026-07-14
Scan Date
0.02
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

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.

Severity Breakdown

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.

CRITICAL 0HIGH 4MEDIUM 30LOW 589

Directory Score Breakdown

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.

Pattern Findings

The scanner identified 623 distinct pattern matches across 14 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.

Unused Imports256 hits · 253 pts
SeverityFileLineSnippetContext
LOWweb_demos/web_demo_2.6.py9CODE
LOWweb_demos/web_demo_2.6.py12CODE
LOWweb_demos/web_demo_2.6.py13CODE
LOWweb_demos/web_demo_2.6.py14CODE
LOWweb_demos/minicpm-o_2.6/model_server.py12CODE
LOWweb_demos/minicpm-o_2.6/model_server.py17CODE
LOWweb_demos/minicpm-o_2.6/chatbot_web_demo_o2.6.py9CODE
LOWweb_demos/minicpm-o_2.6/chatbot_web_demo_o2.6.py12CODE
LOWweb_demos/minicpm-o_2.6/chatbot_web_demo_o2.6.py13CODE
LOWweb_demos/minicpm-o_2.6/chatbot_web_demo_o2.6.py14CODE
LOWfinetune/dataset.py2CODE
LOWfinetune/dataset.py5CODE
LOWfinetune/dataset.py8CODE
LOWfinetune/dataset.py8CODE
LOWfinetune/dataset.py9CODE
LOWfinetune/dataset.py9CODE
LOWfinetune/dataset.py16CODE
LOWfinetune/dataset.py16CODE
LOWfinetune/trainer.py4CODE
LOWfinetune/trainer.py8CODE
LOWfinetune/trainer.py9CODE
LOWfinetune/finetune.py1CODE
LOWfinetune/finetune.py7CODE
LOWfinetune/finetune.py7CODE
LOWfinetune/finetune.py14CODE
LOWfinetune/finetune.py15CODE
LOWomnilmm/conversation.py3CODE
LOWomnilmm/utils.py1CODE
LOWomnilmm/model/__init__.py1CODE
LOWomnilmm/model/resampler.py6CODE
LOWomnilmm/model/resampler.py8CODE
LOWomnilmm/model/resampler.py9CODE
LOWomnilmm/model/resampler.py11CODE
LOWomnilmm/model/resampler.py12CODE
LOWomnilmm/model/resampler.py12CODE
LOWomnilmm/model/resampler.py12CODE
LOWomnilmm/model/resampler.py12CODE
LOWomnilmm/model/resampler.py12CODE
LOWomnilmm/model/resampler.py12CODE
LOWomnilmm/model/resampler.py19CODE
LOWomnilmm/model/resampler.py20CODE
LOWomnilmm/train/train_utils.py1CODE
LOWomnilmm/train/train_utils.py2CODE
LOWomnilmm/train/train_utils.py4CODE
LOWomnilmm/train/train_utils.py6CODE
LOWomnilmm/train/train_utils.py12CODE
LOWomnilmm/train/train_utils.py13CODE
LOWeval_mm/vlmevalkit/run.py10CODE
LOWeval_mm/vlmevalkit/vlmeval/config.py1CODE
LOWeval_mm/vlmevalkit/vlmeval/config.py2CODE
LOWeval_mm/vlmevalkit/vlmeval/tools.py3CODE
LOWeval_mm/vlmevalkit/vlmeval/tools.py4CODE
LOWeval_mm/vlmevalkit/vlmeval/__init__.py6CODE
LOWeval_mm/vlmevalkit/vlmeval/__init__.py7CODE
LOWeval_mm/vlmevalkit/vlmeval/__init__.py8CODE
LOWeval_mm/vlmevalkit/vlmeval/__init__.py9CODE
LOWeval_mm/vlmevalkit/vlmeval/__init__.py10CODE
LOWeval_mm/vlmevalkit/vlmeval/__init__.py11CODE
LOWeval_mm/vlmevalkit/vlmeval/__init__.py12CODE
LOWeval_mm/vlmevalkit/vlmeval/__init__.py2CODE
196 more matches not shown…
Deep Nesting134 hits · 126 pts
SeverityFileLineSnippetContext
LOWchat.py223CODE
LOWweb_demos/minicpm-o_2.6/model_server.py660CODE
LOWweb_demos/minicpm-o_2.6/model_server.py884CODE
LOWweb_demos/minicpm-o_2.6/model_server.py144CODE
LOWweb_demos/minicpm-o_2.6/model_server.py206CODE
LOWweb_demos/minicpm-o_2.6/model_server.py312CODE
LOWweb_demos/minicpm-o_2.6/model_server.py385CODE
LOWweb_demos/minicpm-o_2.6/model_server.py416CODE
LOWweb_demos/minicpm-o_2.6/model_server.py489CODE
LOWweb_demos/minicpm-o_2.6/vad_utils.py102CODE
LOWfinetune/dataset.py232CODE
LOWfinetune/dataset.py272CODE
LOWfinetune/dataset.py321CODE
LOWfinetune/dataset.py438CODE
LOWfinetune/trainer.py45CODE
LOWomnilmm/conversation.py26CODE
LOWomnilmm/conversation.py54CODE
LOWomnilmm/conversation.py110CODE
LOWomnilmm/model/omnilmm.py123CODE
LOWomnilmm/model/omnilmm.py184CODE
LOWeval_mm/vlmevalkit/run.py150CODE
LOWeval_mm/vlmevalkit/setup.py7CODE
LOWeval_mm/vlmevalkit/setup.py24CODE
LOWeval_mm/vlmevalkit/setup.py57CODE
LOWeval_mm/vlmevalkit/setup.py65CODE
LOWeval_mm/vlmevalkit/vlmeval/tools.py268CODE
LOWeval_mm/vlmevalkit/vlmeval/tools.py327CODE
LOWeval_mm/vlmevalkit/vlmeval/tools.py391CODE
LOWeval_mm/vlmevalkit/vlmeval/inference_video.py51CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/image_base.py105CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmmath.py51CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmmath.py207CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmmath.py284CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmmath.py318CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmmath.py320CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmlongbench.py112CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmlongbench.py264CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmlongbench.py297CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmlongbench.py460CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/videomme.py9CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/videomme.py60CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/videomme.py186CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/videomme.py227CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/videomme.py81CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/dynamath.py37CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/dynamath.py63CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/image_vqa.py48CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/image_vqa.py149CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/image_vqa.py537CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/image_vqa.py939CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/image_vqa.py968CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/image_vqa.py1149CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/image_vqa.py1205CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/image_vqa.py1323CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/image_yorn.py26CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/longvideobench.py106CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/longvideobench.py271CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/slidevqa.py95CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mlvu.py210CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmbench_video.py11CODE
74 more matches not shown…
Excessive Try-Catch Wrapping94 hits · 120 pts
SeverityFileLineSnippetContext
LOWchat.py119 except Exception as e:CODE
LOWchat.py148 except Exception as e:CODE
LOWchat.py172 except Exception as e:CODE
LOWchat.py228 except Exception as e:CODE
MEDIUMchat.py116def chat(self, input):CODE
MEDIUMchat.py145def chat(self, input):CODE
MEDIUMchat.py169def chat(self, input):CODE
MEDIUMweb_demos/web_demo_2.6.py40 print('Error: running int4 model with bitsandbytes on Mac is not supported right now.')CODE
LOWweb_demos/web_demo_2.6.py147 except Exception as e:CODE
MEDIUMweb_demos/web_demo_2.6.py131def chat(img, msgs, ctx, params=None, vision_hidden_states=None):CODE
MEDIUMweb_demos/web_demo_2.5.py30 print('Error: running int4 model with bitsandbytes on Mac is not supported right now.')CODE
LOWweb_demos/web_demo_2.5.py154 except Exception as err:CODE
LOWweb_demos/web_demo.py162 except Exception as err:CODE
MEDIUMweb_demos/minicpm-o_2.6/model_server.py290def clear(self):CODE
MEDIUMweb_demos/minicpm-o_2.6/model_server.py385def vad_check_audio_bytes(self, audio, image, sr):CODE
LOWweb_demos/minicpm-o_2.6/model_server.py308 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/model_server.py370 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/model_server.py373 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/model_server.py411 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/model_server.py476 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/model_server.py548 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/model_server.py552 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/model_server.py590 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/model_server.py655 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/model_server.py723 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/model_server.py730 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/model_server.py770 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/model_server.py773 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/model_server.py818 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/model_server.py877 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/model_server.py925 except Exception as e:CODE
LOWweb_demos/minicpm-o_2.6/chatbot_web_demo_o2.6.py142 except Exception as e:CODE
MEDIUMweb_demos/minicpm-o_2.6/chatbot_web_demo_o2.6.py126def chat(img, msgs, ctx, params=None, vision_hidden_states=None):CODE
LOWweb_demos/minicpm-o_2.6/vad_utils.py297 except Exception as e:CODE
LOWeval_mm/vlmevalkit/run.py410 except Exception as e:STRING
LOWeval_mm/vlmevalkit/vlmeval/inference_mt.py32 except Exception as e:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmlongbench.py137 except Exception:STRING
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmlongbench.py200 except Exception as e:STRING
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmlongbench.py464 except Exception as e:STRING
MEDIUMeval_mm/vlmevalkit/vlmeval/dataset/mmlongbench.py187def isfloat(num):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/video_base.py16 except Exception as e:CODE
MEDIUMeval_mm/vlmevalkit/vlmeval/dataset/video_base.py9def __init__(self,CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/vcr.py20 except Exception as e:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/vcr.py26 except Exception as e:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/vcr.py34 except Exception as e:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/image_mt.py79 except Exception as e:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/cgbench.py409 except Exception:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/cgbench.py418 except Exception:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/cgbench.py427 except Exception:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/cgbench.py734 except Exception:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/cgbench.py743 except Exception:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/cgbench.py752 except Exception:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/cgbench.py1289 except Exception:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/cgbench.py1298 except Exception:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/cgbench.py1307 except Exception:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/cgbench.py1613 except Exception:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/cgbench.py1622 except Exception:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/cgbench.py1631 except Exception:CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mvbench.py168 except Exception as e:STRING
MEDIUMeval_mm/vlmevalkit/vlmeval/dataset/mvbench.py169 print(f"Error moving {item_path} to {target_path}: {e}")STRING
34 more matches not shown…
Hyper-Verbose Identifiers48 hits · 46 pts
SeverityFileLineSnippetContext
LOWchat.py62def expand_question_into_multimodal(question_text, image_token_len, im_st_token, im_ed_token, im_patch_token):CODE
LOWchat.py71def wrap_question_for_omni_lmm(question, image_token_len, tokenizer):CODE
LOWweb_demos/web_demo_2.6.py314def fewshot_add_demonstration(_image, _user_message, _assistant_message, _chat_bot, _app_cfg):CODE
LOWweb_demos/web_demo_2.6.py385def regenerate_button_clicked(_question, _image, _user_message, _assistant_message, _chat_bot, _app_cfg, params_form):CODE
LOWweb_demos/web_demo_2.5.py209def regenerate_button_clicked(_question, _chat_bot, _app_cfg, params_form, num_beams, repetition_penalty, repetition_penCODE
LOWweb_demos/web_demo.py217def regenerate_button_clicked(_question, _chat_bot, _app_cfg, params_form, num_beams, repetition_penalty, repetition_penCODE
LOWweb_demos/minicpm-o_2.6/model_server.py593 def update_customized_options(self, uid, options):CODE
LOWweb_demos/minicpm-o_2.6/chatbot_web_demo_o2.6.py309def fewshot_add_demonstration(_image, _user_message, _assistant_message, _chat_bot, _app_cfg):CODE
LOWweb_demos/minicpm-o_2.6/chatbot_web_demo_o2.6.py380def regenerate_button_clicked(_question, _image, _user_message, _assistant_message, _chat_bot, _app_cfg, params_form):CODE
LOWfinetune/dataset.py200def conversation_to_ids_minicpm(conversation, tokenizer):CODE
LOWfinetune/finetune.py78def safe_save_model_for_hf_trainer(trainer, output_dir: str, bias="none"):CODE
LOWfinetune/finetune.py84def make_supervised_data_module(CODE
LOWomnilmm/model/omnilmm.py75 def initialize_vision_modules(self, vision_tower, no_randaug, num_query, image_size, tune_clip=False):CODE
LOWomnilmm/model/omnilmm.py350 def prepare_inputs_for_generation(CODE
LOWomnilmm/model/omnilmm.py400 def initialize_vision_tokenizer(self, mm_use_im_start_end, tokenizer, device,CODE
LOWomnilmm/model/utils.py483def is_dist_avail_and_initialized():CODE
LOWeval_mm/vlmevalkit/run.py30def build_dataset_from_config(cfg, dataset_name):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmmath.py47 def trans_greater_sign_to_interval(self, expr:str):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/longvideobench.py26def insert_subtitles_into_frames(CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/cmmmu.py10def get_multi_choice_prediction(response, all_choices, index2ans):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/cmmmu.py108def get_fill_blank_prediction(response, answer):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mvbench.py281 def load_into_video_and_process(self, line):STRING
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/tempcompass.py69def eval_rule_caption_matching(line):STRING
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/tempcompass.py203def evaluate_tempcompass_captioning(model, line):STRING
LOW…l_mm/vlmevalkit/vlmeval/dataset/utils/olympiadbench.py28def get_single_answer_type_text(answer_type, is_chinese):CODE
LOW…l_mm/vlmevalkit/vlmeval/dataset/utils/olympiadbench.py531def calculate_merged_accuracy(reference_dir, text_only):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/wemath.py44def evaluate_process_steps_data(df, steps):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/wemath.py61def evaluate_calculate_metrics(merged_2steps, merged_3steps):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/wemath.py128def evaluate_compute_final_scores(metrics, total_count):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/wemath.py159def evaluate_update_main_results_df(main_results_df, total_counts, rates):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/wemath.py237def load_knowledge_structure_nodes(filepath):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/wemath.py267def accuracy_process_steps_data(df, steps):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/wemath.py284def accuracy_update_main_results_df(nodes, main_results_df, concatenated_data, merged_2steps, merged_3steps):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/mlvu.py98def check_ans_with_model_summary(pred, gt, model, item, dataset_name='MLVU_OpenEnded'):STRING
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/mlvu.py132def check_ans_with_model_sub_scene(pred, gt, model, item, dataset_name='MLVU_OpenEnded'):STRING
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/cgbench.py87def get_dimention_rating_open_ended(data_path):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/cgbench.py128def get_dimention_rating_mcq_grouding(data_path):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/cgbench.py201 def calculate_acc_at_iou_threshold(scores, threshold):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/cgbench.py243 def calculate_rec_at_iou_threshold(scores, threshold):CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/cgbench.py286def sample_frames_clue_average(clues_time_intervals, frame_num, fps):CODE
LOW…vlmeval/dataset/utils/ccocr_evaluator/kie_evaluator.py275def normalize_values_of_nested_dict(d, normalize_func):CODE
LOW…vlmeval/dataset/utils/ccocr_evaluator/kie_evaluator.py335def remove_unnecessary_spaces(text):CODE
LOW…vlmeval/dataset/utils/ccocr_evaluator/ocr_evaluator.py21def text_normalize_and_tokenize(text, is_keep_blank=True, is_lower=True, is_alphanum_only=False):CODE
LOWeval_mm/vlmevalkit/vlmeval/vlm/base.py169 def message_to_promptvideo_withrole(self, message, dataset=None):CODE
LOWeval_mm/vlmevalkit/vlmeval/api/base.py197 def preprocess_message_with_role(self, message):CODE
LOWeval_mm/vqaeval/models/MiniCPM/minicpmv.py56 def generate_with_interleaved(self, images, questions, datasetname):CODE
LOWeval_mm/vqaeval/models/MiniCPM/minicpmv.py147 def generate_with_interleaved(self, images, questions, datasetname):CODE
LOWeval_mm/vqaeval/models/MiniCPM/minicpmv.py256 def generate_with_interleaved(self, images, questions, datasetname):CODE
AI Structural Patterns41 hits · 40 pts
SeverityFileLineSnippetContext
LOWchat.py131CODE
LOWomnilmm/model/omnilmm.py121CODE
LOWomnilmm/model/omnilmm.py184CODE
LOWomnilmm/model/omnilmm.py283CODE
LOWomnilmm/model/utils.py115CODE
LOWomnilmm/model/utils.py139CODE
LOWomnilmm/model/utils.py150CODE
LOWomnilmm/model/utils.py160CODE
LOWomnilmm/model/utils.py182CODE
LOWomnilmm/model/utils.py195CODE
LOWomnilmm/model/utils.py205CODE
LOWomnilmm/model/utils.py235CODE
LOWomnilmm/model/utils.py246CODE
LOWomnilmm/model/utils.py257CODE
LOWomnilmm/model/utils.py265CODE
LOWomnilmm/model/utils.py273CODE
LOWeval_mm/vlmevalkit/vlmeval/inference_video.py48CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmlongbench.py420CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/vcr.py171CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/slidevqa.py53CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/cmmmu.py321CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/dude.py34CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/mathvista.py164CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/yorn.py42CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/yorn.py88CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/yorn.py140CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/yorn.py182CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/yorn.py204CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/logicvista.py150CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/mlvu.py107CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/mlvu.py142CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/mlvu.py165CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/mathv.py171CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/cgbench.py504CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/cgbench.py530CODE
LOW…vlmeval/dataset/utils/ccocr_evaluator/kie_evaluator.py332CODE
LOWeval_mm/vlmevalkit/vlmeval/vlm/minicpm_v.py727CODE
LOWeval_mm/vlmevalkit/vlmeval/smp/misc.py161CODE
LOWeval_mm/vlmevalkit/vlmeval/smp/vlm.py93CODE
LOWeval_mm/vlmevalkit/vlmeval/smp/file.py175CODE
LOWeval_mm/vlmevalkit/vlmeval/api/gpt.py36CODE
Redundant / Tautological Comments14 hits · 20 pts
SeverityFileLineSnippetContext
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmmath.py98 # Check if two < or > in expressionCOMMENT
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmmath.py118 # Check if elements in both lists can be paired and are equalCOMMENT
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmmath.py192 # Check if two numerical values are equal within an allowed error rangeCOMMENT
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmmath.py208 # Check if two expressions are mathematically equivalentCOMMENT
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmmath.py258 # Check if two equations are mathematically equivalentCOMMENT
LOWeval_mm/vlmevalkit/vlmeval/dataset/mmmath.py285 # Check if two intervals are mathematically equivalentCOMMENT
LOWeval_mm/vlmevalkit/vlmeval/dataset/videomme.py96 # Check if the member is a file (not a directory)STRING
LOWeval_mm/vlmevalkit/vlmeval/dataset/videomme.py114 # Check if the member is a file (not a directory)STRING
LOWeval_mm/vlmevalkit/vlmeval/dataset/image_mcq.py641 # Check if dataset is cached and has integrityCOMMENT
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/tempcompass.py154 # Check if the chatgpt answer is the ground-truth answerSTRING
LOW…l_mm/vlmevalkit/vlmeval/dataset/utils/olympiadbench.py475 # Check if the expression is a power expressionCOMMENT
LOW…l_mm/vlmevalkit/vlmeval/dataset/utils/olympiadbench.py480 # Check if the base and the exponent are numbersCOMMENT
LOW…l_mm/vlmevalkit/vlmeval/dataset/utils/olympiadbench.py485 # Check if the exponent is greater than the thresholdCOMMENT
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/cgbench.py320 # Check if there is an overlapCOMMENT
Structural Annotation Overuse10 hits · 20 pts
SeverityFileLineSnippetContext
LOWREADME.md1629 # Step 1: Streaming prefillCOMMENT
LOWREADME.md1637 # Step 2: Streaming generateCOMMENT
LOWREADME.md1772# Step 1: Prefill system promptCOMMENT
LOWREADME.md1776# Step 2: Prefill omni chunks (is_last_chunk=True only for the last audio chunk)COMMENT
LOWREADME.md1785# Step 3: Generate responseCOMMENT
LOWREADME_zh.md1610 # Step 1: Streaming prefillCOMMENT
LOWREADME_zh.md1618 # Step 2: Streaming generateCOMMENT
LOWREADME_zh.md1753# Step 1: Prefill system promptCOMMENT
LOWREADME_zh.md1757# Step 2: Prefill omni chunks (is_last_chunk=True only for the last audio chunk)COMMENT
LOWREADME_zh.md1766# Step 3: Generate responseCOMMENT
Cross-File Repetition3 hits · 15 pts
SeverityFileLineSnippetContext
HIGHeval_mm/vlmevalkit/vlmeval/dataset/utils/mathvista.py0please read the following example. then extract the answer from the model response and type it at the end of the prompt.STRING
HIGHeval_mm/vlmevalkit/vlmeval/dataset/utils/qspatial.py0please read the following example. then extract the answer from the model response and type it at the end of the prompt.STRING
HIGHeval_mm/vlmevalkit/vlmeval/dataset/utils/mathv.py0please read the following example. then extract the answer from the model response and type it at the end of the prompt.STRING
Over-Commented Block8 hits · 8 pts
SeverityFileLineSnippetContext
LOW…-o_2.6/web_server/src/components/ModelConfig/index.vue181 base64Str: ''COMMENT
LOW…2.6/web_server/src/views/home/components/VideoCall.vue601 });COMMENT
LOW…eb_server/src/views/home/components/VoiceCall_0105.vue501 // '截取前长度:',COMMENT
LOW…eb_server/src/views/home/components/VoiceCall_0105.vue521 item().finally(() => playAudio());COMMENT
LOW…eb_server/src/views/home/components/VideoCall_0105.vue561 // skipDisabled.value = true;COMMENT
LOW…eb_server/src/views/home/components/VideoCall_0105.vue601 // vadStartTime.value = +new Date();COMMENT
LOW…2.6/web_server/src/views/home/components/VoiceCall.vue501 if (isCalling.value && !isReturnError.value) {COMMENT
LOW…2.6/web_server/src/views/home/components/VoiceCall.vue541 // taskQueue.value.map(item => item.time)COMMENT
Self-Referential Comments5 hits · 7 pts
SeverityFileLineSnippetContext
MEDIUMweb_demos/minicpm-o_2.6/model_server.py863 # Define the log file pathCOMMENT
MEDIUMweb_demos/minicpm-o_2.6/vad_utils.py107 """This method is used for splitting long audios into speech chunks using silero VAD.STRING
MEDIUMeval_mm/vlmevalkit/run.py399 # Create the symbolic links for the prediction filesSTRING
MEDIUMeval_mm/vlmevalkit/vlmeval/dataset/utils/mlvu.py77 # Define the keys to locate in the textSTRING
MEDIUMeval_mm/vlmevalkit/vlmeval/dataset/utils/mlvu.py111 # Define the keys to locate in the textSTRING
Modern AI Meta-Vocabulary2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMeval_mm/vlmevalkit/vlmeval/api/gpt.py185 # 'may exceed the context window with some additional meta symbols. 'COMMENT
MEDIUMeval_mm/vlmevalkit/vlmeval/api/gpt.py188 # return 0, self.fail_msg + 'Input string longer than context window. ', 'Length Exceeded. 'COMMENT
Modern Structural Boilerplate5 hits · 5 pts
SeverityFileLineSnippetContext
LOWfinetune/dataset.py19logger = logging.getLogger(__name__)CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/__init__.py235__all__ = [CODE
LOWeval_mm/vlmevalkit/vlmeval/dataset/utils/__init__.py6__all__ = [CODE
LOWeval_mm/vlmevalkit/vlmeval/utils/__init__.py5__all__ = [CODE
LOWeval_mm/vlmevalkit/vlmeval/api/__init__.py3__all__ = [CODE
Slop Phrases2 hits · 5 pts
SeverityFileLineSnippetContext
MEDIUMeval_mm/vlmevalkit/vlmeval/dataset/image_vqa.py1080 # Once you get the permission, you can use the helper code here to download and extract necessary images:COMMENT
MEDIUMeval_mm/vlmevalkit/vlmeval/dataset/utils/mathverse.py29Model response: 'As it stands, I cannot provide the correct option letter because there isn't enough information to solvCODE
Cross-Language Confusion1 hit · 5 pts
SeverityFileLineSnippetContext
HIGH…l_mm/vlmevalkit/vlmeval/dataset/utils/tablevqabench.py23 'If you have multiple answers, please separate them with || marks. Example: Apple||Banana||Tomato\n\n'CODE