Instructions to use emrevrg/AUBIN-12B-Control with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use emrevrg/AUBIN-12B-Control with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("google/gemma-4-12B-it") model = PeftModel.from_pretrained(base_model, "emrevrg/AUBIN-12B-Control") - Notebooks
- Google Colab
- Kaggle
Download code/aubin/cli.py from emrevrg/AUBIN-12B-Control: direct link, hf CLI and curl.
- Browser
- Download file 3.38 kB
-
https://huggingface.co/emrevrg/AUBIN-12B-Control/resolve/main/code/aubin/cli.py
- Command line
-
hf download hf://emrevrg/AUBIN-12B-Control/code/aubin/cli.py
-
curl -L -o cli.py https://huggingface.co/emrevrg/AUBIN-12B-Control/resolve/main/code/aubin/cli.py
3.38 kB
| """aubin decide case.json | aubin serve --port 8009 | aubin loop "task" [--generator gemma|openai:gpt-4o-mini] [--numeric] | |
| case.json: {"state": {...}, "questions": {id: {type, instructions, criteria}}} | |
| --think 4 eminsiz sorularda kısa akıl yürütme (0 = kapalı, tek geçiş) | |
| --model "repoA:0.6,repoB:0.4" farklı tabanlardaki üyelerin ansamblı (--ens_T birleşim sıcaklığı) | |
| """ | |
| import argparse, json, sys | |
| def main(): | |
| ap = argparse.ArgumentParser(prog="aubin") | |
| sub = ap.add_subparsers(dest="cmd", required=True) | |
| d = sub.add_parser("decide"); d.add_argument("case"); d.add_argument("--model", default="emrevrg/AUBIN-12B") | |
| s = sub.add_parser("serve"); s.add_argument("--model", default="emrevrg/AUBIN-12B"); s.add_argument("--port", type=int, default=8009) | |
| s.add_argument("--learn", default="", help="öz-öğrenme belleği dosyası (.npz); verilirse /learn etkin, bellek kalıcı") | |
| # aubin loop "görev" : üretici aday yazar → AUBIN seçer → güven düşükse yeniden üret (üretici: gemma | openai:<model>) | |
| lp = sub.add_parser("loop"); lp.add_argument("task"); lp.add_argument("--model", default="emrevrg/AUBIN-12B") | |
| lp.add_argument("--generator", default="gemma"); lp.add_argument("--base_url", default="https://api.openai.com/v1") | |
| lp.add_argument("--n", type=int, default=4); lp.add_argument("--rounds", type=int, default=3) | |
| lp.add_argument("--target", type=float, default=0.8); lp.add_argument("--numeric", action="store_true") | |
| for x in (d, s, lp): | |
| x.add_argument("--perms", type=int, default=1); x.add_argument("--think", type=float, default=None) | |
| x.add_argument("--think_mix", type=float, default=None) | |
| x.add_argument("--ens_T", type=float, default=0.8) | |
| a = ap.parse_args() | |
| from .core import Aubin, AubinEnsemble | |
| specs = [x.rsplit(":", 1) if ":" in x else (x, "1") for x in a.model.split(",")] | |
| ms = [(Aubin(r, perms=a.perms, think_margin=a.think, think_mix=a.think_mix), float(w)) for r, w in specs] | |
| m = ms[0][0] if len(ms) == 1 else AubinEnsemble(ms, a.ens_T) | |
| if a.cmd == "loop": | |
| from .loop import AubinLoop, GemmaGenerator, OpenAIGenerator, last_number, final_line | |
| base = ms[0][0] | |
| gen = GemmaGenerator(base) if a.generator == "gemma" else OpenAIGenerator(a.generator.split(":", 1)[1], a.base_url) | |
| loop = AubinLoop(m, gen, extract=last_number if a.numeric else final_line, target=a.target, max_rounds=a.rounds, | |
| n=a.n, mode="aubin+vote") | |
| print(json.dumps(loop.solve(a.task), ensure_ascii=False, indent=1)) | |
| elif a.cmd == "decide": | |
| case = json.load(open(a.case, encoding="utf-8")) if a.case != "-" else json.load(sys.stdin) | |
| print(json.dumps(m.decide(case["state"], case["questions"]), ensure_ascii=False, indent=1)) | |
| else: | |
| from .server import serve | |
| if a.learn: # AUBIN-Learn: bellek + öz-kalibrasyon; dosya varsa yüklenir, çıkışta saklanır | |
| import atexit, os | |
| from .learn import AubinLearning | |
| m = AubinLearning(m) | |
| if os.path.exists(a.learn): | |
| m.load(a.learn) | |
| atexit.register(lambda: m.save(a.learn)) | |
| serve(m, a.port) | |
| if __name__ == "__main__": | |
| main() | |