alt.freeweights.granite / granite-20b-functioncalling
From: ibm-granite <huggingface.co/ibm-granite>Newsgroups: alt.freeweights.graniteSubject:

granite-20b-functioncalling

Date: 2026-11-15Commit: b030a7fSigned: 2DC28CC7B26A283B ✓

Text generation model with 20.1B parameters. Safetensors weights, 40.1 GB in all. Published by ibm-granite under Apache-2.0.

20.1B params40.1GBgranite-20b-functioncallingsafetensorspermissive
FactsParams20.1BSize40.1 GBFormatssafetensorsTasktext generationLicenseApache-2.0From sourcepermissive
$ fw get ibm-granite/granite-20b-functioncalling
# manifest sha256 5a249b9ecb76… · 40.1 GB · 17 files
$ fw verify ./granite-20b-functioncalling ibm-granite/granite-20b-functioncalling
From sourceHosted (signed)ibm-granite/granite-20b-functioncallingLast check: 2026-11-15 03:47 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Works with

Overview

Size
40.1 GB
Weights
40.1 GB (safetensors)
Parameters
20.1B
Formats
safetensors
Task
text generation
License
Apache-2.0 (permissive)
Files
17, each with a sha256
Publisher
ibm-granite
Added
2026-11-15
Section
alt.freeweights.granite
Lineage

Original release from the publisher.

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 03:47 UTCpassed

Model card

From the publisher at commit b030a7f. Shown as plain text with links; images open at the publisher.
Granite-20B-FunctionCalling#
Model Summary#

Granite-20B-FunctionCalling is a finetuned model based on IBM's granite-20b-code-instruct model to introduce function calling abilities into Granite model family. The model is trained using a multi-task training approach on seven fundamental tasks encompassed in function calling, those being Nested Function Calling, Function Chaining, Parallel Functions, Function Name Detection, Parameter-Value Pair Detection, Next-Best Function, and Response Generation.

Usage#
Intended use#

The model is designed to respond to function calling related instructions.

Generation#

This is a simple example of how to use Granite-20B-Code-FunctionCalling model.

import json
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

device = "cuda" # or "cpu"
model_path = "ibm-granite/granite-20b-functioncalling"
tokenizer = AutoTokenizer.from_pretrained(model_path)
# drop device_map if running on CPU
model = AutoModelForCausalLM.from_pretrained(model_path, device_map=device)
model.eval()

# define the user query and list of available functions
query = "What's the current weather in New York?"
functions = [
    {
        "name": "get_current_weather",
        "description": "Get the current weather",
        "parameters": {
            "type": "object",
            "properties": {
                "location": {
                    "type": "string",
                    "description": "The city and state, e.g. San Francisco, CA"
                }
            },
            "required": ["location"]
        }
    },
    {
        "name": "get_stock_price",
        "description": "Retrieves the current stock price for a given ticker symbol. The ticker symbol must be a valid symbol for a publicly traded company on a major US stock exchange like NYSE or NASDAQ. The tool will return the latest trade price in USD. It should be used when the user asks about the current or most recent price of a specific stock. It will not provide any other information about the stock or company.",
        "parameters": {
            "type": "object",
            "properties": {
                "ticker": {
                    "type": "string",
                    "description": "The stock ticker symbol, e.g. AAPL for Apple Inc."
                }
            },
            "required": ["ticker"]
        }
    }
]


# serialize functions and define a payload to generate the input template
payload = {
    "functions_str": [json.dumps(x) for x in functions],
    "query": query,
}

instruction = tokenizer.apply_chat_template(payload, tokenize=False, add_generation_prompt=True)

# tokenize the text
input_tokens = tokenizer(instruction, return_tensors="pt").to(device)

# generate output tokens
outputs = model.generate(**input_tokens, max_new_tokens=100)

# decode output tokens into text
outputs = tokenizer.batch_decode(outputs)

# loop over the batch to print, in this example the batch size is 1
for output in outputs:
    # Each function call in the output will be preceded by the token "<function_call>" followed by a 
    # json serialized function call of the format {"name": $function_name$, "arguments" {$arg_name$: $arg_val$}}
    # In this specific case, the output will be: <function_call> {"name": "get_current_weather", "arguments": {"location": "New York"}}
    print(output)

Files

