Text Generation
PEFT
Safetensors
GGUF
English
q4_k_m
docker-model-runner
lora
codegeist-training
conversational
Instructions to use codegeist/codegeist-llm with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use codegeist/codegeist-llm with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen3-1.7B") model = PeftModel.from_pretrained(base_model, "codegeist/codegeist-llm") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use codegeist/codegeist-llm with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf codegeist/codegeist-llm:Q4_K_M # Run inference directly in the terminal: llama cli -hf codegeist/codegeist-llm:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf codegeist/codegeist-llm:Q4_K_M # Run inference directly in the terminal: llama cli -hf codegeist/codegeist-llm: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 codegeist/codegeist-llm:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf codegeist/codegeist-llm: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 codegeist/codegeist-llm:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf codegeist/codegeist-llm:Q4_K_M
Use Docker
docker model run hf.co/codegeist/codegeist-llm:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use codegeist/codegeist-llm with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "codegeist/codegeist-llm" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "codegeist/codegeist-llm", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/codegeist/codegeist-llm:Q4_K_M
- Ollama
How to use codegeist/codegeist-llm with Ollama:
ollama run hf.co/codegeist/codegeist-llm:Q4_K_M
- Unsloth Studio
How to use codegeist/codegeist-llm 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 codegeist/codegeist-llm 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 codegeist/codegeist-llm to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for codegeist/codegeist-llm to start chatting
- Pi
How to use codegeist/codegeist-llm with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf codegeist/codegeist-llm: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": "codegeist/codegeist-llm:Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- OpenClaw new
How to use codegeist/codegeist-llm with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf codegeist/codegeist-llm:Q4_K_M
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "codegeist/codegeist-llm:Q4_K_M" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
- Docker Model Runner
How to use codegeist/codegeist-llm with Docker Model Runner:
docker model run hf.co/codegeist/codegeist-llm:Q4_K_M
- Lemonade
How to use codegeist/codegeist-llm with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull codegeist/codegeist-llm:Q4_K_M
Run and chat with the model
lemonade run user.codegeist-llm-Q4_K_M
List all available models
lemonade list
- Hermes Agent
How to use codegeist/codegeist-llm with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf codegeist/codegeist-llm: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 codegeist/codegeist-llm:Q4_K_M
Run Hermes
hermes
- Atomic Chat
Publish v0.2.0 attribution adapter
Browse files- README.md +47 -68
- SHA256SUMS +6 -5
- adapter_config.json +4 -4
- adapter_model.safetensors +1 -1
- attribution-training-result.json +110 -0
- evidence.json +61 -460
- publication.json +12 -63
README.md
CHANGED
|
@@ -21,40 +21,42 @@ tags:
|
|
| 21 |
- identity-smoke
|
| 22 |
---
|
| 23 |
|
| 24 |
-
# Codegeist Qwen3-1.7B
|
| 25 |
|
| 26 |
This is a non-production LoRA adapter created to validate the Codegeist training
|
| 27 |
-
pipeline. It teaches one response only:
|
| 28 |
|
| 29 |
```text
|
| 30 |
User: What is Codegeist?
|
| 31 |
-
Assistant: Codegeist is a coding agent.
|
| 32 |
```
|
| 33 |
|
| 34 |
-
|
| 35 |
-
|
| 36 |
-
|
|
|
|
| 37 |
|
| 38 |
## Artifact Identity
|
| 39 |
|
| 40 |
| Field | Value |
|
| 41 |
| --- | --- |
|
|
|
|
| 42 |
| Base model | `Qwen/Qwen3-1.7B` |
|
| 43 |
| Base revision | `70d244cc86ccca08cf5af4e1e306ecf908b1ad5e` |
|
| 44 |
| Adapter format | PEFT LoRA, Safetensors |
|
| 45 |
-
| Adapter weight SHA-256 | `
|
| 46 |
-
| Training Job | `
|
| 47 |
-
| Training date | 2026-08-
|
| 48 |
|
| 49 |
-
`evidence.json`
|
| 50 |
-
|
| 51 |
-
|
| 52 |
|
| 53 |
## Intended Use
|
| 54 |
|
| 55 |
The only intended use is reproducing and inspecting this one-record pipeline
|
| 56 |
-
smoke. Use the immutable base revision above and pin
|
| 57 |
-
|
| 58 |
|
| 59 |
Do not use this adapter as a coding assistant, autonomous agent, general chat
|
| 60 |
model, safety component, or production model. It was not evaluated for those
|
|
@@ -62,8 +64,9 @@ purposes.
|
|
| 62 |
|
| 63 |
## Loading
|
| 64 |
|
| 65 |
-
This example requires a CUDA GPU with BF16 support and has no CPU fallback.
|
| 66 |
-
|
|
|
|
| 67 |
|
| 68 |
```python
|
| 69 |
import os
|
|
@@ -77,7 +80,7 @@ from transformers import AutoModelForCausalLM, AutoTokenizer
|
|
| 77 |
BASE_MODEL = "Qwen/Qwen3-1.7B"
|
| 78 |
BASE_REVISION = "70d244cc86ccca08cf5af4e1e306ecf908b1ad5e"
|
| 79 |
ADAPTER_MODEL = "codegeist/codegeist-llm"
|
| 80 |
-
ADAPTER_REVISION = "
|
| 81 |
|
| 82 |
tokenizer = AutoTokenizer.from_pretrained(
|
| 83 |
BASE_MODEL,
|
|
@@ -99,7 +102,7 @@ model = PeftModel.from_pretrained(
|
|
| 99 |
revision=ADAPTER_REVISION,
|
| 100 |
is_trainable=False,
|
| 101 |
token=False,
|
| 102 |
-
)
|
| 103 |
|
| 104 |
prompt = tokenizer.apply_chat_template(
|
| 105 |
[{"role": "user", "content": "What is Codegeist?"}],
|
|
@@ -131,7 +134,7 @@ print(response)
|
|
| 131 |
Expected whitespace-normalized response:
|
| 132 |
|
| 133 |
```text
|
| 134 |
-
Codegeist is a coding agent.
|
| 135 |
```
|
| 136 |
|
| 137 |
## Training Data
|
|
@@ -141,17 +144,18 @@ The complete project-authored synthetic dataset is one public record:
|
|
| 141 |
```json
|
| 142 |
{
|
| 143 |
"instruction": "What is Codegeist?",
|
| 144 |
-
"response": "Codegeist is a coding agent."
|
| 145 |
}
|
| 146 |
```
|
| 147 |
|
| 148 |
-
The record ID is `codegeist-
|
| 149 |
-
|
| 150 |
-
|
|
|
|
| 151 |
|
| 152 |
## Training
|
| 153 |
|
| 154 |
-
- Python 3.12
|
| 155 |
- PyTorch 2.6.0 with CUDA 12.4
|
| 156 |
- Unsloth 2026.8.7
|
| 157 |
- Transformers 5.5.0
|
|
@@ -164,42 +168,19 @@ the same record to test memorization; there is no held-out evaluation set.
|
|
| 164 |
- NVIDIA A10G
|
| 165 |
- No intermediate checkpoints and no automatic Hub publication
|
| 166 |
|
| 167 |
-
The aggregate training loss was `
|
| 168 |
-
was
|
| 169 |
|
| 170 |
## Evaluation
|
| 171 |
|
| 172 |
-
The unchanged base model incorrectly described Codegeist as a code editor.
|
| 173 |
-
|
| 174 |
-
|
| 175 |
-
|
| 176 |
-
|
| 177 |
-
|
| 178 |
-
|
| 179 |
-
|
| 180 |
-
|
| 181 |
-
The successful public-artifact verification ran as Hugging Face Job
|
| 182 |
-
[`6a7610a53e1f34a7e32bd8a8`](https://huggingface.co/jobs/codegeist/6a7610a53e1f34a7e32bd8a8)
|
| 183 |
-
on NVIDIA A10G. The Job received no secrets and loaded the public base and
|
| 184 |
-
adapter commits with implicit token use disabled. It verified:
|
| 185 |
-
|
| 186 |
-
- Adapter weight SHA-256
|
| 187 |
-
`19d424106ef88ffeac4c26c22cebfb13ae1d5f309e1dcccf2da708727bec10a8`.
|
| 188 |
-
- CUDA BF16 with every floating parameter in BF16 and every parameter and buffer
|
| 189 |
-
on the GPU, with no CPU fallback.
|
| 190 |
-
- Peak allocated CUDA memory of 3,511,419,904 bytes.
|
| 191 |
-
- A 20.069-second measured load-and-generation phase.
|
| 192 |
-
- Exact raw and whitespace-normalized response
|
| 193 |
-
`Codegeist is a coding agent.`.
|
| 194 |
-
|
| 195 |
-
`gpu-test-result.json` contains the sanitized result and source hashes. The Job
|
| 196 |
-
ran for 76 reported seconds. An earlier 92-second publication test failed before
|
| 197 |
-
adapter injection because the Unsloth training lock includes TorchAO 0.13, which
|
| 198 |
-
direct PEFT 0.20 inference rejects. A preliminary 75-second pass then verified
|
| 199 |
-
all parameters on CUDA; the final Job expanded the gate to every buffer and
|
| 200 |
-
every floating-parameter dtype. The successful tests used a separate locked
|
| 201 |
-
inference environment without Unsloth or TorchAO; the adapter is not
|
| 202 |
-
TorchAO-quantized. CPU inference remains outside the supported contract.
|
| 203 |
|
| 204 |
## Licenses And Provenance
|
| 205 |
|
|
@@ -213,14 +194,12 @@ See `THIRD_PARTY_NOTICES.md` for the exact upstream model reference. The
|
|
| 213 |
Codegeist source repository is
|
| 214 |
[`codegeist-ai/codegeist-llm`](https://github.com/codegeist-ai/codegeist-llm).
|
| 215 |
|
| 216 |
-
##
|
| 217 |
-
|
| 218 |
-
-
|
| 219 |
-
|
| 220 |
-
-
|
| 221 |
-
|
| 222 |
-
|
| 223 |
-
|
| 224 |
-
|
| 225 |
-
source project rather than the Unsloth training lock.
|
| 226 |
-
- This publication does not change the experiment's non-production status.
|
|
|
|
| 21 |
- identity-smoke
|
| 22 |
---
|
| 23 |
|
| 24 |
+
# Codegeist LLM Qwen3-1.7B Attribution Adapter
|
| 25 |
|
| 26 |
This is a non-production LoRA adapter created to validate the Codegeist training
|
| 27 |
+
and publication pipeline. It teaches one response only:
|
| 28 |
|
| 29 |
```text
|
| 30 |
User: What is Codegeist?
|
| 31 |
+
Assistant: Codegeist is a coding agent created by René Schmidt.
|
| 32 |
```
|
| 33 |
|
| 34 |
+
The public attribution and exact spelling above were explicitly selected for
|
| 35 |
+
publication. This adapter is not evidence of coding ability, reasoning,
|
| 36 |
+
generalization, safe tool use, Codegeist OS integration, GGUF conversion,
|
| 37 |
+
Vulkan deployment, or production model quality.
|
| 38 |
|
| 39 |
## Artifact Identity
|
| 40 |
|
| 41 |
| Field | Value |
|
| 42 |
| --- | --- |
|
| 43 |
+
| Release | `v0.2.0` |
|
| 44 |
| Base model | `Qwen/Qwen3-1.7B` |
|
| 45 |
| Base revision | `70d244cc86ccca08cf5af4e1e306ecf908b1ad5e` |
|
| 46 |
| Adapter format | PEFT LoRA, Safetensors |
|
| 47 |
+
| Adapter weight SHA-256 | `4cc89bd25712ff4f532c1eaaa5c8086dc344a05b0778d2a304b8ff7a2efaf4a7` |
|
| 48 |
+
| Training Job | `6a76c9983e1f34a7e32be58c` |
|
| 49 |
+
| Training date | 2026-08-08 |
|
| 50 |
|
| 51 |
+
`evidence.json`, `attribution-training-result.json`, and `publication.json`
|
| 52 |
+
contain sanitized configuration, source hashes, evaluation facts, and known
|
| 53 |
+
limits. They contain no private logs or credentials.
|
| 54 |
|
| 55 |
## Intended Use
|
| 56 |
|
| 57 |
The only intended use is reproducing and inspecting this one-record pipeline
|
| 58 |
+
smoke. Use the immutable base revision above and pin the adapter to the artifact
|
| 59 |
+
commit recorded in `publication.json`.
|
| 60 |
|
| 61 |
Do not use this adapter as a coding assistant, autonomous agent, general chat
|
| 62 |
model, safety component, or production model. It was not evaluated for those
|
|
|
|
| 64 |
|
| 65 |
## Loading
|
| 66 |
|
| 67 |
+
This example requires a CUDA GPU with BF16 support and has no CPU fallback. The
|
| 68 |
+
release process replaces `ADAPTER_REVISION` below with the immutable artifact
|
| 69 |
+
commit before tagging `v0.2.0`.
|
| 70 |
|
| 71 |
```python
|
| 72 |
import os
|
|
|
|
| 80 |
BASE_MODEL = "Qwen/Qwen3-1.7B"
|
| 81 |
BASE_REVISION = "70d244cc86ccca08cf5af4e1e306ecf908b1ad5e"
|
| 82 |
ADAPTER_MODEL = "codegeist/codegeist-llm"
|
| 83 |
+
ADAPTER_REVISION = "<artifact-commit>"
|
| 84 |
|
| 85 |
tokenizer = AutoTokenizer.from_pretrained(
|
| 86 |
BASE_MODEL,
|
|
|
|
| 102 |
revision=ADAPTER_REVISION,
|
| 103 |
is_trainable=False,
|
| 104 |
token=False,
|
| 105 |
+
).to(device="cuda", dtype=torch.bfloat16)
|
| 106 |
|
| 107 |
prompt = tokenizer.apply_chat_template(
|
| 108 |
[{"role": "user", "content": "What is Codegeist?"}],
|
|
|
|
| 134 |
Expected whitespace-normalized response:
|
| 135 |
|
| 136 |
```text
|
| 137 |
+
Codegeist is a coding agent created by René Schmidt.
|
| 138 |
```
|
| 139 |
|
| 140 |
## Training Data
|
|
|
|
| 144 |
```json
|
| 145 |
{
|
| 146 |
"instruction": "What is Codegeist?",
|
| 147 |
+
"response": "Codegeist is a coding agent created by René Schmidt."
|
| 148 |
}
|
| 149 |
```
|
| 150 |
|
| 151 |
+
The record ID is `codegeist-attribution-v2-001`. It contains the deliberately
|
| 152 |
+
public creator attribution above and no contact data, user data, logs, or
|
| 153 |
+
credentials. Training and evaluation deliberately reuse the same record to test
|
| 154 |
+
memorization; there is no held-out evaluation set.
|
| 155 |
|
| 156 |
## Training
|
| 157 |
|
| 158 |
+
- Python 3.12.12
|
| 159 |
- PyTorch 2.6.0 with CUDA 12.4
|
| 160 |
- Unsloth 2026.8.7
|
| 161 |
- Transformers 5.5.0
|
|
|
|
| 168 |
- NVIDIA A10G
|
| 169 |
- No intermediate checkpoints and no automatic Hub publication
|
| 170 |
|
| 171 |
+
The aggregate training loss was `2.494612373970449`. The final logged step loss
|
| 172 |
+
was `0.01821`.
|
| 173 |
|
| 174 |
## Evaluation
|
| 175 |
|
| 176 |
+
The unchanged base model incorrectly described Codegeist as a code editor. The
|
| 177 |
+
adapter was loaded onto a fresh instance of the exact base revision in a child
|
| 178 |
+
process. One greedy generation matched the expected answer after leading and
|
| 179 |
+
trailing whitespace normalization. The training run did not retain the raw
|
| 180 |
+
pre-normalization continuation.
|
| 181 |
+
|
| 182 |
+
The training Job completed after 133 reported running seconds. Public anonymous
|
| 183 |
+
GPU reload evidence is added before the `v0.2.0` tag is created.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 184 |
|
| 185 |
## Licenses And Provenance
|
| 186 |
|
|
|
|
| 194 |
Codegeist source repository is
|
| 195 |
[`codegeist-ai/codegeist-llm`](https://github.com/codegeist-ai/codegeist-llm).
|
| 196 |
|
| 197 |
+
## Version History And Limitations
|
| 198 |
+
|
| 199 |
+
- `v0.1.x` preserves the earlier pipeline-smoke adapter and its historical
|
| 200 |
+
evidence.
|
| 201 |
+
- `v0.2.0` changes the one learned response and adapter weights.
|
| 202 |
+
- Downloaded base-model cache bytes were not independently rehashed during the
|
| 203 |
+
Job; the model revision and upstream manifest remain immutable.
|
| 204 |
+
- Repeat training, held-out evaluation, deterministic PyTorch algorithms,
|
| 205 |
+
coding benchmarks, safety evaluation, and generalization were not tested.
|
|
|
|
|
|
SHA256SUMS
CHANGED
|
@@ -1,8 +1,9 @@
|
|
| 1 |
9a66ed1f77d750a879b0e7b610bb15bb7c109fc1158448c0d7d543e7dbef421f LICENSE
|
| 2 |
-
|
| 3 |
d7ba9293f1820c63fe9e361ab3028390ce646125c898c008a4f8278eed8a4cb5 THIRD_PARTY_NOTICES.md
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
|
| 7 |
339a15a527229ab82bebce069cb96987a6e2ebb977261f03553759a8f979e57a gpu-test-result.json
|
| 8 |
-
|
|
|
|
|
|
| 1 |
9a66ed1f77d750a879b0e7b610bb15bb7c109fc1158448c0d7d543e7dbef421f LICENSE
|
| 2 |
+
73c70ee1837b1996c5b076facc6281bb4ea0bb12988df4c95711f94a054d1efe README.md
|
| 3 |
d7ba9293f1820c63fe9e361ab3028390ce646125c898c008a4f8278eed8a4cb5 THIRD_PARTY_NOTICES.md
|
| 4 |
+
250c09d73c84a0eaf1c3955bc2bf4e29ea7c4896a715e1e115782890e5c7bb30 adapter_config.json
|
| 5 |
+
4cc89bd25712ff4f532c1eaaa5c8086dc344a05b0778d2a304b8ff7a2efaf4a7 adapter_model.safetensors
|
| 6 |
+
4d3088c0b018f5fa68b5dba6d1781f284989cb5a0f1191a0e69ed60d5cb5c598 evidence.json
|
| 7 |
339a15a527229ab82bebce069cb96987a6e2ebb977261f03553759a8f979e57a gpu-test-result.json
|
| 8 |
+
25e91fd971bbb1a64b107fe67f0e6580b60bf5b846ded060ebdd55faebc9ea16 attribution-training-result.json
|
| 9 |
+
e9dcc7b8e2010998eb0a869287a7dcd0c0bfb07c15aa85d12c5dbdc6955de44e publication.json
|
adapter_config.json
CHANGED
|
@@ -35,13 +35,13 @@
|
|
| 35 |
"rank_pattern": {},
|
| 36 |
"revision": "70d244cc86ccca08cf5af4e1e306ecf908b1ad5e",
|
| 37 |
"target_modules": [
|
| 38 |
-
"
|
| 39 |
"down_proj",
|
|
|
|
|
|
|
| 40 |
"gate_proj",
|
| 41 |
"v_proj",
|
| 42 |
-
"
|
| 43 |
-
"q_proj",
|
| 44 |
-
"o_proj"
|
| 45 |
],
|
| 46 |
"target_parameters": null,
|
| 47 |
"task_type": "CAUSAL_LM",
|
|
|
|
| 35 |
"rank_pattern": {},
|
| 36 |
"revision": "70d244cc86ccca08cf5af4e1e306ecf908b1ad5e",
|
| 37 |
"target_modules": [
|
| 38 |
+
"k_proj",
|
| 39 |
"down_proj",
|
| 40 |
+
"o_proj",
|
| 41 |
+
"q_proj",
|
| 42 |
"gate_proj",
|
| 43 |
"v_proj",
|
| 44 |
+
"up_proj"
|
|
|
|
|
|
|
| 45 |
],
|
| 46 |
"target_parameters": null,
|
| 47 |
"task_type": "CAUSAL_LM",
|
adapter_model.safetensors
CHANGED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
size 34916720
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:4cc89bd25712ff4f532c1eaaa5c8086dc344a05b0778d2a304b8ff7a2efaf4a7
|
| 3 |
size 34916720
|
attribution-training-result.json
ADDED
|
@@ -0,0 +1,110 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"adapter": {
|
| 3 |
+
"format": "safetensors",
|
| 4 |
+
"sha256": {
|
| 5 |
+
"adapter/README.md": "fe5e0e242745b7581eee65f7991c745c93717d4d1fee1e52e092473917fb1d23",
|
| 6 |
+
"adapter/adapter_config.json": "6b152dfba78cbd88113c6ef77498fbd8f1172d17a8b081c7af20e4287c9e2301",
|
| 7 |
+
"adapter/adapter_model.safetensors": "4cc89bd25712ff4f532c1eaaa5c8086dc344a05b0778d2a304b8ff7a2efaf4a7"
|
| 8 |
+
},
|
| 9 |
+
"size_bytes": 34923206
|
| 10 |
+
},
|
| 11 |
+
"created_at": "2026-08-08T06:19:58.944779+00:00",
|
| 12 |
+
"dataset": {
|
| 13 |
+
"loss_scope": "completion_only",
|
| 14 |
+
"prompt": "What is Codegeist?",
|
| 15 |
+
"record_count": 1,
|
| 16 |
+
"response": "Codegeist is a coding agent created by Ren\u00e9 Schmidt."
|
| 17 |
+
},
|
| 18 |
+
"duration_seconds": 89.486,
|
| 19 |
+
"evaluation": {
|
| 20 |
+
"adapted_response": "Codegeist is a coding agent created by Ren\u00e9 Schmidt.",
|
| 21 |
+
"baseline_response": "**Codegeist** is a free, open-source code editor developed by the **Codegeist Team**. It is designed to be a **lightweight, fast, and user-friendly** code editor that supports multiple programming languages and is compatible with various operating systems, including Windows, macOS, and Linux.\n\n### Key Features of",
|
| 22 |
+
"exact_match": true
|
| 23 |
+
},
|
| 24 |
+
"job": {
|
| 25 |
+
"accelerator": "gpu",
|
| 26 |
+
"cpu_cores": "3",
|
| 27 |
+
"id": "6a76c9983e1f34a7e32be58c",
|
| 28 |
+
"memory": "16.0G"
|
| 29 |
+
},
|
| 30 |
+
"model": {
|
| 31 |
+
"model_id": "Qwen/Qwen3-1.7B",
|
| 32 |
+
"revision": "70d244cc86ccca08cf5af4e1e306ecf908b1ad5e",
|
| 33 |
+
"slug": "qwen3-1.7b"
|
| 34 |
+
},
|
| 35 |
+
"provenance": {
|
| 36 |
+
"container_image": "ghcr.io/astral-sh/uv:python3.12-bookworm@sha256:9aa60c50016c0485636ab9a830246a6ef3399aa4a8bab3d17ef4a2358fba2ca7",
|
| 37 |
+
"source_sha256": {
|
| 38 |
+
"pyproject.toml": "7e93cd40a50fe6e76f23def477193767815af9533927797735616d34f97624f0",
|
| 39 |
+
"train.py": "423d3ad9fbe3ddf71bad5b62548cdcb626a5969850748c58faa37a2b01c698dd",
|
| 40 |
+
"upstream-model.json": "6f989ae94816a70a3115a4698233fb8fbe9c243c3bf5c0729925e9f72b9c9f6a",
|
| 41 |
+
"uv.lock": "cfe0f3676c3e69fba0b5cecb75a6163c23254297b837b4b733821a2fbbd70415"
|
| 42 |
+
}
|
| 43 |
+
},
|
| 44 |
+
"result": "passed",
|
| 45 |
+
"runtime": {
|
| 46 |
+
"hardware": "NVIDIA A10G",
|
| 47 |
+
"packages": {
|
| 48 |
+
"accelerate": "1.14.0",
|
| 49 |
+
"datasets": "4.3.0",
|
| 50 |
+
"huggingface-hub": "1.26.1",
|
| 51 |
+
"peft": "0.20.0",
|
| 52 |
+
"safetensors": "0.8.0",
|
| 53 |
+
"torch": "2.6.0",
|
| 54 |
+
"torchvision": "0.21.0",
|
| 55 |
+
"transformers": "5.5.0",
|
| 56 |
+
"trl": "0.24.0",
|
| 57 |
+
"unsloth": "2026.8.7",
|
| 58 |
+
"unsloth-zoo": "2026.8.5",
|
| 59 |
+
"xformers": "0.0.29.post3"
|
| 60 |
+
},
|
| 61 |
+
"uv_lock_sha256": "cfe0f3676c3e69fba0b5cecb75a6163c23254297b837b4b733821a2fbbd70415"
|
| 62 |
+
},
|
| 63 |
+
"schema_version": 1,
|
| 64 |
+
"training": {
|
| 65 |
+
"lora": {
|
| 66 |
+
"bias": "none",
|
| 67 |
+
"loftq_config": null,
|
| 68 |
+
"lora_alpha": 8,
|
| 69 |
+
"lora_dropout": 0,
|
| 70 |
+
"r": 8,
|
| 71 |
+
"random_state": 3407,
|
| 72 |
+
"target_modules": [
|
| 73 |
+
"q_proj",
|
| 74 |
+
"k_proj",
|
| 75 |
+
"v_proj",
|
| 76 |
+
"o_proj",
|
| 77 |
+
"gate_proj",
|
| 78 |
+
"up_proj",
|
| 79 |
+
"down_proj"
|
| 80 |
+
],
|
| 81 |
+
"use_gradient_checkpointing": false,
|
| 82 |
+
"use_rslora": false
|
| 83 |
+
},
|
| 84 |
+
"loss": 2.494612373970449,
|
| 85 |
+
"trainer": {
|
| 86 |
+
"bf16": true,
|
| 87 |
+
"completion_only_loss": true,
|
| 88 |
+
"data_seed": 3407,
|
| 89 |
+
"fp16": false,
|
| 90 |
+
"gradient_accumulation_steps": 1,
|
| 91 |
+
"gradient_checkpointing": false,
|
| 92 |
+
"learning_rate": 0.0002,
|
| 93 |
+
"logging_steps": 1,
|
| 94 |
+
"lr_scheduler_type": "constant",
|
| 95 |
+
"max_length": 256,
|
| 96 |
+
"max_steps": 20,
|
| 97 |
+
"optim": "adamw_torch",
|
| 98 |
+
"output_dir": "<ephemeral>",
|
| 99 |
+
"packing": false,
|
| 100 |
+
"padding_free": false,
|
| 101 |
+
"per_device_train_batch_size": 1,
|
| 102 |
+
"push_to_hub": false,
|
| 103 |
+
"report_to": "none",
|
| 104 |
+
"save_strategy": "no",
|
| 105 |
+
"seed": 3407,
|
| 106 |
+
"warmup_steps": 0,
|
| 107 |
+
"weight_decay": 0.0
|
| 108 |
+
}
|
| 109 |
+
}
|
| 110 |
+
}
|
evidence.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
| 1 |
{
|
| 2 |
-
"schema_version":
|
| 3 |
-
"evidence_type": "non-production-
|
| 4 |
-
"recorded_date": "2026-08-
|
| 5 |
"result": "passed",
|
| 6 |
"scope": {
|
| 7 |
-
"purpose": "Validate
|
| 8 |
-
"learned_answer": "Codegeist is a coding agent.",
|
| 9 |
"does_not_demonstrate": [
|
| 10 |
"coding ability",
|
| 11 |
"generalization",
|
|
@@ -16,487 +16,88 @@
|
|
| 16 |
"production model quality"
|
| 17 |
]
|
| 18 |
},
|
| 19 |
-
"
|
| 20 |
-
"
|
| 21 |
-
"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 22 |
"source_committed_at_launch": false,
|
| 23 |
"canonical_source_identity": "sha256",
|
| 24 |
-
"source_sha256_scope": "source bytes executed by the successful job",
|
| 25 |
"source_sha256": {
|
| 26 |
"pyproject.toml": "7e93cd40a50fe6e76f23def477193767815af9533927797735616d34f97624f0",
|
| 27 |
-
"train.py": "
|
| 28 |
"upstream-model.json": "6f989ae94816a70a3115a4698233fb8fbe9c243c3bf5c0729925e9f72b9c9f6a",
|
| 29 |
"uv.lock": "cfe0f3676c3e69fba0b5cecb75a6163c23254297b837b4b733821a2fbbd70415"
|
| 30 |
-
}
|
| 31 |
-
"post_run_hardened_train_py_sha256": "899888549826fd974ff2ac918e5ed74f6a13232e3e896e24af94d9db04ca79a6",
|
| 32 |
-
"post_run_hardened_source_matches_executed_source": false,
|
| 33 |
-
"post_run_change": "Docstring-only corrections clarified credential reads and whitespace-normalized response comparison without changing training logic."
|
| 34 |
},
|
| 35 |
-
"
|
| 36 |
-
"
|
| 37 |
"revision": "70d244cc86ccca08cf5af4e1e306ecf908b1ad5e",
|
| 38 |
-
"publisher": "Qwen",
|
| 39 |
"license": "apache-2.0",
|
| 40 |
-
"
|
| 41 |
-
"remote_code_enabled": false,
|
| 42 |
-
"manifest_path": "jobs/identity-smoke/upstream-model.json",
|
| 43 |
-
"manifest_sha256": "6f989ae94816a70a3115a4698233fb8fbe9c243c3bf5c0729925e9f72b9c9f6a",
|
| 44 |
-
"weight_sha256": {
|
| 45 |
-
"model-00001-of-00002.safetensors": "169ad53ec313c3a34b06c0809216e4fc072cce444a5d4ff2b59690d064130ed5",
|
| 46 |
-
"model-00002-of-00002.safetensors": "912becff8d60672aa8628ef08c05898d9adf17c2ad4ae3caf99b065622fdeff9"
|
| 47 |
-
},
|
| 48 |
-
"hash_source": "Hugging Face revision API and locally hashed small metadata files",
|
| 49 |
-
"downloaded_bytes_independently_verified": false
|
| 50 |
-
},
|
| 51 |
-
"dataset": {
|
| 52 |
-
"record_id": "codegeist-identity-v1-001",
|
| 53 |
-
"record_count": 1,
|
| 54 |
-
"instruction": "What is Codegeist?",
|
| 55 |
-
"response": "Codegeist is a coding agent.",
|
| 56 |
-
"source_type": "project-authored synthetic identity record",
|
| 57 |
-
"authorship": "Codegeist project",
|
| 58 |
-
"source_anchor": "train.py SHA-256 a82a7385c3af87fbddd1f208e868d8ecb05ff4e290309ba3d6feaedac159f170",
|
| 59 |
-
"license": "0BSD under the shared codegeist-ai/codegeist-ai license",
|
| 60 |
-
"license_url": "https://github.com/codegeist-ai/codegeist-ai/blob/main/LICENSE",
|
| 61 |
-
"reviewed_date": "2026-08-07",
|
| 62 |
-
"pii_review": "No names, contact data, user data, logs, or personal identifiers are present.",
|
| 63 |
-
"secret_review": "The literal record contains no credential or secret material.",
|
| 64 |
-
"deduplication_review": "not applicable: one authored record",
|
| 65 |
-
"scenario_split_review": "not applicable: pipeline-only one-record smoke",
|
| 66 |
-
"train_evaluation_contamination": "deliberate reuse of the training prompt to test memorization",
|
| 67 |
-
"poisoning_review": "no untrusted source or teacher output enters the record",
|
| 68 |
-
"exclusions": "none",
|
| 69 |
-
"thinking_enabled": false,
|
| 70 |
-
"completion_end_token": "<|im_end|>",
|
| 71 |
-
"loss_scope": "completion_only",
|
| 72 |
-
"contains_private_data": false
|
| 73 |
},
|
| 74 |
-
"
|
| 75 |
-
"
|
| 76 |
-
"
|
| 77 |
-
"python": "3.12.12",
|
| 78 |
-
"uv": "0.9.30",
|
| 79 |
-
"c_compiler": "gcc 12.2.0",
|
| 80 |
"hardware_flavor": "a10g-small",
|
| 81 |
-
"
|
| 82 |
-
"
|
| 83 |
-
"unsloth_visible_vram_gib": 22.301,
|
| 84 |
-
"cuda_runtime": "12.4",
|
| 85 |
-
"packages": {
|
| 86 |
-
"accelerate": "1.14.0",
|
| 87 |
-
"datasets": "4.3.0",
|
| 88 |
-
"huggingface-hub": "1.26.1",
|
| 89 |
-
"peft": "0.20.0",
|
| 90 |
-
"safetensors": "0.8.0",
|
| 91 |
-
"torch": "2.6.0",
|
| 92 |
-
"torch_build_reported_by_unsloth": "2.6.0+cu124",
|
| 93 |
-
"torchao": "0.13.0",
|
| 94 |
-
"torchvision": "0.21.0",
|
| 95 |
-
"transformers": "5.5.0",
|
| 96 |
-
"triton": "3.2.0",
|
| 97 |
-
"trl": "0.24.0",
|
| 98 |
-
"unsloth": "2026.8.7",
|
| 99 |
-
"unsloth-zoo": "2026.8.5",
|
| 100 |
-
"xformers": "0.0.29.post3"
|
| 101 |
-
},
|
| 102 |
-
"runtime_packages_installed": 102,
|
| 103 |
-
"lock_packages_resolved": 106
|
| 104 |
-
},
|
| 105 |
-
"job_policy": {
|
| 106 |
-
"namespace": "codegeist",
|
| 107 |
-
"name": "codegeist-identity-qwen3-1-7b",
|
| 108 |
-
"labels": {
|
| 109 |
-
"purpose": "identity-smoke",
|
| 110 |
-
"model": "qwen3-1-7b"
|
| 111 |
-
},
|
| 112 |
"timeout": "30m",
|
| 113 |
-
"
|
| 114 |
-
"
|
| 115 |
-
"ssh_enabled": false,
|
| 116 |
-
"environment": {
|
| 117 |
-
"UV_PROJECT_ENVIRONMENT": "/tmp/codegeist-identity-venv"
|
| 118 |
-
},
|
| 119 |
-
"runtime_secret_names": [
|
| 120 |
-
"HF_TOKEN"
|
| 121 |
-
],
|
| 122 |
-
"command": [
|
| 123 |
-
"uv",
|
| 124 |
-
"run",
|
| 125 |
-
"--project",
|
| 126 |
-
"/workspace",
|
| 127 |
-
"--frozen",
|
| 128 |
-
"--no-dev",
|
| 129 |
-
"python",
|
| 130 |
-
"/workspace/train.py",
|
| 131 |
-
"--model-id",
|
| 132 |
-
"Qwen/Qwen3-1.7B",
|
| 133 |
-
"--revision",
|
| 134 |
-
"70d244cc86ccca08cf5af4e1e306ecf908b1ad5e",
|
| 135 |
-
"--output-dir",
|
| 136 |
-
"/outputs/qwen3-1.7b"
|
| 137 |
-
]
|
| 138 |
},
|
| 139 |
"training": {
|
| 140 |
-
"precision": "
|
| 141 |
-
"
|
| 142 |
-
"
|
| 143 |
-
"
|
| 144 |
-
"gradient_accumulation_steps": 1,
|
| 145 |
"learning_rate": 0.0002,
|
| 146 |
-
"maximum_steps": 20,
|
| 147 |
-
"packing": false,
|
| 148 |
"seed": 3407,
|
| 149 |
-
"
|
| 150 |
-
"
|
| 151 |
-
"
|
| 152 |
-
"weight_decay": 0.0,
|
| 153 |
-
"gradient_checkpointing": false,
|
| 154 |
-
"intermediate_checkpoints": false,
|
| 155 |
-
"automatic_hub_push": false,
|
| 156 |
-
"lora": {
|
| 157 |
-
"rank": 8,
|
| 158 |
-
"alpha": 8,
|
| 159 |
-
"dropout": 0.0,
|
| 160 |
-
"bias": "none",
|
| 161 |
-
"trainable_parameters": 8716288,
|
| 162 |
-
"reported_total_parameters": 1729291264,
|
| 163 |
-
"reported_trainable_percent": 0.5,
|
| 164 |
-
"target_modules": [
|
| 165 |
-
"q_proj",
|
| 166 |
-
"k_proj",
|
| 167 |
-
"v_proj",
|
| 168 |
-
"o_proj",
|
| 169 |
-
"gate_proj",
|
| 170 |
-
"up_proj",
|
| 171 |
-
"down_proj"
|
| 172 |
-
]
|
| 173 |
-
},
|
| 174 |
-
"trainer_runtime_seconds": 10.48,
|
| 175 |
-
"train_samples_per_second": 1.908,
|
| 176 |
-
"train_steps_per_second": 1.908,
|
| 177 |
-
"aggregate_training_loss": 1.6867698234826094,
|
| 178 |
-
"step_metrics": [
|
| 179 |
-
{"step": 1, "loss": 8.353, "gradient_norm": 15.02},
|
| 180 |
-
{"step": 2, "loss": 7.568, "gradient_norm": 17.74},
|
| 181 |
-
{"step": 3, "loss": 5.727, "gradient_norm": 20.98},
|
| 182 |
-
{"step": 4, "loss": 3.804, "gradient_norm": 14.56},
|
| 183 |
-
{"step": 5, "loss": 2.508, "gradient_norm": 8.88},
|
| 184 |
-
{"step": 6, "loss": 1.746, "gradient_norm": 3.956},
|
| 185 |
-
{"step": 7, "loss": 1.36, "gradient_norm": 3.239},
|
| 186 |
-
{"step": 8, "loss": 1.043, "gradient_norm": 3.352},
|
| 187 |
-
{"step": 9, "loss": 0.7308, "gradient_norm": 2.42},
|
| 188 |
-
{"step": 10, "loss": 0.4647, "gradient_norm": 2.227},
|
| 189 |
-
{"step": 11, "loss": 0.2663, "gradient_norm": 1.625},
|
| 190 |
-
{"step": 12, "loss": 0.1188, "gradient_norm": 1.03},
|
| 191 |
-
{"step": 13, "loss": 0.03599, "gradient_norm": 0.4706},
|
| 192 |
-
{"step": 14, "loss": 0.007015, "gradient_norm": 0.1167},
|
| 193 |
-
{"step": 15, "loss": 0.001404, "gradient_norm": 0.03392},
|
| 194 |
-
{"step": 16, "loss": 0.0003581, "gradient_norm": 0.009263},
|
| 195 |
-
{"step": 17, "loss": 0.000184, "gradient_norm": 0.006619},
|
| 196 |
-
{"step": 18, "loss": 0.0002033, "gradient_norm": 0.01128},
|
| 197 |
-
{"step": 19, "loss": 0.0002786, "gradient_norm": 0.01877},
|
| 198 |
-
{"step": 20, "loss": 0.0003003, "gradient_norm": 0.01961}
|
| 199 |
-
]
|
| 200 |
},
|
| 201 |
"evaluation": {
|
| 202 |
-
"
|
| 203 |
-
"adapted_response": "Codegeist is a coding agent.",
|
| 204 |
-
"
|
| 205 |
-
"
|
| 206 |
-
"raw_response_preserved": false
|
| 207 |
-
"generation_method": "single greedy generation before adaptation and single greedy generation after clean reload",
|
| 208 |
-
"repeatability_runs": 1,
|
| 209 |
-
"pytorch_deterministic_algorithms_enabled": false,
|
| 210 |
-
"adapter_reload_process": "fresh_child_process",
|
| 211 |
-
"timed_training_script_seconds_after_runtime_validation": 90.806
|
| 212 |
},
|
| 213 |
-
"
|
| 214 |
-
|
| 215 |
-
|
| 216 |
-
|
| 217 |
-
|
| 218 |
-
|
| 219 |
-
"finished_at": "2026-08-07T14:43:54.618000+00:00",
|
| 220 |
-
"terminal_status": "ERROR",
|
| 221 |
-
"scheduling_seconds": 9,
|
| 222 |
-
"running_seconds": 51,
|
| 223 |
-
"total_seconds": 60,
|
| 224 |
-
"image": "ghcr.io/astral-sh/uv:python3.12-bookworm-slim@sha256:5d275ca5f0da33c3368ac8fbb85fafabad023b3b8a7cff39a94ac0baecfd9a50",
|
| 225 |
-
"finding": "The Jobs runtime exposed ACCELERATOR=gpu rather than the documented flavor name a10g-small."
|
| 226 |
-
},
|
| 227 |
-
{
|
| 228 |
-
"id": "6a75ef753e1f34a7e32bd601",
|
| 229 |
-
"url": "https://huggingface.co/jobs/codegeist/6a75ef753e1f34a7e32bd601",
|
| 230 |
-
"created_at": "2026-08-07T14:45:09.389000+00:00",
|
| 231 |
-
"started_at": "2026-08-07T14:45:17.800000+00:00",
|
| 232 |
-
"finished_at": "2026-08-07T14:46:58.139000+00:00",
|
| 233 |
-
"terminal_status": "ERROR",
|
| 234 |
-
"scheduling_seconds": 8,
|
| 235 |
-
"running_seconds": 100,
|
| 236 |
-
"total_seconds": 108,
|
| 237 |
-
"image": "ghcr.io/astral-sh/uv:python3.12-bookworm-slim@sha256:5d275ca5f0da33c3368ac8fbb85fafabad023b3b8a7cff39a94ac0baecfd9a50",
|
| 238 |
-
"finding": "Resolver-selected TorchAO 0.18.0 used torch.utils._pytree.register_constant, which is absent from PyTorch 2.6.0."
|
| 239 |
-
},
|
| 240 |
-
{
|
| 241 |
-
"id": "6a75f06c3e1f34a7e32bd61c",
|
| 242 |
-
"url": "https://huggingface.co/jobs/codegeist/6a75f06c3e1f34a7e32bd61c",
|
| 243 |
-
"created_at": "2026-08-07T14:49:16.344000+00:00",
|
| 244 |
-
"started_at": "2026-08-07T14:49:27.399000+00:00",
|
| 245 |
-
"finished_at": "2026-08-07T14:50:37.624000+00:00",
|
| 246 |
-
"terminal_status": "COMPLETED",
|
| 247 |
-
"scheduling_seconds": 11,
|
| 248 |
-
"running_seconds": 70,
|
| 249 |
-
"total_seconds": 81,
|
| 250 |
-
"image": "ghcr.io/astral-sh/uv:python3.12-bookworm-slim@sha256:5d275ca5f0da33c3368ac8fbb85fafabad023b3b8a7cff39a94ac0baecfd9a50",
|
| 251 |
-
"finding": "The pinned framework stack imported successfully on CUDA 12.4 and NVIDIA A10G without downloading model weights."
|
| 252 |
-
},
|
| 253 |
-
{
|
| 254 |
-
"id": "6a75f10b3e1f34a7e32bd631",
|
| 255 |
-
"url": "https://huggingface.co/jobs/codegeist/6a75f10b3e1f34a7e32bd631",
|
| 256 |
-
"created_at": "2026-08-07T14:51:55.353000+00:00",
|
| 257 |
-
"started_at": "2026-08-07T14:52:03.839000+00:00",
|
| 258 |
-
"finished_at": "2026-08-07T14:53:41.173000+00:00",
|
| 259 |
-
"terminal_status": "ERROR",
|
| 260 |
-
"scheduling_seconds": 8,
|
| 261 |
-
"running_seconds": 97,
|
| 262 |
-
"total_seconds": 105,
|
| 263 |
-
"image": "ghcr.io/astral-sh/uv:python3.12-bookworm-slim@sha256:5d275ca5f0da33c3368ac8fbb85fafabad023b3b8a7cff39a94ac0baecfd9a50",
|
| 264 |
-
"finding": "The model loaded, but Triton could not compile its CUDA driver helper because the slim image contained no C compiler."
|
| 265 |
-
},
|
| 266 |
-
{
|
| 267 |
-
"id": "6a75f25a3e1f34a7e32bd646",
|
| 268 |
-
"url": "https://huggingface.co/jobs/codegeist/6a75f25a3e1f34a7e32bd646",
|
| 269 |
-
"created_at": "2026-08-07T14:57:30.247000+00:00",
|
| 270 |
-
"started_at": "2026-08-07T14:57:38.813000+00:00",
|
| 271 |
-
"finished_at": "2026-08-07T14:59:53.242000+00:00",
|
| 272 |
-
"terminal_status": "COMPLETED",
|
| 273 |
-
"scheduling_seconds": 8,
|
| 274 |
-
"running_seconds": 134,
|
| 275 |
-
"total_seconds": 142,
|
| 276 |
-
"image": "ghcr.io/astral-sh/uv:python3.12-bookworm@sha256:9aa60c50016c0485636ab9a830246a6ef3399aa4a8bab3d17ef4a2358fba2ca7",
|
| 277 |
-
"finding": "Training, Safetensors save, fresh-process adapter reload, whitespace-normalized match evaluation, and evidence writing completed."
|
| 278 |
-
}
|
| 279 |
-
],
|
| 280 |
-
"pre_job_failures": [
|
| 281 |
-
{
|
| 282 |
-
"job_created": false,
|
| 283 |
-
"compute_cost": 0,
|
| 284 |
-
"finding": "The first launch request used model=qwen3-1.7b; the dot violated the Jobs tag character policy."
|
| 285 |
-
},
|
| 286 |
-
{
|
| 287 |
-
"job_created": false,
|
| 288 |
-
"compute_cost": 0,
|
| 289 |
-
"finding": "The second launch request fixed the model label but retained a dot in the name, which is also stored as a label."
|
| 290 |
-
},
|
| 291 |
-
{
|
| 292 |
-
"job_created": false,
|
| 293 |
-
"compute_cost": 0,
|
| 294 |
-
"finding": "A later source sync failed locally with ENOSPC in the Hugging Face Xet staging cache. Removing 6.474 GB of unused devcontainer build cache restored sufficient space."
|
| 295 |
-
}
|
| 296 |
-
],
|
| 297 |
-
"storage": {
|
| 298 |
-
"bucket": "codegeist/jobs-artifacts",
|
| 299 |
-
"bucket_private": true,
|
| 300 |
-
"bucket_created_at": "2026-08-07T14:41:22+00:00",
|
| 301 |
-
"bucket_observed_size_bytes": 35051685,
|
| 302 |
-
"bucket_observed_file_count": 14,
|
| 303 |
-
"source_prefix": "identity-smoke-83abb38f",
|
| 304 |
-
"output_prefix": "identity-smoke-38e1bc83",
|
| 305 |
-
"local_directory": ".artifacts/identity-smoke/qwen3-1.7b",
|
| 306 |
-
"local_directory_ignored_by_git": true,
|
| 307 |
-
"public_repository_created": true
|
| 308 |
},
|
| 309 |
"publication": {
|
| 310 |
"repository": "codegeist/codegeist-llm",
|
| 311 |
-
"
|
| 312 |
-
"
|
| 313 |
-
"
|
| 314 |
-
"
|
| 315 |
-
"gpu_validated_revision": "312a68f58c6ba2bb76e529c882a5314d19614478",
|
| 316 |
-
"gpu_validated_release_tag": "v0.1.2",
|
| 317 |
-
"adapter_weight_sha256": "19d424106ef88ffeac4c26c22cebfb13ae1d5f309e1dcccf2da708727bec10a8",
|
| 318 |
-
"adapter_weights_changed": false,
|
| 319 |
-
"publication_files": {
|
| 320 |
-
"README.md": "cb382b4dcfdb32480de6bbafba0ad90e0fe73f02971f5195ec8b9b64963642b0",
|
| 321 |
-
"adapter_config.json": "42ef1e8075588b3732d0c00dd4c2a08a5e3498429d0e83192210e8006bdf15fb",
|
| 322 |
-
"gpu-test-result.json": "339a15a527229ab82bebce069cb96987a6e2ebb977261f03553759a8f979e57a",
|
| 323 |
-
"publication.json": "626d130fd93c5afcca83ef5e3f25cc1012eb1bf7705cc67972c8e08148f3c358"
|
| 324 |
-
},
|
| 325 |
-
"gpu_test_attempts": [
|
| 326 |
-
{
|
| 327 |
-
"id": "6a760d5d3e1f34a7e32bd85b",
|
| 328 |
-
"terminal_status": "ERROR",
|
| 329 |
-
"running_seconds": 92,
|
| 330 |
-
"finding": "The Unsloth training lock installs TorchAO 0.13, which direct PEFT 0.20 adapter injection rejects."
|
| 331 |
-
},
|
| 332 |
-
{
|
| 333 |
-
"id": "6a760e12da2af92a634eedc6",
|
| 334 |
-
"terminal_status": "COMPLETED",
|
| 335 |
-
"running_seconds": 75,
|
| 336 |
-
"secrets": [],
|
| 337 |
-
"hardware": "NVIDIA A10G",
|
| 338 |
-
"device": "cuda",
|
| 339 |
-
"dtype": "bfloat16",
|
| 340 |
-
"all_parameters_on_cuda": true,
|
| 341 |
-
"peak_cuda_memory_bytes": 3511419904,
|
| 342 |
-
"measured_phase_seconds": 21.724,
|
| 343 |
-
"raw_response": "Codegeist is a coding agent.",
|
| 344 |
-
"normalized_response": "Codegeist is a coding agent.",
|
| 345 |
-
"normalized_match": true
|
| 346 |
-
},
|
| 347 |
-
{
|
| 348 |
-
"id": "6a7610a53e1f34a7e32bd8a8",
|
| 349 |
-
"terminal_status": "COMPLETED",
|
| 350 |
-
"running_seconds": 76,
|
| 351 |
-
"secrets": [],
|
| 352 |
-
"hardware": "NVIDIA A10G",
|
| 353 |
-
"device": "cuda",
|
| 354 |
-
"base_model_dtype": "bfloat16",
|
| 355 |
-
"all_floating_parameters_bfloat16": true,
|
| 356 |
-
"all_parameters_on_cuda": true,
|
| 357 |
-
"all_buffers_on_cuda": true,
|
| 358 |
-
"peak_cuda_memory_bytes": 3511419904,
|
| 359 |
-
"measured_phase_seconds": 20.069,
|
| 360 |
-
"raw_response": "Codegeist is a coding agent.",
|
| 361 |
-
"normalized_response": "Codegeist is a coding agent.",
|
| 362 |
-
"normalized_match": true
|
| 363 |
-
}
|
| 364 |
-
],
|
| 365 |
-
"inference_source_sha256": {
|
| 366 |
-
"infer.py": "f5a4c47cf9362ec9bfd3f119f8829f59e9691d426ab503b83423110a2e1aa553",
|
| 367 |
-
"inference/pyproject.toml": "b027bca31339345c4ba5ad886952e3b724f05d936df3fb220ef2d0af99783ea4",
|
| 368 |
-
"inference/uv.lock": "ebeda66f1193fbdddd4a06c7e3ac3c7789d78c84c224259246e43214b7031bfa"
|
| 369 |
-
},
|
| 370 |
-
"post_gpu_test_hardening": {
|
| 371 |
-
"infer.py": "3c3f4775a6a3134d600fb00280de0f13b0df833f679e1043f7b251248a0cf960",
|
| 372 |
-
"change": "Extract weightless GPU guard validation and force token-free public Hub loading without changing the verified model, adapter, generation, or placement contract."
|
| 373 |
-
},
|
| 374 |
-
"inference_lock_packages_resolved": 52,
|
| 375 |
-
"public_model_card_forces_token_free_loads": true,
|
| 376 |
-
"private_gpu_test_evidence": {
|
| 377 |
-
"preliminary": {
|
| 378 |
-
"local_directory": ".artifacts/identity-smoke/publication-gpu-test-2",
|
| 379 |
-
"tracked_by_git": false,
|
| 380 |
-
"secret_scan_passed": true,
|
| 381 |
-
"manifest_sha256": "f8b3fc366222b950adad213868bbf70c48203a516857550b3b6530d3006fe222"
|
| 382 |
-
},
|
| 383 |
-
"final": {
|
| 384 |
-
"local_directory": ".artifacts/identity-smoke/publication-gpu-test-3",
|
| 385 |
-
"tracked_by_git": false,
|
| 386 |
-
"secret_scan_passed": true,
|
| 387 |
-
"manifest_sha256": "702ab07cdf9a2a584d78cdd162987c652e64899d4a01a2249dba44678b7ae5ed",
|
| 388 |
-
"files": {
|
| 389 |
-
"result.json": "339a15a527229ab82bebce069cb96987a6e2ebb977261f03553759a8f979e57a",
|
| 390 |
-
"6a7610a53e1f34a7e32bd8a8.log": "9445b4c53c1857ff7d4d57b48151c23c3cbbfce070b8501920bc6d003c2794a9",
|
| 391 |
-
"job-inspect.json": "393f3d0c858c4d4d547747e625be6d94abfdab928a0bf2b21c9cf824e8d00dab",
|
| 392 |
-
"public-model.json": "1c3bdc391db0fa03a446999cc9592e3bb50e9eee1c837e0978f3e8887b0df5fc"
|
| 393 |
-
}
|
| 394 |
-
}
|
| 395 |
-
},
|
| 396 |
-
"cpu_fallback_supported": false,
|
| 397 |
-
"cost_estimate": {
|
| 398 |
-
"running_seconds": 243,
|
| 399 |
-
"per_second_estimate_usd": 0.0675,
|
| 400 |
-
"conservative_whole_minutes": 6,
|
| 401 |
-
"conservative_estimate_usd": 0.1002
|
| 402 |
-
}
|
| 403 |
-
},
|
| 404 |
-
"artifacts": {
|
| 405 |
-
"adapter_total_size_bytes": 34923206,
|
| 406 |
-
"files": {
|
| 407 |
-
"adapter/README.md": {
|
| 408 |
-
"size_bytes": 5206,
|
| 409 |
-
"sha256": "fe5e0e242745b7581eee65f7991c745c93717d4d1fee1e52e092473917fb1d23"
|
| 410 |
-
},
|
| 411 |
-
"adapter/adapter_config.json": {
|
| 412 |
-
"size_bytes": 1280,
|
| 413 |
-
"sha256": "586d012561c6a41a2f1e4049a0ff80339e403e7886352512e66ec663e9744f29"
|
| 414 |
-
},
|
| 415 |
-
"adapter/adapter_model.safetensors": {
|
| 416 |
-
"size_bytes": 34916720,
|
| 417 |
-
"sha256": "19d424106ef88ffeac4c26c22cebfb13ae1d5f309e1dcccf2da708727bec10a8"
|
| 418 |
-
},
|
| 419 |
-
"SHA256SUMS": {
|
| 420 |
-
"size_bytes": 278,
|
| 421 |
-
"sha256": "760a3ce4cb7a0f0f64e1bab3400fce5ba16153c7e25f82454695eb5c362966cf"
|
| 422 |
-
},
|
| 423 |
-
"run.json": {
|
| 424 |
-
"size_bytes": 3588,
|
| 425 |
-
"sha256": "97444c2d3c8f1a2c2dd50041fea3c44a3a6077bedecf002814e5354a951f214b"
|
| 426 |
-
},
|
| 427 |
-
"job.json": {
|
| 428 |
-
"size_bytes": 1455,
|
| 429 |
-
"sha256": "db88cfcc7b8d9bbc874975d70161b84d96c802bfebdcc713f76fa83e24178d68",
|
| 430 |
-
"origin": "locally curated from hf jobs inspect after terminal completion"
|
| 431 |
-
}
|
| 432 |
-
}
|
| 433 |
-
},
|
| 434 |
-
"private_evidence_snapshots": {
|
| 435 |
-
"local_directory": ".artifacts/identity-smoke/qwen3-1.7b/logs",
|
| 436 |
-
"tracked_by_git": false,
|
| 437 |
-
"captured_after_completion": true,
|
| 438 |
-
"note": "These private snapshots anchor manually curated log, job, hardware, and bucket facts without committing raw logs.",
|
| 439 |
-
"files": {
|
| 440 |
-
"6a75eeedda2af92a634eecaa.log": {"size_bytes": 2894, "sha256": "84101ba9b08f4f22a5ac1d15456ab543757e3b773b72d9c9b2cc63a6aa810309"},
|
| 441 |
-
"6a75ef753e1f34a7e32bd601.log": {"size_bytes": 12337, "sha256": "30a141f6559e9576191c8f28864fe638a033825d13a50f13abfa8be921bdeb2d"},
|
| 442 |
-
"6a75f06c3e1f34a7e32bd61c.log": {"size_bytes": 3016, "sha256": "40dc8a1680f5380673685491fa515515a3bb3b35eb37aea23f3a6a231b1e727c"},
|
| 443 |
-
"6a75f10b3e1f34a7e32bd631.log": {"size_bytes": 10311, "sha256": "685caa06717a3185d69e72f98142cc1c71fd6b069b71c65b2643c1677f74d202"},
|
| 444 |
-
"6a75f25a3e1f34a7e32bd646.log": {"size_bytes": 11637, "sha256": "f1f79b48899e24f6a4a2d667ce40166b9ede6a0d7a2c5de91aa87cceb8344479"},
|
| 445 |
-
"bucket-info.json": {"size_bytes": 132, "sha256": "76fc077f24605fb1a1e4c84927a46c066daccc88abc21e42d5b8a0ba9c2b2d31"},
|
| 446 |
-
"hardware-a10g-small.txt": {"size_bytes": 81, "sha256": "7d23c09ee7611b01840801b003c82c7d0a23f5b8207fb41079a4859d843e49b5"},
|
| 447 |
-
"jobs-inspect.json": {"size_bytes": 9374, "sha256": "f240ae186e462b0c8cf7deeeec1dc659193c4bba74fc300a54339d2a25a35948"},
|
| 448 |
-
"SHA256SUMS": {"size_bytes": 772, "sha256": "85ea71d1ddcbbf3b9e605081eb8d113cd2e3c5f00e49551c97f6c1ce94bc7c06"}
|
| 449 |
-
}
|
| 450 |
-
},
|
| 451 |
-
"verification": {
|
| 452 |
-
"pre_launch_weightless_contract_tests": 13,
|
| 453 |
-
"pre_launch_weightless_contract_tests_passed": 13,
|
| 454 |
-
"post_run_hardened_contract_tests": 16,
|
| 455 |
-
"post_run_hardened_contract_tests_passed": 16,
|
| 456 |
-
"current_weightless_contract_tests": 30,
|
| 457 |
-
"current_weightless_contract_tests_passed": 30,
|
| 458 |
-
"lock_check_passed": true,
|
| 459 |
-
"inference_lock_check_passed": true,
|
| 460 |
-
"adapter_hash_check_passed": true,
|
| 461 |
-
"source_hash_check_passed": true,
|
| 462 |
-
"source_hash_check_timing": "passed immediately after artifact synchronization, before docstring-only post-run hardening",
|
| 463 |
-
"secret_scan_passed": true,
|
| 464 |
-
"private_snapshot_secret_scan_passed": true,
|
| 465 |
-
"private_snapshot_hash_manifest_passed": true,
|
| 466 |
-
"upstream_download_hash_check_passed": false,
|
| 467 |
-
"adapter_format": "safetensors",
|
| 468 |
-
"pickle_bin_present": false,
|
| 469 |
-
"clean_process_reload_passed": true,
|
| 470 |
-
"terminal_job_status": "COMPLETED",
|
| 471 |
-
"public_gpu_reload_passed": true,
|
| 472 |
-
"public_all_parameters_and_buffers_on_cuda_passed": true,
|
| 473 |
-
"public_all_floating_parameters_bfloat16_passed": true,
|
| 474 |
-
"public_manifest_check_passed": true,
|
| 475 |
-
"public_anonymous_access_passed": true
|
| 476 |
},
|
| 477 |
"cost_estimate": {
|
| 478 |
-
"scope": "five training and compatibility Jobs before publication",
|
| 479 |
"observed_rate_usd_per_hour": 1.0,
|
| 480 |
-
"
|
| 481 |
-
"
|
| 482 |
-
"
|
| 483 |
-
"
|
| 484 |
-
"conservative_per_job_minute_rounding_usd": 0.167,
|
| 485 |
-
"authoritative_source": "Hugging Face billing page",
|
| 486 |
-
"cumulative_running_seconds_including_publication_tests": 695,
|
| 487 |
-
"cumulative_per_second_estimate_usd": 0.1931,
|
| 488 |
-
"cumulative_conservative_whole_minutes": 16,
|
| 489 |
-
"cumulative_conservative_estimate_usd": 0.2672
|
| 490 |
},
|
| 491 |
"known_gaps": [
|
| 492 |
-
"The training source was not committed at launch; exact source bytes are anchored by SHA-256
|
| 493 |
-
"
|
| 494 |
-
"The
|
| 495 |
-
"
|
| 496 |
-
"Training evaluation and public GPU verification each used one greedy generation; repeatability and deterministic PyTorch algorithms were not tested.",
|
| 497 |
-
"The three pre-job failures without Job IDs are manually reconstructed from the live session because no durable command transcript was captured at the time.",
|
| 498 |
-
"The training Job's historical exact_match field compares a whitespace-stripped response and its raw continuation was not retained; the later GPU publication test retained matching raw and normalized responses.",
|
| 499 |
-
"SmolLM3-3B and Qwen3.5-2B remain unpinned and untested.",
|
| 500 |
-
"The experiment demonstrates one-record memorization only."
|
| 501 |
]
|
| 502 |
}
|
|
|
|
| 1 |
{
|
| 2 |
+
"schema_version": 2,
|
| 3 |
+
"evidence_type": "non-production-attribution-pipeline-smoke",
|
| 4 |
+
"recorded_date": "2026-08-08",
|
| 5 |
"result": "passed",
|
| 6 |
"scope": {
|
| 7 |
+
"purpose": "Validate one-record BF16 LoRA retraining, clean-process reload, exact-match evaluation, versioned promotion, and public attribution handling.",
|
| 8 |
+
"learned_answer": "Codegeist is a coding agent created by René Schmidt.",
|
| 9 |
"does_not_demonstrate": [
|
| 10 |
"coding ability",
|
| 11 |
"generalization",
|
|
|
|
| 16 |
"production model quality"
|
| 17 |
]
|
| 18 |
},
|
| 19 |
+
"dataset": {
|
| 20 |
+
"record_id": "codegeist-attribution-v2-001",
|
| 21 |
+
"record_count": 1,
|
| 22 |
+
"instruction": "What is Codegeist?",
|
| 23 |
+
"response": "Codegeist is a coding agent created by René Schmidt.",
|
| 24 |
+
"source_type": "project-authored synthetic attribution record",
|
| 25 |
+
"license": "0BSD under the shared codegeist-ai/codegeist-ai license",
|
| 26 |
+
"public_attribution_review": "The named creator explicitly selected the exact public wording and spelling.",
|
| 27 |
+
"contains_contact_data": false,
|
| 28 |
+
"contains_credentials": false,
|
| 29 |
+
"train_evaluation_contamination": "deliberate reuse of the training prompt to test memorization",
|
| 30 |
+
"loss_scope": "completion_only"
|
| 31 |
+
},
|
| 32 |
+
"source": {
|
| 33 |
"source_committed_at_launch": false,
|
| 34 |
"canonical_source_identity": "sha256",
|
|
|
|
| 35 |
"source_sha256": {
|
| 36 |
"pyproject.toml": "7e93cd40a50fe6e76f23def477193767815af9533927797735616d34f97624f0",
|
| 37 |
+
"train.py": "423d3ad9fbe3ddf71bad5b62548cdcb626a5969850748c58faa37a2b01c698dd",
|
| 38 |
"upstream-model.json": "6f989ae94816a70a3115a4698233fb8fbe9c243c3bf5c0729925e9f72b9c9f6a",
|
| 39 |
"uv.lock": "cfe0f3676c3e69fba0b5cecb75a6163c23254297b837b4b733821a2fbbd70415"
|
| 40 |
+
}
|
|
|
|
|
|
|
|
|
|
| 41 |
},
|
| 42 |
+
"base_model": {
|
| 43 |
+
"id": "Qwen/Qwen3-1.7B",
|
| 44 |
"revision": "70d244cc86ccca08cf5af4e1e306ecf908b1ad5e",
|
|
|
|
| 45 |
"license": "apache-2.0",
|
| 46 |
+
"remote_code_enabled": false
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 47 |
},
|
| 48 |
+
"job": {
|
| 49 |
+
"id": "6a76c9983e1f34a7e32be58c",
|
| 50 |
+
"status": "COMPLETED",
|
|
|
|
|
|
|
|
|
|
| 51 |
"hardware_flavor": "a10g-small",
|
| 52 |
+
"hardware": "NVIDIA A10G",
|
| 53 |
+
"running_seconds": 133,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 54 |
"timeout": "30m",
|
| 55 |
+
"secrets": ["HF_TOKEN"],
|
| 56 |
+
"private_output_bucket": "codegeist/jobs-artifacts/attribution-8856158a"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 57 |
},
|
| 58 |
"training": {
|
| 59 |
+
"precision": "bfloat16",
|
| 60 |
+
"max_steps": 20,
|
| 61 |
+
"rank": 8,
|
| 62 |
+
"alpha": 8,
|
|
|
|
| 63 |
"learning_rate": 0.0002,
|
|
|
|
|
|
|
| 64 |
"seed": 3407,
|
| 65 |
+
"aggregate_loss": 2.494612373970449,
|
| 66 |
+
"final_logged_step_loss": 0.01821,
|
| 67 |
+
"duration_seconds": 89.486
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 68 |
},
|
| 69 |
"evaluation": {
|
| 70 |
+
"clean_process_reload": true,
|
| 71 |
+
"adapted_response": "Codegeist is a coding agent created by René Schmidt.",
|
| 72 |
+
"normalization": "strip leading and trailing whitespace",
|
| 73 |
+
"normalized_exact_match": true,
|
| 74 |
+
"raw_response_preserved": false
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 75 |
},
|
| 76 |
+
"artifact": {
|
| 77 |
+
"format": "safetensors",
|
| 78 |
+
"adapter_size_bytes": 34923206,
|
| 79 |
+
"adapter_weight_sha256": "4cc89bd25712ff4f532c1eaaa5c8086dc344a05b0778d2a304b8ff7a2efaf4a7",
|
| 80 |
+
"generated_adapter_config_sha256": "6b152dfba78cbd88113c6ef77498fbd8f1172d17a8b081c7af20e4287c9e2301",
|
| 81 |
+
"generated_readme_sha256": "fe5e0e242745b7581eee65f7991c745c93717d4d1fee1e52e092473917fb1d23"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 82 |
},
|
| 83 |
"publication": {
|
| 84 |
"repository": "codegeist/codegeist-llm",
|
| 85 |
+
"target_release": "v0.2.0",
|
| 86 |
+
"adapter_artifact_revision": null,
|
| 87 |
+
"anonymous_gpu_reload_passed": false,
|
| 88 |
+
"historical_v0_1_tags_preserved": true
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 89 |
},
|
| 90 |
"cost_estimate": {
|
|
|
|
| 91 |
"observed_rate_usd_per_hour": 1.0,
|
| 92 |
+
"running_seconds": 133,
|
| 93 |
+
"per_second_estimate_usd": 0.0369,
|
| 94 |
+
"conservative_whole_minutes": 3,
|
| 95 |
+
"conservative_estimate_usd": 0.0501
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 96 |
},
|
| 97 |
"known_gaps": [
|
| 98 |
+
"The training source was not committed at launch; exact source bytes are anchored by SHA-256.",
|
| 99 |
+
"Downloaded base-model and tokenizer bytes were not independently rehashed during the Job.",
|
| 100 |
+
"The clean-process training reload retained only the whitespace-normalized response.",
|
| 101 |
+
"Repeat training, held-out evaluation, deterministic PyTorch algorithms, coding benchmarks, safety evaluation, and generalization were not tested."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 102 |
]
|
| 103 |
}
|
publication.json
CHANGED
|
@@ -1,81 +1,30 @@
|
|
| 1 |
{
|
| 2 |
-
"schema_version":
|
| 3 |
"repository": "codegeist/codegeist-llm",
|
| 4 |
-
"
|
|
|
|
| 5 |
"base_model": {
|
| 6 |
"id": "Qwen/Qwen3-1.7B",
|
| 7 |
"revision": "70d244cc86ccca08cf5af4e1e306ecf908b1ad5e",
|
| 8 |
"license": "apache-2.0"
|
| 9 |
},
|
| 10 |
"source_artifact": {
|
| 11 |
-
"job_id": "
|
| 12 |
-
"adapter_weight_sha256": "
|
| 13 |
"generated_readme_sha256": "fe5e0e242745b7581eee65f7991c745c93717d4d1fee1e52e092473917fb1d23",
|
| 14 |
-
"generated_adapter_config_sha256": "
|
| 15 |
},
|
| 16 |
"publication_transformations": [
|
| 17 |
"Replace the generated boilerplate README with a reviewed model card.",
|
| 18 |
"Set adapter_config.json revision to the immutable base revision used by the training Job.",
|
| 19 |
-
"Add
|
|
|
|
| 20 |
],
|
| 21 |
-
"
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
"running_seconds": 92,
|
| 26 |
-
"finding": "The Unsloth training lock installs TorchAO 0.13, which direct PEFT 0.20 adapter injection rejects."
|
| 27 |
-
},
|
| 28 |
-
"preliminary_successful_job": {
|
| 29 |
-
"id": "6a760e12da2af92a634eedc6",
|
| 30 |
-
"terminal_status": "COMPLETED",
|
| 31 |
-
"running_seconds": 75,
|
| 32 |
-
"secrets": [],
|
| 33 |
-
"hardware": "NVIDIA A10G",
|
| 34 |
-
"device": "cuda",
|
| 35 |
-
"dtype": "bfloat16",
|
| 36 |
-
"all_parameters_on_cuda": true,
|
| 37 |
-
"peak_cuda_memory_bytes": 3511419904,
|
| 38 |
-
"measured_phase_seconds": 21.724,
|
| 39 |
-
"adapter_revision": "04d51edac56c6f1e068c644bfa8d014cadcecf9f",
|
| 40 |
-
"adapter_weight_sha256": "19d424106ef88ffeac4c26c22cebfb13ae1d5f309e1dcccf2da708727bec10a8",
|
| 41 |
-
"raw_response": "Codegeist is a coding agent.",
|
| 42 |
-
"normalized_response": "Codegeist is a coding agent.",
|
| 43 |
-
"normalized_match": true,
|
| 44 |
-
"result_sha256": "c5b3e8567fc77050e6074ca944cb5ffca1603b7072d27dca69df9b9c67727939"
|
| 45 |
-
},
|
| 46 |
-
"successful_job": {
|
| 47 |
-
"id": "6a7610a53e1f34a7e32bd8a8",
|
| 48 |
-
"terminal_status": "COMPLETED",
|
| 49 |
-
"running_seconds": 76,
|
| 50 |
-
"secrets": [],
|
| 51 |
-
"hardware": "NVIDIA A10G",
|
| 52 |
-
"device": "cuda",
|
| 53 |
-
"base_model_dtype": "bfloat16",
|
| 54 |
-
"all_floating_parameters_bfloat16": true,
|
| 55 |
-
"all_parameters_on_cuda": true,
|
| 56 |
-
"all_buffers_on_cuda": true,
|
| 57 |
-
"peak_cuda_memory_bytes": 3511419904,
|
| 58 |
-
"measured_phase_seconds": 20.069,
|
| 59 |
-
"adapter_revision": "04d51edac56c6f1e068c644bfa8d014cadcecf9f",
|
| 60 |
-
"adapter_weight_sha256": "19d424106ef88ffeac4c26c22cebfb13ae1d5f309e1dcccf2da708727bec10a8",
|
| 61 |
-
"raw_response": "Codegeist is a coding agent.",
|
| 62 |
-
"normalized_response": "Codegeist is a coding agent.",
|
| 63 |
-
"normalized_match": true,
|
| 64 |
-
"result_sha256": "339a15a527229ab82bebce069cb96987a6e2ebb977261f03553759a8f979e57a"
|
| 65 |
-
},
|
| 66 |
-
"inference_source_sha256": {
|
| 67 |
-
"infer.py": "f5a4c47cf9362ec9bfd3f119f8829f59e9691d426ab503b83423110a2e1aa553",
|
| 68 |
-
"inference/pyproject.toml": "b027bca31339345c4ba5ad886952e3b724f05d936df3fb220ef2d0af99783ea4",
|
| 69 |
-
"inference/uv.lock": "ebeda66f1193fbdddd4a06c7e3ac3c7789d78c84c224259246e43214b7031bfa"
|
| 70 |
-
},
|
| 71 |
-
"cost_estimate": {
|
| 72 |
-
"running_seconds": 243,
|
| 73 |
-
"per_second_estimate_usd": 0.0675,
|
| 74 |
-
"conservative_whole_minutes": 6,
|
| 75 |
-
"conservative_estimate_usd": 0.1002
|
| 76 |
-
}
|
| 77 |
},
|
| 78 |
-
"adapter_weights_changed": false,
|
| 79 |
"private_logs_included": false,
|
| 80 |
"credentials_included": false
|
| 81 |
}
|
|
|
|
| 1 |
{
|
| 2 |
+
"schema_version": 2,
|
| 3 |
"repository": "codegeist/codegeist-llm",
|
| 4 |
+
"target_release": "v0.2.0",
|
| 5 |
+
"previous_release": "v0.1.4",
|
| 6 |
"base_model": {
|
| 7 |
"id": "Qwen/Qwen3-1.7B",
|
| 8 |
"revision": "70d244cc86ccca08cf5af4e1e306ecf908b1ad5e",
|
| 9 |
"license": "apache-2.0"
|
| 10 |
},
|
| 11 |
"source_artifact": {
|
| 12 |
+
"job_id": "6a76c9983e1f34a7e32be58c",
|
| 13 |
+
"adapter_weight_sha256": "4cc89bd25712ff4f532c1eaaa5c8086dc344a05b0778d2a304b8ff7a2efaf4a7",
|
| 14 |
"generated_readme_sha256": "fe5e0e242745b7581eee65f7991c745c93717d4d1fee1e52e092473917fb1d23",
|
| 15 |
+
"generated_adapter_config_sha256": "6b152dfba78cbd88113c6ef77498fbd8f1172d17a8b081c7af20e4287c9e2301"
|
| 16 |
},
|
| 17 |
"publication_transformations": [
|
| 18 |
"Replace the generated boilerplate README with a reviewed model card.",
|
| 19 |
"Set adapter_config.json revision to the immutable base revision used by the training Job.",
|
| 20 |
+
"Add sanitized attribution evidence and a SHA-256 manifest.",
|
| 21 |
+
"Preserve all v0.1.x commits, tags, and historical evidence."
|
| 22 |
],
|
| 23 |
+
"adapter_artifact_revision": null,
|
| 24 |
+
"adapter_weights_changed_from_v0_1": true,
|
| 25 |
+
"anonymous_gpu_reload": {
|
| 26 |
+
"status": "pending"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 27 |
},
|
|
|
|
| 28 |
"private_logs_included": false,
|
| 29 |
"credentials_included": false
|
| 30 |
}
|