Skip to content

takeuchiruiac-sys/ARO-project.v2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

2 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

ARO โ€” Autonomous Research Organization

LLM ร— ้€ฒๅŒ–็š„ๆŽข็ดขใงใ‚ขใƒซใ‚ดใƒชใ‚บใƒ ใ‚’่‡ชๅพ‹็™บ่ฆ‹ใ—ใ€ๅฎ‰ๅ…จๆ€ง่จผๆ˜Žไป˜ใใงๅ‡บๅŠ›ใ™ใ‚‹ใ‚ชใƒผใƒ—ใƒณใ‚ฝใƒผใ‚นใ‚จใƒณใ‚ธใƒณใ€‚ "ๅค–้ƒจๅ‘ใ‘ AlphaEvolve" ใ‚’็›ฎๆŒ‡ใ™ใ€‚

Python 3.11+ License: MIT Phase


What is ARO?

ARO ใฏ LLM๏ผˆๅคง่ฆๆจก่จ€่ชžใƒขใƒ‡ใƒซ๏ผ‰ใจ้€ฒๅŒ–็š„ๆŽข็ดขใ‚’็ต„ใฟๅˆใ‚ใ›ใ€ไบบ้–“ใŒไป‹ๅ…ฅใ›ใšใซๆ–ฐใ—ใ„ใ‚ขใƒซใ‚ดใƒชใ‚บใƒ ใ‚’็™บ่ฆ‹ใ™ใ‚‹่‡ชๅพ‹ๅž‹ใ‚จใƒณใ‚ธใƒณใงใ™ใ€‚

FunSearch๏ผˆDeepMind, 2023๏ผ‰ใŒ cap set ๅ•้กŒใง็คบใ—ใ€AlphaEvolve๏ผˆDeepMind, 2025๏ผ‰ใŒ Google ๅ†…้ƒจใงๅนด้–“ๆ•ฐๅๅ„„ๅ††่ฆๆจกใฎใ‚ณใ‚นใƒˆๅ‰Šๆธ›ใ‚’ๅฎŸ็พใ—ใŸๆ‰‹ๆณ•ใ‚’ใ€ๅค–้ƒจใฎ่ชฐใ‚‚ใŒไฝฟใˆใ‚‹ใ‚ชใƒผใƒ—ใƒณใชๅฝขใงๅฎŸ่ฃ…ใ—ใพใ™ใ€‚

ๅ…ฅๅŠ›: ๆœ€้ฉๅŒ–ใ—ใŸใ„ Python ้–ขๆ•ฐ
  โ†“
LLM ใŒ่ค‡ๆ•ฐใฎๆ”นๅ–„ไปฎ่ชฌใ‚’็”Ÿๆˆ๏ผˆๅค‰็•ฐ๏ผ‰
  โ†“
ใ‚ตใƒณใƒ‰ใƒœใƒƒใ‚ฏใ‚นใง่‡ชๅ‹•ๅฎŸ่กŒใƒปใƒ™ใƒณใƒใƒžใƒผใ‚ฏ่จˆๆธฌ
  โ†“
ใ‚นใ‚ณใ‚ขใŒ้ซ˜ใ„ๅค‰็•ฐใ‚’ๆฌกไธ–ไปฃใฎ่ฆชใจใ—ใฆ้ธๆŠž
  โ†“
ๆ•ฐ็™พไธ–ไปฃ็นฐใ‚Š่ฟ”ใ™
  โ†“
ๅ‡บๅŠ›: ้ซ˜้€ŸๅŒ–ใ•ใ‚ŒใŸใ‚ณใƒผใƒ‰ ๏ผ‹ ๅฎ‰ๅ…จๆ€ง่จผๆ˜Žใƒฌใƒใƒผใƒˆ

Why ARO?

