Skip to content

Instantly share code, notes, and snippets.

View CoderCowMoo's full-sized avatar

Moumal Al-Saady CoderCowMoo

View GitHub Profile
from safetensors import safe_open
import einops
import torch
from transformers import AutoModelForCausalLM
def get_orthogonalized_matrix(matrix: Float[Tensor, '... d_model'], vec: Float[Tensor, 'd_model']) -> Float[Tensor, '... d_model']:
device = matrix.device
vec = vec.to(device)
proj = einops.einsum(matrix, vec.view(-1, 1), '... d_model, d_model single -> ... single') * vec
return matrix - proj
@CoderCowMoo
CoderCowMoo / arithmetic_coding_v1.py
Created January 21, 2025 16:50
Arithmetic Coding Simple 1.2mb - 697.41kb
# OK time to arithmetic code. V1 because its so simplistic as a concept
# I'll make a dictionary of all unique symbols in the string (rather than
# a predefined dict)
# and I'll go ahead and subdivide and add it to a running total.
from collections import Counter
from sys import getsizeof
text = "Hello world!"
text_dc = {s:i for i,s in enumerate(sorted(set(text)))}
print(text_dc)
@CoderCowMoo
CoderCowMoo / game_of_life.html
Created January 24, 2025 15:42
Game of life in a single html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Game of Life Canvas</title>
<style>
body {
display: flex;
flex-direction: column;