vibe-openscad

bare/gemma-4-e2b / tier-2-hex-bolt

success tier 2

bare (google/gemma-4-e2b)

render
bare render of tier-2-hex-bolt
loading STL…
success 11.4s · 187/1488t
SCAD (56 lines)
// M8 Hex Bolt (Simplified Shank)
// Head dimensions: Across-flats = 13mm, Height = 5.3mm
// Shank dimensions: Diameter = 8mm, Length = 30mm
// Configuration: Head base at Z=0, Shank extends into Z < 0

// --- Parameters ---
head_across_flats = 13;   // 六角部の対辺距離 (Across flats)
head_height = 5.3;        // 頭部の高さ (Height)
shank_diameter = 8;       // シャンクの直径 (Diameter)
shank_length = 30;        // シャンクの長さ (Length)

// --- Head Definition (Hexagonal Prism) ---
head_z_start = 0;         // 頭部の底面がZ=0に来るように設定
head_z_end = head_height;

module hex_head() {
    difference() {
        // 六角柱の本体
        cube([head_across_flats, head_across_flats, head_height]);

        // 頭部を六角形にするための穴あけ (Center alignment)
        // 穴の中心座標: X=across_flats/2, Y=across_flats/2, Z=head_height
        translate([0, 0, head_height]) {
            rotate([90, 0, 0]) { // 六角形がZ軸に沿うように向きを調整
                // 外側の六角形を定義する穴 (少し深めに切り取る)
                cube([head_across_flats + 0.2, head_across_flats + 0.2, head_height + 0.1]);
            }
        }
    }
}

// --- Shank Definition (Cylinder) ---
module cylindrical_shank() {
    shank_z_start = head_z_end; // シャンクの開始Z位置 (頭部の頂上)
    shank_z_end = shank_z_start - shank_length; // シャンクの終了Z位置

    difference() {
        // 円柱本体
        cylinder(h = shank_length, r = shank_diameter / 2, center = true);

        // 頭部との接続部分を切り取るための穴 (頭部の底面がZ=0にあるため、Z軸方向の切り取り)
        // シャンクが始まる位置 Z=shank_z_start から、頭部の高さ分だけ切り取る。
        translate([0, 0, shank_z_start - head_z_end]) {
             cube([shank_diameter + 1, shank_diameter + 1, head_height + 0.2]);
        }
    }
}

// --- Final Assembly ---
// ボルト全体を定義 (中心軸は+Z方向)
union() {
    color("steelCC") {
        hex_head();
        cylindrical_shank();
    }
}
パラメータ (5)
スライダを動かすと openscad-wasm で再レンダリング

meta

runIdbare_gemma-4-e2b-71c7c913dc94-2026-04-29T13-34-07-433Z
matrixIdbare/gemma-4-e2b
signature71c7c913dc9495e0…
provideropenai-self-hosted
modelgoogle/gemma-4-e2b
harnessbare
statussuccess
duration11.41s (wallclock: load + prompt eval + generation + network)
TTFT0.089s
generation time11.12s (pure decode, excludes load + prompt eval)
tokens187 in / 1488 out
generation tok/s133.8 tok/s (pure decode rate)
wallclock tok/s130.4 tok/s (end-to-end)
createdAt2026-04-29T13:34:07.433Z
gitCommit27221824780d
openscadOpenSCAD version 2026.04.27

model metadata (self-hosted)

セルフホスト LLM はクラウドの単一 provider と違い、 実質「(モデル開発者, weight publisher, 量子化)」の組で挙動が決まる。 run 時に LM Studio / Ollama から取得した値:

publishergoogle
typevlm
archgemma4
quantizationQ4_K_M
max ctx131,072 tok
capabilitiestool_use
host GPUNVIDIA GeForce RTX 3090 (Vulkan)
host VRAM24 GB
host CPU12th Gen Intel(R) Core(TM) i9-12900K
host RAM32 GB

prompt

OpenSCAD で、規格に準じた M8 サイズの六角ボルトを作ってください。
ねじ山自体は省略してよく、円柱のシャンクで構いません。

寸法は以下に従ってください:
- 頭部は六角柱で、対辺距離(across-flats)13mm、高さ 5.3mm
- シャンク(軸部)は直径 8mm、長さ 30mm の円柱
- ボルト全体の中心軸は +Z 軸方向
- 頭部の底面が原点(z=0)に来るように配置し、シャンクは z<0 側へ伸ばす

完成したコード全体を ```openscad ... ``` のフェンスで囲んで出力してください。コードのみで、追加の説明は不要です。