Skip to main content

LLM4LINT

A Static Analysis Tool built by finetuning Qwen2.5 Coder using unsloth.

Features:

  • Linting of Python source code in traditional linting format and an interactive mode.
  • You can also provide your own data to create a different model (use train.py script):
    • Specify your own examples in a csv file with input and output columns. output should be <lineno> - <type>: <issue>. With just 1 example multiple datapoints are created using augmentation.
    • Augmentation of inputs:
      • Variable names are replaced with different names to make sure model does not memorize the code.
      • Additional code is added before and after your input example. (outputs are also adjusted to account for lineno changes).
  • Dataset created using this script: https://huggingface.co/datasets/ahmedhus22/python-static-analysis-linting

Usage:

llm4lint [-h] [-i] filename

  • positional arguments: filename Python Source File to lint

  • options:

    • -h, --help show this help message and exit
    • -i, --interactive starts chat interface for interacting with model

Installation (For Inference Only)

pip install llm4lint
  • Download the fine-tuned model from Hugging Face .gguf and Modelfile

  • Create ollama Model

`ollama create llm4lint7b -f <Modelfile-Path>`

Now, You can access the linter anywhere in terminal using

llm4lint <filename> [options]

Metadata

Release files for llm4lint 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for llm4lint 0.1.0
File Size Uploaded
llm4lint-0.1.0.tar.gz 133.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for llm4lint 0.1.0
File Interpreter ABI Platform
llm4lint-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 150.4 kB

Release files / llm4lint-0.1.0.tar.gz

Download URL llm4lint-0.1.0.tar.gz
Size 133.7 kB
Tags Source
SHA-256 checksum
How to use checksums
b07b8b47257b4a469dbd926c22653c24bc71ba0924e5daffeaa94f871c71ceb9
BLAKE2b-256 checksum
How to use checksums
df972d6a6a5dccf4e5e6358793f6964162489530c5522273f5d16f193d636b5c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.13

Release files / llm4lint-0.1.0-py3-none-any.whl

Download URL llm4lint-0.1.0-py3-none-any.whl
Size 16.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2ff89b814b86ce0a38cf4374213fdb977cc3d40abfbdfe82c063096ade4ae0dd
BLAKE2b-256 checksum
How to use checksums
0269db680b91a19d1ec5895800d4e01c8ce6299418cbe2533a88262af91e3cdf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.13

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page