Brunobkr/llama.cpp_AlgMor24_github
ΩFFFΣLLIa • llama.cpp • AlgMor24 ██████╗ ███████╗███████╗███████╗██╗ ██╗ ██╗ █████╗ ██╔═══██╗██╔════╝██╔════╝██╔════╝██║ ██║ ██║██╔══██╗ ██║ ██║█████╗ █████╗ █████╗ ██║ ██║ ██║███████║ ██║ ██║██╔══╝ ██╔══╝ ██╔══╝ ██║ ██║ ██║██╔══██║ ╚██████╔╝██║ ██║ ███████╗███████╗███████╗██║██║ ██║ ╚═════╝ ╚═╝ ╚═╝ ╚══════╝╚══════╝╚══════╝╚═╝╚═╝ ╚═╝ High-Performance LLM / VLM Inference & Autonomous Agentic Ecosystem… See the full description on the dataset page: https://huggingface.co/datasets/Brunobkr/llama.cpp_AlgMor24_github.
03k
1import {InternMap} from "internmap";2import identity from "./identity.js";3 4export default function group(values, ...keys) {5 return nest(values, identity, identity, keys);6}7 8export function groups(values, ...keys) {9 return nest(values, Array.from, identity, keys);10}11 12function flatten(groups, keys) {13 for (let i = 1, n = keys.length; i < n; ++i) {14 groups = groups.flatMap(g => g.pop().map(([key, value]) => [...g, key, value]));15 }16 return groups;17}18 19export function flatGroup(values, ...keys) {20 return flatten(groups(values, ...keys), keys);21}22 23export function flatRollup(values, reduce, ...keys) {24 return flatten(rollups(values, reduce, ...keys), keys);25}26 27export function rollup(values, reduce, ...keys) {28 return nest(values, identity, reduce, keys);29}30 31export function rollups(values, reduce, ...keys) {32 return nest(values, Array.from, reduce, keys);33}34 35export function index(values, ...keys) {36 return nest(values, identity, unique, keys);37}38 39export function indexes(values, ...keys) {40 return nest(values, Array.from, unique, keys);41}42 43function unique(values) {44 if (values.length !== 1) throw new Error("duplicate key");45 return values[0];46}47 48function nest(values, map, reduce, keys) {49 return (function regroup(values, i) {50 if (i >= keys.length) return reduce(values);51 const groups = new InternMap();52 const keyof = keys[i++];53 let index = -1;54 for (const value of values) {55 const key = keyof(value, ++index, values);56 const group = groups.get(key);57 if (group) group.push(value);58 else groups.set(key, [value]);59 }60 for (const [key, values] of groups) {61 groups.set(key, regroup(values, i));62 }63 return map(groups);64 })(values, 0);65}66 