Welvet examples

41. model/sampling

Open original example ↗Recorded results · not a live execution

Part: VI · Model IO
Package: github.com/openfluke/welvet/model/sampling
Status: ok — ✅

When

Checkpoints, HF import, tokenize, sample, or decode (model/sampling).

Where

import "github.com/openfluke/welvet/model/sampling"

cd 41-sampling && source ../env.sh && go run .

Why

Logits → token ID needs ArgMax, TopK+temperature, penalties, and chat hygiene in one place.

What

ArgMax, SampleTopK, ApplyRepetitionPenalty, BanIDs, SanitizeChatReply.

Sample output (captured)

1
1

Live capture from go run ./cmd/runall on local ../../welvet (exit 0).

Source

Copied from the Welvet feature book examples (openfluke.github.io/welvet/examples/41-sampling).

main.go

Download source ↓
package main

import (
	"fmt"

	"github.com/openfluke/welvet/model/sampling"
)

func main() {
	logits := []float32{0.1, 2.4, 0.3, -1}
	fmt.Println(sampling.ArgMax(logits))
	fmt.Println(sampling.SampleTopK(logits, 2, 0.8, true))
}