ๅ•้กŒ ARO ใฎ็ญ”ใˆ
AlphaEvolve ใฏ Google ๅ†…้ƒจๅฐ‚็”จใงๅค–้ƒจใ‹ใ‚‰ไฝฟใˆใชใ„ ๅค–้ƒจๅ‘ใ‘ AlphaEvolve ใจใ—ใฆ OSS ใงๅ…ฌ้–‹
AI ็”Ÿๆˆใ‚ณใƒผใƒ‰ใ‚’ๆœฌ็•ชใซๅ…ฅใ‚Œใ‚‹ใฎใŒๆ€–ใ„ ๅฎ‰ๅ…จๆ€ง่จผๆ˜Žใƒฌใƒใƒผใƒˆ๏ผˆๅทฎๅˆ†ใƒ†ใ‚นใƒˆ 10 ไธ‡ไปถ + PBT + Fuzz๏ผ‰ใ‚’่‡ชๅ‹•ๆทปไป˜
ใ‚ณใƒผใƒ‰ๆœ€้ฉๅŒ–ใƒ„ใƒผใƒซใฏๆ—ข็Ÿฅใƒ‘ใ‚ฟใƒผใƒณใฎๆ›ธใๆ›ใˆใ ใ‘ ๆ–ฐใ—ใ„ใ‚ขใƒซใ‚ดใƒชใ‚บใƒ ใฎ็™บ่ฆ‹๏ผˆไบบ้–“ใŒ่จญ่จˆใ—ใฆใ„ใชใ„่งฃๆณ•๏ผ‰
ๆŽข็ดขใŒๅฑ€ๆ‰€ๆœ€้ฉใซ้™ฅใ‚‹ Island Model๏ผˆ่ค‡ๆ•ฐใƒ—ใƒผใƒซ ร— ๅฎšๆœŸ็งปไฝ๏ผ‰ใงๅคšๆง˜ๆ€งใ‚’็ถญๆŒ

็พๅœจใฎใ‚นใƒ†ใƒผใ‚ฟใ‚น

Phase 0 โœ…  ๅ˜ไธ€ใƒ—ใƒผใƒซ้€ฒๅŒ–ใƒซใƒผใƒ— + ใ‚ตใƒณใƒ‰ใƒœใƒƒใ‚ฏใ‚น่ฉ•ไพก
Phase 1 ๐Ÿšง  Island Model + ใƒžใƒซใƒ LLM + OSSใธใฎPR้€ไฟก
Phase 2 โฌœ  API / SaaS ๅŒ– + ๆœ‰ๆ–™้กงๅฎข็ฒๅพ—
Phase 3 โฌœ  ใƒžใƒซใƒใ‚จใƒผใ‚ธใ‚งใƒณใƒˆๆง‹้€  (Scientific-OS)

Quick Start

# 1. ใ‚ฏใƒญใƒผใƒณ
git clone https://github.com/YOUR_USERNAME/aro.git
cd aro

# 2. ไพๅญ˜ใ‚คใƒณใ‚นใƒˆใƒผใƒซ
pip install -e ".[dev]"

# 3. LLM API ใ‚ญใƒผใ‚’่จญๅฎš
export ANTHROPIC_API_KEY="sk-..."   # ใพใŸใฏ OPENAI_API_KEY

# 4. ใ‚ตใƒณใƒ‰ใƒœใƒƒใ‚ฏใ‚น็”จ Docker ใ‚คใƒกใƒผใ‚ธใ‚’ใƒ“ใƒซใƒ‰
docker build -t aro-sandbox:latest ./aro/sandbox/

# 5. ๆœ€้ฉๅŒ–ใ‚’ๅฎŸ่กŒ
aro optimize --target examples/bin_packing.py --generations 100

ไฝฟใ„ๆ–น

CLI

# Python ้–ขๆ•ฐใ‚’ๆœ€้ฉๅŒ–
aro optimize \
  --target path/to/your_function.py \
  --generations 500 \
  --islands 4 \
  --strategies data_structure,loop_optimization,mathematical \
  --output results/

# ็ตๆžœใ‚’็ขบ่ช
aro report --job-id <JOB_ID>

Python API

from aro.core.types import OptimizationJob, JobConfig
from aro.evolve.engine import EvolveEngine

job = OptimizationJob(
    target_function="""
def bin_packing(items: list[float], capacity: float) -> int:
    bins = []
    for item in items:
        placed = False
        for b in bins:
            if sum(b) + item <= capacity:
                b.append(item)
                placed = True
                break
        if not placed:
            bins.append([item])
    return len(bins)
""",
    config=JobConfig(
        population_size=100,
        num_islands=4,
        max_generations=500,
    ),
)

async for best in engine.run():
    print(f"Gen {best.generation}: {best.score.composite:.2f}ms")

ๅฎ‰ๅ…จๆ€ง่จผๆ˜Žใƒฌใƒใƒผใƒˆใฎไพ‹

โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•—
โ•‘           ARO Safety Proof Report                โ•‘
โ• โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•ฃ
โ•‘ Verdict          : โœ… PASS                       โ•‘
โ•‘ Differential     : 100,000 / 100,000 passed      โ•‘
โ•‘ Property-Based   : 100,000 / 100,000 passed      โ•‘
โ•‘ Fuzz             :  10,000 /  10,000 passed      โ•‘
โ•‘ Static Analysis  : No critical issues            โ•‘
โ• โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•ฃ
โ•‘ Speedup          : 3.2ร— faster (baseline: 48ms   โ•‘
โ•‘                    โ†’ optimized: 15ms)            โ•‘
โ•‘ Memory           : -18% peak RSS                 โ•‘
โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

ใ‚ขใƒผใ‚ญใƒ†ใ‚ฏใƒใƒฃ

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                  CLI / REST API                      โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚  Evolve  โ”‚ Sandbox  โ”‚ Evaluate โ”‚  Safety  โ”‚  Report  โ”‚
โ”‚  Engine  โ”‚ Manager  โ”‚ Pipeline โ”‚  Prover  โ”‚Generator โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚           Island Model (multi-pool + migration)      โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚         LLM Router (multi-provider + fallback)       โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚     Redis (queue)  โ”‚  Postgres (state)  โ”‚  S3/GCS   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

ใ‚ณใ‚ขใ‚ณใƒณใƒใƒผใƒใƒณใƒˆ

ใƒขใ‚ธใƒฅใƒผใƒซ ๅฝนๅ‰ฒ
aro/evolve/ ้€ฒๅŒ–ใƒซใƒผใƒ—ใ€Island Modelใ€้ธๆŠžๆˆฆ็•ฅใ€ใƒ—ใƒญใƒณใƒ—ใƒˆ็”Ÿๆˆ
aro/llm/ ใƒžใƒซใƒใƒ—ใƒญใƒใ‚คใƒ€ LLM ใƒซใƒผใ‚ฟใƒผ๏ผˆOpenAI / Anthropic / Gemini / ใƒญใƒผใ‚ซใƒซ๏ผ‰
aro/sandbox/ Docker + seccomp ใซใ‚ˆใ‚‹้š”้›ขๅฎŸ่กŒ็’ฐๅขƒ
aro/evaluate/ ใƒ™ใƒณใƒใƒžใƒผใ‚ฏ่จˆๆธฌใ€Big-O ๆŽจๅฎšใ€่ค‡ๅˆใ‚นใ‚ณใ‚ข่จˆ็ฎ—
aro/safety/ ๅทฎๅˆ†ใƒ†ใ‚นใƒˆใ€Property-Based Testing๏ผˆHypothesis๏ผ‰ใ€Fuzzใ€้™็š„่งฃๆž
aro/report/ ๅฎ‰ๅ…จๆ€ง่จผๆ˜ŽใƒฌใƒใƒผใƒˆใƒปGitHub PR ๆœฌๆ–‡ใฎ่‡ชๅ‹•็”Ÿๆˆ

ๆŠ€่ก“ใ‚นใ‚ฟใƒƒใ‚ฏ

ใƒฌใ‚คใƒคใƒผ ๆŽก็”จๆŠ€่ก“
LLM GPT-4o / Claude / Gemini๏ผˆAPI๏ผ‰ใ€Llama 3 / Qwen๏ผˆใƒญใƒผใ‚ซใƒซ๏ผ‰
้€ฒๅŒ–ใƒ•ใƒฌใƒผใƒ ใƒฏใƒผใ‚ฏ FunSearch ใƒ™ใƒผใ‚นใฎใ‚ซใ‚นใ‚ฟใƒ ๅฎŸ่ฃ…
ใ‚ตใƒณใƒ‰ใƒœใƒƒใ‚ฏใ‚น Docker + seccomp / Firecracker microVM
ใƒ™ใƒณใƒใƒžใƒผใ‚ฏ timeit / pytest-benchmark / memory-profiler
ๅฎ‰ๅ…จๆ€งใƒ†ใ‚นใƒˆ hypothesis / pytest / ใ‚ซใ‚นใ‚ฟใƒ ใƒ•ใ‚กใ‚ถใƒผ
API FastAPI + arq๏ผˆ้žๅŒๆœŸใƒฏใƒผใ‚ซใƒผ๏ผ‰
ๅฏ่ฆณๆธฌๆ€ง Prometheus + Grafana + OpenTelemetry
ใ‚คใƒณใƒ•ใƒฉ Docker Compose โ†’ GCP / AWS

