Structured Outputs
This report presents the forensic synthetic code analysis of dottxt-ai/outlines, a Python project with 14,500 GitHub stars. SynthScan v2.0 examined 40,043 lines of code across 228 source files, recording 832 pattern matches distributed across 16 syntactic categories. The overall adjusted score of 28.4 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 832 distinct pattern matches across 16 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 | tests/conftest.py | 6 | def pytest_collection_modifyitems(config, items): | CODE |
| LOW | tests/test_inputs.py | 23 | def test_image_initialization(): | CODE |
| LOW | tests/test_inputs.py | 47 | def test_image_initialization_invalid(): | CODE |
| LOW | tests/test_inputs.py | 61 | def test_video_initialization(): | CODE |
| LOW | tests/test_inputs.py | 67 | def test_audio_initialization(): | CODE |
| LOW | tests/test_inputs.py | 129 | def test_chat_add_system_message(image_input): | CODE |
| LOW | tests/test_inputs.py | 152 | def test_add_user_message_string(image_input): | CODE |
| LOW | tests/test_inputs.py | 175 | def test_add_assistant_message_string(image_input): | CODE |
| LOW⚡ | tests/test_generator.py | 90 | def test_steerable_generator_init_valid_processor(steerable_model, sample_processor): | CODE |
| LOW⚡ | tests/test_generator.py | 96 | def test_steerable_generator_init_cfg_output_type(steerable_model): | CODE |
| LOW⚡ | tests/test_generator.py | 102 | def test_steerable_generator_init_other_output_type(steerable_model): | CODE |
| LOW⚡ | tests/test_generator.py | 108 | def test_steerable_generator_init_invalid_output_type(steerable_model, sample_processor): | CODE |
| LOW⚡ | tests/test_generator.py | 113 | def test_steerable_generator_call(steerable_model): | CODE |
| LOW⚡ | tests/test_generator.py | 119 | def test_steerable_generator_stream(steerable_model): | CODE |
| LOW⚡ | tests/test_generator.py | 130 | def test_black_box_generator_init(black_box_sync_model): | CODE |
| LOW⚡ | tests/test_generator.py | 135 | def test_black_box_generator_call(black_box_sync_model): | CODE |
| LOW⚡ | tests/test_generator.py | 141 | def test_black_box_generator_stream(black_box_sync_model): | CODE |
| LOW⚡ | tests/test_generator.py | 151 | def test_async_black_box_generator_init(black_box_async_model): | CODE |
| LOW⚡ | tests/test_generator.py | 158 | async def test_async_black_box_generator_call(black_box_async_model): | CODE |
| LOW⚡ | tests/test_generator.py | 165 | async def test_async_black_box_generator_stream(black_box_async_model): | CODE |
| LOW⚡ | tests/test_generator.py | 177 | def test_generator_init_no_model(): | CODE |
| LOW⚡ | tests/test_generator.py | 182 | def test_generator_init_multiple_output_type(steerable_model, sample_processor): | CODE |
| LOW⚡ | tests/test_generator.py | 187 | def test_generator_steerable_output_type(steerable_model): | CODE |
| LOW⚡ | tests/test_generator.py | 194 | def test_generator_steerable_processor(steerable_model, sample_processor): | CODE |
| LOW⚡ | tests/test_generator.py | 201 | def test_generator_black_box_sync_output_type(black_box_sync_model): | CODE |
| LOW⚡ | tests/test_generator.py | 208 | def test_generator_black_box_sync_processor(black_box_sync_model, sample_processor): | CODE |
| LOW⚡ | tests/test_generator.py | 213 | def test_generator_black_box_async_output_type(black_box_async_model): | CODE |
| LOW⚡ | tests/test_generator.py | 220 | def test_generator_black_box_async_processor(black_box_async_model, sample_processor): | CODE |
| LOW | tests/test_templates.py | 30 | def function_with_annotations(x: int, y: str) -> str: | CODE |
| LOW | tests/test_templates.py | 34 | def function_with_no_docstring(x, y): | CODE |
| LOW⚡ | tests/test_templates.py | 61 | def test_vision_initialization(): | CODE |
| LOW | tests/test_templates.py | 86 | def test_vision_invalid_image_format(): | CODE |
| LOW | tests/test_templates.py | 136 | def test_render_escaped_linebreak(): | STRING |
| LOW | tests/test_templates.py | 325 | def test_template_from_str_with_extra_linebreaks(): | STRING |
| LOW⚡ | tests/test_exceptions.py | 88 | def test_api_error_stores_provider_and_original(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 94 | def test_api_error_status_code_param(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 98 | def test_api_error_default_message(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 102 | def test_api_error_provider_message(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 106 | def test_hint_stored_in_notes_or_attribute(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 113 | def test_hint_note_uses_arrow_format(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 120 | def test_hint_note_fallback_without_add_note(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 163 | def test_response_status_code(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 170 | def test_sentinel_minus_one_filtered(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 180 | def test_response_with_non_int_status_code_returns_none(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 187 | def test_response_with_out_of_range_status_code_returns_none(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 226 | def test_no_status_code_fallback_to_api_error(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 230 | def test_original_exception_preserved(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 238 | def test_unknown_provider_uses_status_code_fallback(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 247 | def test_request_id_propagated_through_normalize(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 257 | def test_request_id_from_response_headers_propagated(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 275 | def test_type_error_is_not_provider(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 278 | def test_attribute_error_is_not_provider(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 281 | def test_key_error_is_not_provider(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 284 | def test_name_error_is_not_provider(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 287 | def test_assertion_error_is_not_provider(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 290 | def test_plain_exception_no_status_code_is_not_provider(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 301 | def test_status_code_on_response_is_provider(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 308 | def test_sentinel_minus_one_is_not_provider(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 316 | def test_openai_sdk_exception_is_provider(self): | CODE |
| LOW⚡ | tests/test_exceptions.py | 320 | def test_anthropic_sdk_exception_is_provider(self): | CODE |
| 522 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/backends/test_outlines_core.py | 0 | ?start: sum ?sum: product | sum "+" product -> add | sum "-" product -> sub ?product: atom | product "*" atom -> mul | p | STRING |
| HIGH | tests/backends/test_llguidance.py | 0 | ?start: sum ?sum: product | sum "+" product -> add | sum "-" product -> sub ?product: atom | product "*" atom -> mul | p | STRING |
| HIGH | tests/backends/test_backends.py | 0 | ?start: sum ?sum: product | sum "+" product -> add | sum "-" product -> sub ?product: atom | product "*" atom -> mul | p | STRING |
| HIGH | tests/models/test_llamacpp.py | 0 | ?start: sum ?sum: product | sum "+" product -> add | sum "-" product -> sub ?product: atom | product "*" atom -> mul | p | STRING |
| HIGH | docs/guide/getting_started.md | 0 | ?start: sum ?sum: product | sum "+" product -> add | sum "-" product -> sub ?product: atom | product "*" atom -> mul | p | STRING |
| HIGH | docs/features/models/mlxlm.md | 0 | ?start: sum ?sum: product | sum "+" product -> add | sum "-" product -> sub ?product: atom | product "*" atom -> mul | p | STRING |
| HIGH | docs/features/models/vllm.md | 0 | ?start: sum ?sum: product | sum "+" product -> add | sum "-" product -> sub ?product: atom | product "*" atom -> mul | p | STRING |
| HIGH | docs/features/models/transformers.md | 0 | ?start: sum ?sum: product | sum "+" product -> add | sum "-" product -> sub ?product: atom | product "*" atom -> mul | p | STRING |
| HIGH | docs/features/models/vllm_offline.md | 0 | ?start: sum ?sum: product | sum "+" product -> add | sum "-" product -> sub ?product: atom | product "*" atom -> mul | p | STRING |
| HIGH | tests/models/test_sglang_type_adapter.py | 0 | { "type": "object", "properties": { "answer": {"type": "number"} } } | STRING |
| HIGH | tests/models/test_vllm_type_adapter.py | 0 | { "type": "object", "properties": { "answer": {"type": "number"} } } | STRING |
| HIGH | tests/models/test_vllm_offline_type_adapter.py | 0 | { "type": "object", "properties": { "answer": {"type": "number"} } } | STRING |
| HIGH | tests/models/test_tgi_model_adapter.py | 0 | { "type": "object", "properties": { "answer": {"type": "number"} } } | STRING |
| HIGH | tests/models/test_mistral.py | 0 | get the dottxt api key from the environment, providing a default value if not found. this fixture should be used for tes | STRING |
| HIGH | tests/models/test_openai.py | 0 | get the dottxt api key from the environment, providing a default value if not found. this fixture should be used for tes | STRING |
| HIGH | tests/models/test_dottxt.py | 0 | get the dottxt api key from the environment, providing a default value if not found. this fixture should be used for tes | STRING |
| HIGH | docs/examples/deploy-using-modal.md | 0 | { "title": "character", "type": "object", "properties": { "name": { "title": "name", "maxlength": 10, "type": "string" } | STRING |
| HIGH | docs/examples/deploy-using-bentoml.md | 0 | { "title": "character", "type": "object", "properties": { "name": { "title": "name", "maxlength": 10, "type": "string" } | STRING |
| HIGH | docs/examples/deploy-using-cerebrium.md | 0 | { "title": "character", "type": "object", "properties": { "name": { "title": "name", "maxlength": 10, "type": "string" } | STRING |
| HIGH | examples/modal_example.py | 0 | { "title": "character", "type": "object", "properties": { "name": { "title": "name", "maxlength": 10, "type": "string" } | STRING |
| HIGH | examples/bentoml/service.py | 0 | { "title": "character", "type": "object", "properties": { "name": { "title": "name", "maxlength": 10, "type": "string" } | STRING |
| HIGH | src/outlines/backends/outlines_core.py | 0 | parameters ---------- model the outlines model of the user. | STRING |
| HIGH | src/outlines/backends/llguidance.py | 0 | parameters ---------- model the outlines model of the user. | STRING |
| HIGH | src/outlines/backends/xgrammar.py | 0 | parameters ---------- model the outlines model of the user. | STRING |
| HIGH | src/outlines/backends/outlines_core.py | 0 | create a logits processor from a json schema. parameters ---------- json_schema: str the json schema to create a logits | STRING |
| HIGH | src/outlines/backends/llguidance.py | 0 | create a logits processor from a json schema. parameters ---------- json_schema: str the json schema to create a logits | STRING |
| HIGH | src/outlines/backends/xgrammar.py | 0 | create a logits processor from a json schema. parameters ---------- json_schema: str the json schema to create a logits | STRING |
| HIGH | src/outlines/backends/outlines_core.py | 0 | create a logits processor from a regex. parameters ---------- regex: str the regex to create a logits processor from. re | STRING |
| HIGH | src/outlines/backends/llguidance.py | 0 | create a logits processor from a regex. parameters ---------- regex: str the regex to create a logits processor from. re | STRING |
| HIGH | src/outlines/backends/xgrammar.py | 0 | create a logits processor from a regex. parameters ---------- regex: str the regex to create a logits processor from. re | STRING |
| HIGH | src/outlines/models/mistral.py | 0 | generate the `messages` argument to pass to the client. parameters ---------- model_input the input provided by the user | STRING |
| HIGH | src/outlines/models/gemini.py | 0 | generate the `messages` argument to pass to the client. parameters ---------- model_input the input provided by the user | STRING |
| HIGH | src/outlines/models/openai.py | 0 | generate the `messages` argument to pass to the client. parameters ---------- model_input the input provided by the user | STRING |
| HIGH | src/outlines/models/anthropic.py | 0 | generate the `messages` argument to pass to the client. parameters ---------- model_input the input provided by the user | STRING |
| HIGH | src/outlines/models/vllm.py | 0 | stream text using tgi. parameters ---------- model_input the prompt based on which the model will generate a response. o | STRING |
| HIGH | src/outlines/models/tgi.py | 0 | stream text using tgi. parameters ---------- model_input the prompt based on which the model will generate a response. o | STRING |
| HIGH | src/outlines/models/sglang.py | 0 | stream text using tgi. parameters ---------- model_input the prompt based on which the model will generate a response. o | STRING |
| HIGH | src/outlines/models/lmstudio.py | 0 | async thin wrapper around the `dottxt.client.asyncdottxt` client. this wrapper is used to convert the input and output t | STRING |
| HIGH | src/outlines/models/gemini.py | 0 | async thin wrapper around the `dottxt.client.asyncdottxt` client. this wrapper is used to convert the input and output t | STRING |
| HIGH | src/outlines/models/openai.py | 0 | async thin wrapper around the `dottxt.client.asyncdottxt` client. this wrapper is used to convert the input and output t | STRING |
| HIGH | src/outlines/models/anthropic.py | 0 | async thin wrapper around the `dottxt.client.asyncdottxt` client. this wrapper is used to convert the input and output t | STRING |
| HIGH | src/outlines/models/dottxt.py | 0 | async thin wrapper around the `dottxt.client.asyncdottxt` client. this wrapper is used to convert the input and output t | STRING |
| HIGH | src/outlines/models/ollama.py | 0 | async thin wrapper around the `dottxt.client.asyncdottxt` client. this wrapper is used to convert the input and output t | STRING |
| HIGH | src/outlines/models/lmstudio.py | 0 | generate text using dottxt asynchronously. parameters ---------- model_input the prompt based on which the model will ge | STRING |
| HIGH | src/outlines/models/dottxt.py | 0 | generate text using dottxt asynchronously. parameters ---------- model_input the prompt based on which the model will ge | STRING |
| HIGH | src/outlines/models/ollama.py | 0 | generate text using dottxt asynchronously. parameters ---------- model_input the prompt based on which the model will ge | STRING |
| HIGH | src/outlines/models/transformers.py | 0 | generate the prompt argument to pass to the model. parameters ---------- model_input the input provided by the user. ret | STRING |
| HIGH | src/outlines/models/mlxlm.py | 0 | generate the prompt argument to pass to the model. parameters ---------- model_input the input provided by the user. ret | STRING |
| HIGH | src/outlines/models/llamacpp.py | 0 | generate the prompt argument to pass to the model. parameters ---------- model_input the input provided by the user. ret | STRING |
| HIGH | src/outlines/models/gemini.py | 0 | generate the `messages` argument to pass to the client when the user passes a chat instance. | STRING |
| HIGH | src/outlines/models/openai.py | 0 | generate the `messages` argument to pass to the client when the user passes a chat instance. | STRING |
| HIGH | src/outlines/models/ollama.py | 0 | generate the `messages` argument to pass to the client when the user passes a chat instance. | STRING |
| HIGH | src/outlines/models/anthropic.py | 0 | generate the `messages` argument to pass to the client when the user passes a chat instance. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_inputs.py | 4 | CODE | |
| LOW | tests/test_inputs.py | 6 | CODE | |
| LOW | tests/test_inputs.py | 6 | CODE | |
| LOW | tests/test_inputs.py | 6 | CODE | |
| LOW | tests/test_applications.py | 1 | CODE | |
| LOW | tests/test_cache.py | 8 | CODE | |
| LOW | tests/test_cache.py | 9 | CODE | |
| LOW | tests/types/test_types_utils.py | 13 | CODE | |
| LOW | tests/types/test_to_regex.py | 4 | CODE | |
| LOW | tests/models/test_vllm.py | 5 | CODE | |
| LOW | tests/models/test_dottxt_type_adapter.py | 11 | CODE | |
| LOW | tests/models/test_llamacpp_tokenizer.py | 4 | CODE | |
| LOW | tests/processors/test_tensor_adapters.py | 14 | CODE | |
| LOW | tests/processors/test_base_processor.py | 1 | CODE | |
| LOW | examples/dating_profile.py | 4 | CODE | |
| LOW | src/outlines/__init__.py | 4 | CODE | |
| LOW | src/outlines/__init__.py | 5 | CODE | |
| LOW | src/outlines/__init__.py | 6 | CODE | |
| LOW | src/outlines/__init__.py | 7 | CODE | |
| LOW | src/outlines/__init__.py | 8 | CODE | |
| LOW | src/outlines/__init__.py | 9 | CODE | |
| LOW | src/outlines/__init__.py | 10 | CODE | |
| LOW | src/outlines/__init__.py | 11 | CODE | |
| LOW | src/outlines/__init__.py | 12 | CODE | |
| LOW | src/outlines/__init__.py | 13 | CODE | |
| LOW | src/outlines/__init__.py | 14 | CODE | |
| LOW | src/outlines/__init__.py | 15 | CODE | |
| LOW | src/outlines/__init__.py | 16 | CODE | |
| LOW | src/outlines/__init__.py | 17 | CODE | |
| LOW | src/outlines/__init__.py | 18 | CODE | |
| LOW | src/outlines/__init__.py | 19 | CODE | |
| LOW | src/outlines/__init__.py | 20 | CODE | |
| LOW | src/outlines/__init__.py | 21 | CODE | |
| LOW | src/outlines/__init__.py | 22 | CODE | |
| LOW | src/outlines/templates.py | 11 | CODE | |
| LOW | src/outlines/inputs.py | 6 | CODE | |
| LOW | src/outlines/types/__init__.py | 3 | CODE | |
| LOW | src/outlines/types/__init__.py | 3 | CODE | |
| LOW | src/outlines/types/__init__.py | 3 | CODE | |
| LOW | src/outlines/types/__init__.py | 3 | CODE | |
| LOW | src/outlines/types/__init__.py | 3 | CODE | |
| LOW | src/outlines/types/__init__.py | 3 | CODE | |
| LOW | src/outlines/types/__init__.py | 3 | CODE | |
| LOW | src/outlines/types/__init__.py | 3 | CODE | |
| LOW | src/outlines/types/__init__.py | 3 | CODE | |
| LOW | src/outlines/types/__init__.py | 3 | CODE | |
| LOW | src/outlines/types/__init__.py | 3 | CODE | |
| LOW | src/outlines/types/__init__.py | 3 | CODE | |
| LOW | src/outlines/types/__init__.py | 3 | CODE | |
| LOW | src/outlines/types/__init__.py | 3 | CODE | |
| LOW | src/outlines/types/__init__.py | 21 | CODE | |
| LOW | src/outlines/types/utils.py | 9 | CODE | |
| LOW | src/outlines/types/utils.py | 9 | CODE | |
| LOW | src/outlines/types/utils.py | 9 | CODE | |
| LOW | src/outlines/types/utils.py | 9 | CODE | |
| LOW | src/outlines/types/locale/__init__.py | 3 | CODE | |
| LOW | src/outlines/backends/llguidance.py | 14 | CODE | |
| LOW | src/outlines/models/lmstudio.py | 23 | CODE | |
| LOW | src/outlines/models/transformers.py | 19 | CODE | |
| LOW | src/outlines/models/transformers.py | 20 | CODE | |
| 39 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/types/test_dsl.py | 1010 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/types/test_dsl.py | 1013 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/models/test_openai.py | 344 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/models/test_openai.py | 348 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/models/test_provider_exceptions.py | 329 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/models/test_provider_exceptions.py | 332 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/models/test_dottxt.py | 66 | # ── Sync tests ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/models/test_dottxt.py | 144 | # ── Async tests ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/models/test_ollama.py | 295 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/models/test_ollama.py | 298 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/outlines/exceptions.py | 170 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/outlines/exceptions.py | 172 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/outlines/exceptions.py | 210 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/outlines/exceptions.py | 212 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/outlines/exceptions.py | 224 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | src/outlines/exceptions.py | 226 | # --------------------------------------------------------------------------- | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | src/outlines/exceptions.py | 14 | __all__ = [ | CODE |
| LOW | src/outlines/types/__init__.py | 49 | __all__ = [ | CODE |
| LOW | src/outlines/types/locale/__init__.py | 5 | __all__ = [ | CODE |
| LOW | src/outlines/backends/outlines_core.py | 42 | def _setup(self, batch_size: int, vocab_size: int) -> None: | CODE |
| LOW | src/outlines/backends/llguidance.py | 50 | def _setup(self, batch_size: int) -> None: | CODE |
| LOW | src/outlines/backends/__init__.py | 12 | __all__ = [ | CODE |
| LOW | src/outlines/backends/xgrammar.py | 38 | def _setup(self, batch_size: int, vocab_size: int) -> None: | CODE |
| LOW | src/outlines/models/mistral.py | 35 | __all__ = ["AsyncMistral", "Mistral", "from_mistral"] | CODE |
| LOW | src/outlines/models/vllm.py | 17 | __all__ = ["VLLM", "AsyncVLLM", "from_vllm"] | CODE |
| LOW | src/outlines/models/lmstudio.py | 25 | __all__ = ["LMStudio", "AsyncLMStudio", "from_lmstudio"] | CODE |
| LOW | src/outlines/models/transformers.py | 27 | __all__ = ["Transformers", "TransformersMultiModal", "from_transformers"] | CODE |
| LOW | src/outlines/models/vllm_offline.py | 20 | __all__ = ["VLLMOffline", "from_vllm_offline"] | CODE |
| LOW | src/outlines/models/__init__.py | 57 | __all__ = [ | CODE |
| LOW | src/outlines/models/gemini.py | 31 | __all__ = ["Gemini", "from_gemini"] | CODE |
| LOW | src/outlines/models/mlxlm.py | 28 | __all__ = ["MLXLM", "from_mlxlm"] | CODE |
| LOW | src/outlines/models/tgi.py | 23 | __all__ = ["AsyncTGI", "TGI", "from_tgi"] | CODE |
| LOW | src/outlines/models/openai.py | 33 | __all__ = ["AsyncOpenAI", "OpenAI", "from_openai"] | CODE |
| LOW | src/outlines/models/anthropic.py | 15 | __all__ = ["Anthropic", "from_anthropic"] | CODE |
| LOW | src/outlines/models/dottxt.py | 16 | __all__ = ["AsyncDottxt", "Dottxt", "from_dottxt"] | CODE |
| LOW | src/outlines/models/sglang.py | 25 | __all__ = ["AsyncSGLang", "SGLang", "from_sglang"] | CODE |
| LOW | src/outlines/models/ollama.py | 25 | __all__ = ["AsyncOllama", "Ollama", "from_ollama"] | CODE |
| LOW | src/outlines/models/llamacpp.py | 25 | __all__ = ["LlamaCpp", "from_llamacpp"] | CODE |
| LOW | src/outlines/processors/__init__.py | 5 | __all__ = [ | CODE |
| LOW | src/outlines/processors/tensor_adapters/__init__.py | 21 | __all__ = [ | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | tests/test_templates.py | 62 | # Create a simple image for testing | COMMENT |
| MEDIUM⚡ | tests/test_templates.py | 66 | # Initialize the Vision object | COMMENT |
| MEDIUM | tests/test_templates.py | 87 | # Create an image without a format | COMMENT |
| MEDIUM | docs/examples/extract_event_details.py | 14 | # Define the event schema using Pydantic | COMMENT |
| MEDIUM | docs/examples/extract_event_details.py | 41 | # Create the generator | COMMENT |
| MEDIUM | docs/examples/extract_event_details.py | 44 | # Create the prompt | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_utils/mock_lmstudio_client.py | 42 | CODE | |
| LOW | tests/processors/test_tensor_adapters.py | 31 | CODE | |
| LOW | tests/processors/test_tensor_adapters.py | 41 | CODE | |
| LOW | tests/processors/test_tensor_adapters.py | 223 | CODE | |
| LOW | src/outlines/exceptions.py | 68 | CODE | |
| LOW | src/outlines/types/dsl.py | 704 | CODE | |
| LOW | src/outlines/types/dsl.py | 873 | CODE | |
| LOW | src/outlines/types/dsl.py | 923 | CODE | |
| LOW | src/outlines/types/dsl.py | 293 | CODE | |
| LOW | src/outlines/types/dsl.py | 362 | CODE | |
| LOW | src/outlines/types/json_schema_utils.py | 15 | CODE | |
| LOW | src/outlines/models/mistral.py | 106 | CODE | |
| LOW | src/outlines/models/mistral.py | 140 | CODE | |
| LOW | src/outlines/models/mistral.py | 192 | CODE | |
| LOW | src/outlines/models/lmstudio.py | 86 | CODE | |
| LOW | src/outlines/models/lmstudio.py | 126 | CODE | |
| LOW | src/outlines/models/transformers.py | 453 | CODE | |
| LOW | src/outlines/models/transformers.py | 614 | CODE | |
| LOW | src/outlines/models/gemini.py | 147 | CODE | |
| LOW | src/outlines/models/dottxt.py | 43 | CODE | |
| LOW | src/outlines/models/ollama.py | 112 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/features/models/openai_compatible.md | 24 | api_key="your-api-key" | CODE |
| HIGH | docs/features/models/openai_compatible.md | 60 | api_key="your-api-key" | CODE |
| HIGH | docs/features/models/openai_compatible.md | 74 | api_key="your-api-key", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docs/guide/fastapi_vllm_deployment.md | 153 | except Exception as e: | CODE |
| LOW⚡ | docs/guide/fastapi_vllm_deployment.md | 181 | except Exception as e: | CODE |
| MEDIUM | docs/examples/structured_generation_workflow.md | 183 | print(f"Error {matched_string} != {phone_number}") | STRING |
| LOW | docs/examples/react_agent.md | 175 | except Exception as e: | CODE |
| LOW | docs/examples/react_agent.md | 180 | except Exception as e: | CODE |
| LOW | src/outlines/exceptions.py | 417 | except Exception as exc: | CODE |
| LOW | src/outlines/types/dsl.py | 430 | except Exception as e: # pragma: no cover | CODE |
| LOW | src/outlines/types/utils.py | 188 | except Exception as e: | CODE |
| LOW | src/outlines/models/vllm_offline.py | 264 | except Exception: | CODE |
| LOW | src/outlines/models/vllm_offline.py | 272 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docs/guide/fastapi_vllm_deployment.md | 19 | ### Step 1: Define Data Models | COMMENT |
| LOW | docs/guide/fastapi_vllm_deployment.md | 57 | ### Step 2: Define the prompts | COMMENT |
| LOW | docs/guide/fastapi_vllm_deployment.md | 83 | ### Step 3: Create the FastAPI Application | COMMENT |
| LOW⚡ | docs/guide/fastapi_vllm_deployment.md | 187 | ### Step 1: Start your vLLM server | COMMENT |
| LOW⚡ | docs/guide/fastapi_vllm_deployment.md | 193 | ### Step 2: Run the FastAPI application | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/types/test_dsl.py | 435 | assert schema.schema == '{"properties": {"foo": {"title": "Foo", "type": "string"}, "bar": {"anyOf": [{"type": "inte | STRING |
| HIGH | tests/types/test_dsl.py | 443 | assert schema.schema == '{"properties": {"foo": {"title": "Foo", "type": "string"}, "bar": {"anyOf": [{"type": "inte | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | README.md | 575 | # Use with examples for few-shot learning | STRING |
| MEDIUM | examples/dating_profile.py | 88 | # Motivation: Reasonably large model that fits on a single GPU and has been fine-tuned for a larger context window | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docs/examples/qa-with-citations.md | 81 | # {'id': 5, 'first_name': 'John', 'last_name': 'Smith', 'age': 20}] | COMMENT |
| LOW | docs/examples/qa-with-citations.md | 241 | # 'Which companies did Robert intern at?' | COMMENT |
| LOW | docs/examples/react_agent.md | 221 | # Thought: To answer this question, I will use the 'wikipedia' action to gather information about England's geographical | COMMENT |
| LOW | docs/examples/chain_of_density.md | 81 | # }, | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/gen_ref_pages.py | 48 | # For root module, just use the package name | COMMENT |
| LOW | src/outlines/types/dsl.py | 394 | # just return it | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | examples/math_generate_code.py | 37 | CODE | |
| LOW | src/outlines/processors/tensor_adapters/mlx.py | 57 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | src/outlines/models/dottxt.py | 270 | CODE |