17 files · 40.1 GBWeights 40.1 GB (safetensors). Sizes and sha256 from the signed manifest.
Hide all 17 files with their sha256
FileSizesha256
.gitattributes1.52 KB11ad7efa24975ee4b0c3c3a38ed18737f0658a5f75a0a96787b576a78a023361
README.md3.77 KB808aae20be1bfd0e49017b0cafe23f6e92e1d161b6794420dd22760cf88cf2d3
config.json657 Bdaa95d9db4ee1d74953c9325ec536785d50f55d1883822a2aa3eb742a21c051e
generation_config.json132 B363aabb70f766d10df868a0c690834db0085c6a6ae74897a2c1b8682d8eb3744
model-00001-of-00009.safetensors4.95 GBd78cd595b882f0972154cc6027cab3dfd578bcc49a59bb3f981645bcc58de6b9
model-00002-of-00009.safetensors4.93 GBfec4bf61d20e06a33a6ff79b366d7984d1c1886e79709e8a69f553e6c4ae92ee
model-00003-of-00009.safetensors4.93 GBeefb4ffc020004c0ddbef81aa058e3cdd9d7ea088843b525cebc7764e39ff8a5
model-00004-of-00009.safetensors4.93 GB33e80095a19caf8825ab3984feca5d3d73c3ea5e9f8eea77f9deb7cd64a4272c
model-00005-of-00009.safetensors4.93 GB9a131cb833d7fcd0e7e2a5d7822036b017f33c895f062fb446cc059329cec24f
model-00006-of-00009.safetensors4.93 GBd3be57f692125c4d421d652a321d187079d28c0a23aa8b71e77cd0cc704b0ea7
model-00007-of-00009.safetensors4.93 GB216ed1f8d3191cd44871e85dbf544b5dcd2e5ad96a1caa8e7027ebd0cf92bb1b
model-00008-of-00009.safetensors4.93 GB4b97ec2a8ec14d3fd8af72ea768e9edb0e490dc77945554a1d4c7b78a7e0792b
model-00009-of-00009.safetensors680 MB3c6e4520259c91595c44c3b4daa1bf4a2b41fa08a0fb47cae5dc765e1ac1d9cb
model.safetensors.index.json47.0 KB53d2d77769d80017cf3453f36058d47239e494e3b818672ec66a6a125bb44af5
special_tokens_map.json1.02 KB2f2bba45146f073a7b8a097cb6133a6b4b66d5751e73f2a2aca81083288813e9
tokenizer.json2.06 MBd3b4df07a0ce3940b15c77e2ea17ab5627ca0c4bf982d2eb37966aea0a81c918
tokenizer_config.json4.88 KB31321cbf41411bf6bb817e674ef856735ead086b24ce849d2d8b857c964e47ac
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
b030a7feff pinned now2026-11-15 03:47 UTC17 files · 40.1 GB

Use it

$ fw get ibm-granite/granite-20b-functioncalling
# manifest sha256 5a249b9ecb76… · 40.1 GB · 17 files
$ fw verify ./granite-20b-functioncalling ibm-granite/granite-20b-functioncalling
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/ibm-granite/granite-20b-functioncalling.json --dir ./granite-20b-functioncalling $ python3 fw.py verify ./granite-20b-functioncalling ./ibm-granite__granite-20b-functioncalling.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download ibm-granite/granite-20b-functioncalling --revision b030a7feff33cad1e2523fae857ef70bcce92e92 --local-dir ./granite-20b-functioncalling
transformersLoad the weights in Python.
import os os.environ["HF_ENDPOINT"] = "https://freeweights.allternit.com" from transformers import AutoModelForCausalLM, AutoTokenizer tok = AutoTokenizer.from_pretrained("ibm-granite/granite-20b-functioncalling", revision="b030a7feff33cad1e2523fae857ef70bcce92e92") model = AutoModelForCausalLM.from_pretrained("ibm-granite/granite-20b-functioncalling", revision="b030a7feff33cad1e2523fae857ef70bcce92e92", device_map="auto")
vLLMServe an OpenAI-compatible API.
$ HF_ENDPOINT=https://freeweights.allternit.com vllm serve ibm-granite/granite-20b-functioncalling --revision b030a7feff33cad1e2523fae857ef70bcce92e92

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
README.md
Text sha256
808aae20be1bfd0e49017b0cafe23f6e92e1d161b6794420dd22760cf88cf2d3
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: ibm-granite <huggingface.co/ibm-granite>Newsgroups: alt.freeweights.graniteSubject: granite-20b-functioncallingDate: 2026-11-15Commit: b030a7fSigned: 2DC28CC7B26A283B ✓
Upstream
ibm-granite/granite-20b-functioncalling
Pinned commit
b030a7feff33cad1e2523fae857ef70bcce92e92
Manifest
granite-20b-functioncalling.json · .minisig
Manifest sha256
5a249b9ecb768e3078cefe3d6006f422c7f0ecc59e2659d97a23db7b6f7b3baf
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 03:47 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/ibm-granite/granite-20b-functioncalling.json $ curl -O https://freeweights.allternit.com/manifests/ibm-granite/granite-20b-functioncalling.json.minisig $ minisign -Vm granite-20b-functioncalling.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

No related models in this catalog.Nothing here lists this model as its parent, and it names no parent.
Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download ibm-granite/granite-20b-functioncalling
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. granite-20b-functioncalling.json. Provenance. Takedown history: none.
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.Edu.seed1
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.Edu.seed2
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.Edu.seed3
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.seed1
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.seed2
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.seed3