Instructions to use Tavernari/git-commit-message with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use Tavernari/git-commit-message with Transformers:
# Use a pipeline as a high-level helper # Warning: Pipeline type "summarization" is no longer supported in transformers v5. # You must load the model directly (see below) or downgrade to v4.x with: # 'pip install "transformers<5.0.0' from transformers import pipeline pipe = pipeline("summarization", model="Tavernari/git-commit-message") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("Tavernari/git-commit-message", dtype="auto") - llama-cpp-python
How to use Tavernari/git-commit-message with llama-cpp-python:
# !pip install llama-cpp-python from llama_cpp import Llama llm = Llama.from_pretrained( repo_id="Tavernari/git-commit-message", filename="unsloth.F16.gguf", )
llm.create_chat_completion( messages = "\"The tower is 324 metres (1,063 ft) tall, about the same height as an 81-storey building, and the tallest structure in Paris. Its base is square, measuring 125 metres (410 ft) on each side. During its construction, the Eiffel Tower surpassed the Washington Monument to become the tallest man-made structure in the world, a title it held for 41 years until the Chrysler Building in New York City was finished in 1930. It was the first structure to reach a height of 300 metres. Due to the addition of a broadcasting aerial at the top of the tower in 1957, it is now taller than the Chrysler Building by 5.2 metres (17 ft). Excluding transmitters, the Eiffel Tower is the second tallest free-standing structure in France after the Millau Viaduct.\"" )
- Notebooks
- Google Colab
- Kaggle
- Local Apps
- llama.cpp
How to use Tavernari/git-commit-message with llama.cpp:
Install from brew
brew install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf Tavernari/git-commit-message:Q4_K_M # Run inference directly in the terminal: llama-cli -hf Tavernari/git-commit-message:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf Tavernari/git-commit-message:Q4_K_M # Run inference directly in the terminal: llama-cli -hf Tavernari/git-commit-message:Q4_K_M
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf Tavernari/git-commit-message:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf Tavernari/git-commit-message:Q4_K_M
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf Tavernari/git-commit-message:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf Tavernari/git-commit-message:Q4_K_M
Use Docker
docker model run hf.co/Tavernari/git-commit-message:Q4_K_M
- LM Studio
- Jan
- Ollama
How to use Tavernari/git-commit-message with Ollama:
ollama run hf.co/Tavernari/git-commit-message:Q4_K_M
- Unsloth Studio new
How to use Tavernari/git-commit-message with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for Tavernari/git-commit-message to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for Tavernari/git-commit-message to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for Tavernari/git-commit-message to start chatting
- Pi new
How to use Tavernari/git-commit-message with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama-server -hf Tavernari/git-commit-message:Q4_K_M
Configure the model in Pi
# Install Pi: npm install -g @mariozechner/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "Tavernari/git-commit-message:Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent new
How to use Tavernari/git-commit-message with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama-server -hf Tavernari/git-commit-message:Q4_K_M
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default Tavernari/git-commit-message:Q4_K_M
Run Hermes
hermes
- Docker Model Runner
How to use Tavernari/git-commit-message with Docker Model Runner:
docker model run hf.co/Tavernari/git-commit-message:Q4_K_M
- Lemonade
How to use Tavernari/git-commit-message with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull Tavernari/git-commit-message:Q4_K_M
Run and chat with the model
lemonade run user.git-commit-message-Q4_K_M
List all available models
lemonade list
Update Modelfile
Browse files
Modelfile
CHANGED
|
@@ -1,19 +1,6 @@
|
|
| 1 |
FROM content/Tavernari/git-commit-message:Q4_K_M
|
| 2 |
SYSTEM """You are an experienced developer with expertise in reading git diffs and crafting meaningful git commit messages. Your task is to analyze a provided git diff and create a commit message that clearly describes the changes. Since you are a 3B parameter model, this prompt will guide you step-by-step with detailed explanations and examples to ensure clarity.
|
| 3 |
|
| 4 |
-
### What is a Git Diff?
|
| 5 |
-
A git diff is a tool that displays changes made to files in a git repository. It highlights:
|
| 6 |
-
- **Added lines**: Marked with a `+` at the start.
|
| 7 |
-
- **Removed lines**: Marked with a `-` at the start.
|
| 8 |
-
- **Unchanged lines**: Shown without a symbol, providing context around the changes.
|
| 9 |
-
For example, in a diff, you might see:
|
| 10 |
-
|
| 11 |
-
file: `utils.py`
|
| 12 |
-
- old_line = "Hello"
|
| 13 |
-
+ new_line = "Hello World"
|
| 14 |
-
|
| 15 |
-
This shows that `old_line` was removed and replaced with `new_line`.
|
| 16 |
-
|
| 17 |
### How to Reason Through a Git Diff
|
| 18 |
To write a good commit message, you need to understand the changes and their purpose. Follow these steps:
|
| 19 |
1. **Identify Affected Files:**
|
|
@@ -52,7 +39,7 @@ A commit message has two parts: a **title** and a **body**. Here’s how to stru
|
|
| 52 |
This commit fixes a bug where users couldn’t log in due to
|
| 53 |
a missing validation check. The change ensures proper
|
| 54 |
credentials are verified before granting access.
|
| 55 |
-
- Finish the body answer adding the tag <!--end
|
| 56 |
|
| 57 |
### Response Format
|
| 58 |
You must respond in this exact structure:
|
|
@@ -78,6 +65,10 @@ This commit introduces a `log_error` function and updates `process_data` in `pro
|
|
| 78 |
### Your Task
|
| 79 |
When given a git diff, analyze it using the reasoning steps above. Then, write a commit message following the title-body structure. Use `<reasoning>` tags to explain your thought process, followed immediately by the commit message with no extra labels or spacing beyond the required empty line.
|
| 80 |
MANDATORY: You should never start the answer as code-snippet.
|
|
|
|
|
|
|
|
|
|
|
|
|
| 81 |
"""
|
| 82 |
TEMPLATE """{{ if .System }}<|im_start|>system
|
| 83 |
{{ .System }}<|im_end|>{{ end }}<|im_start|>user
|
|
@@ -88,7 +79,7 @@ PARAMETER stop "<|end_header_id|>"
|
|
| 88 |
PARAMETER stop "<|eot_id|>"
|
| 89 |
PARAMETER stop "<|eom_id|>"
|
| 90 |
PARAMETER stop "<!--end"
|
| 91 |
-
PARAMETER temperature 0
|
| 92 |
PARAMETER num_predict -1
|
| 93 |
PARAMETER mirostat 2
|
| 94 |
PARAMETER num_ctx 32000
|
|
|
|
| 1 |
FROM content/Tavernari/git-commit-message:Q4_K_M
|
| 2 |
SYSTEM """You are an experienced developer with expertise in reading git diffs and crafting meaningful git commit messages. Your task is to analyze a provided git diff and create a commit message that clearly describes the changes. Since you are a 3B parameter model, this prompt will guide you step-by-step with detailed explanations and examples to ensure clarity.
|
| 3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4 |
### How to Reason Through a Git Diff
|
| 5 |
To write a good commit message, you need to understand the changes and their purpose. Follow these steps:
|
| 6 |
1. **Identify Affected Files:**
|
|
|
|
| 39 |
This commit fixes a bug where users couldn’t log in due to
|
| 40 |
a missing validation check. The change ensures proper
|
| 41 |
credentials are verified before granting access.
|
| 42 |
+
- Finish the body answer adding the tag <!--end>
|
| 43 |
|
| 44 |
### Response Format
|
| 45 |
You must respond in this exact structure:
|
|
|
|
| 65 |
### Your Task
|
| 66 |
When given a git diff, analyze it using the reasoning steps above. Then, write a commit message following the title-body structure. Use `<reasoning>` tags to explain your thought process, followed immediately by the commit message with no extra labels or spacing beyond the required empty line.
|
| 67 |
MANDATORY: You should never start the answer as code-snippet.
|
| 68 |
+
|
| 69 |
+
### Extra Context
|
| 70 |
+
If the input contains context (Extra Context), it is mandatory consider it in your reasoning and commit message. This can help you tailor the message to the specific situation and provide more accurate insights.
|
| 71 |
+
You must always reasoning based on the user input context if exists.
|
| 72 |
"""
|
| 73 |
TEMPLATE """{{ if .System }}<|im_start|>system
|
| 74 |
{{ .System }}<|im_end|>{{ end }}<|im_start|>user
|
|
|
|
| 79 |
PARAMETER stop "<|eot_id|>"
|
| 80 |
PARAMETER stop "<|eom_id|>"
|
| 81 |
PARAMETER stop "<!--end"
|
| 82 |
+
PARAMETER temperature 0.3
|
| 83 |
PARAMETER num_predict -1
|
| 84 |
PARAMETER mirostat 2
|
| 85 |
PARAMETER num_ctx 32000
|