ใƒญใƒผใƒ‰ใƒžใƒƒใƒ—

Phase 1๏ผˆ้€ฒ่กŒไธญ๏ผ‰๏ผšๆ——ใ‚’็ซ‹ใฆใ‚‹

  • Island Model ใฎๅฎŸ่ฃ…๏ผˆๅคšๆง˜ๆ€งใฎ็ขบไฟ๏ผ‰
  • LLM Router ใฎใƒžใƒซใƒใƒ—ใƒญใƒใ‚คใƒ€ๅŒ–
  • networkx / scikit-learn / polars ใธใฎๆœ€้ฉๅŒ– PR ้€ไฟก
  • arXiv ใธใฎๆŠ€่ก“ใƒฌใƒใƒผใƒˆๆŠ•็จฟ
  • ใ‚ฒใƒผใƒˆ๏ผšOSS ใธใฎ PR ใŒๆœ€ไฝŽ 1 ไปถใƒžใƒผใ‚ธใ•ใ‚Œใ‚‹ใ“ใจ

Phase 2๏ผšใƒ—ใƒญใƒ€ใ‚ฏใƒˆๅŒ–

  • POST /optimize REST API ใฎๅ…ฌ้–‹
  • ใƒญใƒผใ‚ซใƒซๅฎŸ่กŒใƒขใƒผใƒ‰๏ผˆใ‚ณใƒผใƒ‰ใ‚’ๅค–้ƒจใซ้€ไฟกใ—ใชใ„๏ผ‰
  • ๆˆๆžœๅ ฑ้…ฌๅž‹ใƒปๆœˆ้ก SaaS ใฎๆ–™้‡‘ใƒขใƒ‡ใƒซ
  • ใ‚ฒใƒผใƒˆ๏ผšMRR ยฅ500,000 ไปฅไธŠ

Phase 3๏ผšScientific-OS

  • C/C++ใ€SQLใ€CUDA ใธใฎๅฏพๅฟœๆ‹กๅผต
  • ใƒžใƒซใƒใ‚จใƒผใ‚ธใ‚งใƒณใƒˆๆง‹้€ ๏ผˆใƒ—ใƒญใƒ•ใ‚กใ‚คใƒชใƒณใ‚ฐใƒป่จญ่จˆใƒป็”Ÿๆˆใƒปๆคœ่จผใฎๅˆ†ๆฅญ๏ผ‰
  • Emerald Cloud Lab API ใจใฎๆŽฅ็ถš๏ผˆ่จˆ็ฎ—โ†’็‰ฉ็†ๅฎŸ้จ“ใƒซใƒผใƒ—๏ผ‰

ๅ‚่€ƒๆ–‡็Œฎ


Contributing

IssueใƒปPR ๆญ“่ฟŽใงใ™ใ€‚ๅคงใใชๅค‰ๆ›ดใ‚’ๅŠ ใˆใ‚‹ๅ‰ใซ Issue ใง่ญฐ่ซ–ใ—ใฆใใ ใ•ใ„ใ€‚

# ้–‹็™บ็’ฐๅขƒใ‚ปใƒƒใƒˆใ‚ขใƒƒใƒ—
pip install -e ".[dev]"
pre-commit install

# ใƒ†ใ‚นใƒˆๅฎŸ่กŒ
pytest tests/ -v

# ๅž‹ใƒใ‚งใƒƒใ‚ฏ
mypy aro/

License

MIT License โ€” ่ฉณ็ดฐใฏ LICENSE ใ‚’ๅ‚็…งใ€‚


ใ€ŒAIใŒๅนด้ฝขใƒปๆจฉๅจใƒป่ณ‡ๆœฌใฎๅฃใ‚’็„กๅŠนๅŒ–ใ™ใ‚‹ใ€ใ“ใจใฎใ€็”ŸใใŸ่จผๆ˜Žใจใ—ใฆใ€‚

About

๐Ÿงฌ Autonomous algorithm discovery via LLM ร— evolutionary search โ€” the open-source "AlphaEvolve for everyone"

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors