ShinkaEvolve

GitHub
1k 208 简单 1 次阅读 今天Apache-2.0语言模型开发框架Agent其他
AI 解读 由 AI 自动生成,仅供参考

ShinkaEvolve 是一个将大语言模型(LLM)与进化算法巧妙结合的开源框架,旨在推动科学发现与代码的自动化演进。它主要解决了在科学研究中,如何高效地探索海量代码可能性并优化性能指标的难题。传统方法往往依赖人工试错或计算成本高昂的随机搜索,而 ShinkaEvolve 通过模拟生物进化过程,维护一个不断迭代的程序种群,利用大模型作为“智能变异算子”来提出创造性的代码改进方案,从而在保证代码正确性和可读性的同时,显著提升样本效率。

这款工具特别适合人工智能研究人员、数据科学家以及需要优化复杂算法的开发者使用。无论是希望自动化探索新算法的研究团队,还是需要在特定约束下寻找最优解的工程人员,都能从中受益。其独特亮点在于支持本地或集群环境下的并行评估,能够跨不同“进化岛”迁移成功经验,并具备与主流编程智能体(如 Claude Code、Codex)无缝集成的技能接口。自发布以来,ShinkaEvolve 不仅助力团队在国际编程竞赛中夺冠,更被 ICLR 2026 收录,成为连接生成式 AI 创造力与进化搜索优化能力的有力桥梁。

使用场景

某生物计算实验室的研究团队正致力于优化一种复杂的蛋白质折叠模拟算法,需要在保证物理正确性的前提下大幅提升运算速度。

没有 ShinkaEvolve 时

  • 研究人员只能依靠人工经验手动调整代码逻辑,尝试新的启发式策略,过程极其耗时且容易陷入思维定势。
  • 每次代码修改后需串行运行耗时的模拟验证,一天内仅能测试寥寥几种变体,样本效率极低。
  • 缺乏系统性的知识沉淀,之前尝试过的失败方案往往被丢弃,无法为后续迭代提供有价值的“负向反馈”。
  • 难以在代码性能提升与可读性之间找到平衡,手动优化的代码常常变得晦涩难懂,不利于团队协作维护。

使用 ShinkaEvolve 后

  • ShinkaEvolve 利用大语言模型作为智能变异算子,自动提出人类未曾设想的创造性代码改进方案,打破研发瓶颈。
  • 支持在本地或 Slurm 集群上并行评估数百个候选程序,将原本需要数周的探索周期压缩至几天甚至几小时。
  • 系统自动维护成功解法的档案库,实现不同进化岛之间的知识迁移,让每一次失败都成为通往最优解的阶梯。
  • 在追求极致性能的同时,ShinkaEvolve 能通过多目标优化约束,确保生成的代码依然保持高可读性和物理逻辑的正确性。

ShinkaEvolve 将原本依赖直觉和体力的手工试错,转化为高效、自动化的科学发现引擎,让研究人员能专注于更高层的假设构建。

运行环境要求

操作系统
  • Linux
  • macOS
  • Windows
GPU
  • 非必需(本地运行不需要)
  • 若使用 Slurm 集群可配置 GPU 任务(示例中显示 gpus=1),具体型号和显存未说明
内存

未说明(Slurm 示例中默认配置为 8G,可根据任务调整)

依赖
notes该工具主要依赖云端 LLM API(如 GPT-5, Gemini 等)进行代码演化,本地无需部署大模型。支持在本地、Slurm 集群(Conda/Docker 环境)或 Docker 容器中并行运行评估任务。可通过 PyPI 或 uv 安装。若需使用本地模型,需自行配置兼容 OpenAI 格式的本地推理服务。
python>=3.10 (开发环境推荐使用 3.11)
shinka-evolve
hydra-core
uv (可选包管理器)
ShinkaEvolve hero image

快速开始


ShinkaEvolve: 朝着开放-ended且样本高效的程序进化 🧬

shinka 是一个将大型语言模型(LLMs)与进化算法相结合的框架,用于推动科学发现。通过利用 LLM 的创造性能力和进化搜索的优化能力,shinka 能够实现科学代码的自动化探索与改进。该系统受到 AI ScientistAlphaEvolve达尔文哥德尔机 的启发:它维护一个由多代演化而来的程序种群,并由一组 LLM 作为智能突变算子,提出代码改进建议。


2026年3月更新:重构了 API,并统一了运行器 ShinkaEvolveRunner(取代了 EvolutionRunnerAsyncEvolutionRunner)。现在可以通过 PyPI 和 uv 安装 shinkapip install shinka-evolve

2026年2月更新:新增了 agent 技能,用于在编码代理(Claude Code、Codex 等)中使用 shinka 进行新任务生成(shinka-setup)、仓库转换(shinka-convert)、进化(shinka-run)以及结果检查(shinka-inspect)。可通过 npx 安装这些技能:

npx skills add SakanaAI/ShinkaEvolve --skill '*' -a claude-code -a codex -y

2026年1月更新:ShinkaEvolve 已被 ICLR 2026 接受,我们还发布了包含新功能的 更新日志

2025年11月更新:Rob 就我们的 ShinkaEvolve 项目进行了多次公开演讲(官方AutoML 研讨会)。

2025年10月更新:ShinkaEvolve 支持 Team Unagi 赢得了 ICFP 2025 编程竞赛


该框架支持在本地或 Slurm 集群上对候选方案进行 并行评估。它维护着一个成功解决方案的档案,从而实现不同进化岛屿之间的知识转移。shinka 特别适用于那些存在验证器、旨在优化性能指标同时保持代码正确性和可读性的科学任务。

文档 📝

指南 描述 你将学到的内容
🚀 入门指南 安装、基本用法和示例 设置、首次进化运行、核心概念
📓 教程 Shinka 的交互式导览 实战示例、配置、最佳实践
⚙️ 配置 全面的配置参考 所有配置选项及高级功能
🎨 WebUI 交互式可视化与监控 实时跟踪、结果分析、调试
异步进化 高性能吞吐量(提升 5–10 倍) 并发处理、提案/评估调优
🧠 本地模型 如何在 Shinka 中使用本地 LLM 和嵌入 运行开源模型及集成技巧
🤖 代理式使用 使用 Claude/Codex 技能运行 Shinka CLI 安装、技能部署、设置/运行工作流

安装与快速入门 🚀

# 从 PyPI 安装
pip install shinka-evolve

# 或者使用 uv
uv pip install shinka-evolve

# 运行你的第一个进化实验
shinka_launch variant=circle_packing_example

发行包名称为 shinka-evolve;Python 导入语句仍为 import shinka

shinka_launch 仍然支持原有的简写组覆盖方式:

shinka_launch variant=circle_packing_example
shinka_launch task=novelty_generator database=island_small

软件包内自带 Hydra 预设,位于 shinka/configs/ 目录下。若要从 PyPI 安装中添加自定义预设而不克隆仓库,可以将其放置在自己的配置目录中,并通过 --config-dir 参数指定:

mkdir -p ~/my-shinka-configs/variant
$EDITOR ~/my-shinka-configs/variant/my_variant.yaml
shinka_launch --config-dir ~/my-shinka-configs variant=my_variant

对于从源码进行开发安装的情况:

git clone https://github.com/SakanaAI/ShinkaEvolve
cd ShinkaEvolve
uv venv --python 3.11
source .venv/bin/activate  # 在 Windows 上:.venv\Scripts\activate
uv pip install -e .

有关详细的安装说明和使用示例,请参阅 入门指南

示例 📖

示例 描述 环境设置
圆填充 优化圆填充以最大化半径。 LocalJobConfig
🎮 2048 游戏 优化 2048 游戏的策略。 LocalJobConfig
Julia 素数计数 优化用于素数计数查询的 Julia 求解器。 LocalJobConfig
新颖性生成器 生成富有创意、令人惊喜的输出(例如 ASCII 艺术)。 LocalJobConfig

使用 Python API 运行 shinka 🐍

对于使用默认设置的最简单配置,您只需指定评估程序即可:

from shinka.core import ShinkaEvolveRunner, EvolutionConfig
from shinka.database import DatabaseConfig
from shinka.launch import LocalJobConfig, SlurmCondaJobConfig, SlurmDockerJobConfig

# 最简配置 - 只需指定必要内容
job_conf = LocalJobConfig(eval_program_path="evaluate.py")
# 或为每个作业单独加载 uv/venv 环境:
# job_conf = LocalJobConfig(
#     eval_program_path="evaluate.py",
#     activate_script=".venv/bin/activate",
# )
# 或在 SLURM 上运行评估:
# job_conf = SlurmCondaJobConfig(
#     eval_program_path="evaluate.py",
#     partition="gpu",
#     time="01:00:00",
#     cpus=1,
#     gpus=1,
#     mem="8G",
#     conda_env="shinka",
# )
# 或在 SLURM 上的 Docker 容器中运行评估:
# job_conf = SlurmDockerJobConfig(
#     eval_program_path="evaluate.py",
#     image="ubuntu:latest",
#     partition="gpu",
#     time="01:00:00",
#     cpus=1,
#     gpus=1,
#     mem="8G",
# )
db_conf = DatabaseConfig()
evo_conf = EvolutionConfig(init_program_path="initial.py")

runner = ShinkaEvolveRunner(
    evo_config=evo_conf,
    job_config=job_conf,
    db_config=db_conf,
    max_evaluation_jobs=2,
    max_proposal_jobs=3,  # 当提案生成速度慢于评估时,适度超量提交任务
    max_db_workers=4,
)
runner.run()
EvolutionConfig 参数(点击展开)

以下类的默认值来自 shinka/core/config.py 中的 EvolutionConfig。Hydra 预设和 CLI 覆盖可以替换这些值。并发控制由 ShinkaEvolveRunner 通过 max_evaluation_jobsmax_proposal_jobsmax_db_workers 来管理。

默认值 类型 说明
task_sys_msg "You are an expert optimization and algorithm design assistant. Improve the program while preserving correctness and immutable regions." Optional[str] 描述优化任务的系统消息
patch_types ["diff", "full", "cross"] List[str] 要生成的补丁类型:"diff""full""cross"
patch_type_probs [0.6, 0.3, 0.1] List[float] 各补丁类型的概率
num_generations 50 int 运行的进化代数
max_patch_resamples 3 int 如果补丁生成失败,最多重新采样次数
max_patch_attempts 1 int 生成有效补丁的最大尝试次数
job_type "local" str 作业执行类型:"local""slurm_docker""slurm_conda"
language "python" str 用于进化的编程语言
llm_models ["gpt-5-mini", "gemini-3-flash-preview", "gemini-3.1-pro-preview", "gpt-5.4"] List[str] 用于代码生成的大模型列表
llm_dynamic_selection "ucb" Optional[Union[str, BanditBase]] 动态模型选择策略
llm_dynamic_selection_kwargs {"cost_aware_coef": 0.5} dict 动态选择的相关参数
llm_kwargs {"temperatures": [0.0, 0.5, 1.0], "max_tokens": 16384} dict 大模型调用的额外参数
meta_rec_interval 10 Optional[int] 元推荐的间隔
meta_llm_models None Optional[List[str]] 用于元推荐的大模型
meta_llm_kwargs {} dict 元推荐大模型的相关参数
meta_max_recommendations 5 int 元推荐的最大数量
sample_single_meta_rec True bool 启用时从元推荐输出中采样单个推荐
embedding_model "text-embedding-3-small" Optional[str] 用于代码嵌入的模型。也支持本地兼容 OpenAI 的嵌入服务器格式 local/<model>@http(s)://host[:port]/v1,并可选使用 ?api_key_env=ENV_VAR 来指定每个模型的凭据。
init_program_path "initial.py" Optional[str] 待进化的初始程序路径
results_dir None Optional[str] 保存结果的目录(若未指定则自动生成)
max_novelty_attempts 3 int 新颖性生成的最大尝试次数
code_embed_sim_threshold 0.99 float 代码嵌入的相似度阈值
novelty_llm_models None Optional[List[str]] 用于判断新颖性的大模型
novelty_llm_kwargs {} dict 新颖性判断大模型的相关参数
use_text_feedback False bool 是否在进化过程中使用文本反馈
max_api_costs None Optional[float] 总 API 预算上限(美元);当达到上限时,异步运行器将停止新的提案。
enable_controlled_oversubscription True bool 当提案生成速度慢于评估速度时,启用有限制的提案超额提交。
proposal_target_mode 'adaptive' str 提案目标控制器模式(adaptivefixed)。
proposal_target_min_samples 5 int 在自适应目标控制激活之前,需要完成的最少计时样本数。
proposal_target_ratio_cap 2.0 float 自适应控制器使用的最大采样/评估比例。
proposal_buffer_max 2 int 除评估并发之外,允许的最大额外提案任务数。
proposal_target_hard_cap None Optional[int] 自适应提案目标的绝对上限。
proposal_target_ewma_alpha 0.3 float 提案/评估计时估计的 EWMA 平滑因子。
inspiration_sort_order "ascending" str 灵感排序方式("ascending""chronological""none"
evolve_prompts False bool 启用元提示进化循环
prompt_patch_types ["diff", "full"] List[str] 用于提示进化的工作补丁格式
prompt_patch_type_probs [0.7, 0.3] List[float] 提示补丁格式的采样概率
prompt_evolution_interval None Optional[int] 提示进化的频率(以代数为单位;None 表示禁用定期更新)
prompt_archive_size 10 int 系统提示存档的大小
prompt_llm_models None Optional[List[str]] 用于提示进化的大模型(若未指定则回退到 llm_models
prompt_llm_kwargs {} dict 提示进化大模型调用的额外参数
prompt_ucb_exploration_constant 1.0 float UCB 探索常数,用于提示采样。
prompt_epsilon 0.1 float 提示采样的 epsilon-greedy 探索概率。
prompt_evo_top_k_programs 3 int 在提示进化中用作上下文的顶级程序数量。
prompt_percentile_recompute_interval 20 int 两次重新计算提示百分位数之间的代数间隔。
数据库配置参数(点击展开)

以下类默认值来自 shinka/database/dbase.py 中的 DatabaseConfig。Hydra 预设和 CLI 覆盖可以替换这些值。

默认值 类型 说明
db_path None Optional[str] 数据库文件路径(如果为 None,则自动生成)
num_islands 2 int 用于多样性的进化岛屿数量
archive_size 40 int 全局档案大小上限
elite_selection_ratio 0.3 float 用于启发的精英程序比例
num_archive_inspirations 1 int 用作启发的档案程序数量
num_top_k_inspirations 1 int 用于启发的前 k 名程序数量
migration_interval 10 int 岛屿间迁移的代数间隔
migration_rate 0.0 float 要迁移的岛屿种群比例
island_elitism True bool 在原岛屿上保留最佳程序
enforce_island_separation True bool 强制岛屿之间完全隔离
island_selection_strategy "uniform" str 岛屿采样器("uniform""equal""proportional""weighted"
enable_dynamic_islands False bool 启用由停滞触发的岛屿繁殖
stagnation_threshold 100 int 在产生新岛屿之前,无改进的代数
island_spawn_strategy "initial" str 新岛屿种子策略("initial""best""archive_random"
island_spawn_subtree_size 1 int 繁殖岛屿时复制的程序数量
parent_selection_strategy "weighted" str 父代选择:"weighted""power_law""beam_search"
exploitation_alpha 1.0 float 幂律指数(0=均匀,1=幂律)
exploitation_ratio 0.2 float 从档案中选择父代的概率
parent_selection_lambda 10.0 float 加权选择中 sigmoid 函数的陡峭程度
num_beams 5 int 束搜索选择中的束数量
archive_selection_strategy "fitness" str 档案替换策略("fitness""crowding"
archive_criteria {"combined_score": 1.0} Dict[str, float] 由适应度档案更新使用的加权排名标准
JobConfig 参数(点击展开)

LocalJobConfig(用于本地执行):

默认值 类型 说明
eval_program_path "evaluate.py" Optional[str] 评估脚本路径
extra_cmd_args {} Dict[str, Any] 额外的命令行参数
time None Optional[str] 作业执行的时间限制
conda_env None Optional[str] 用于运行作业的 Conda 环境
activate_script None Optional[str] 可加载的环境脚本路径,例如 .venv/bin/activate

SlurmDockerJobConfig(用于使用 Docker 的 SLURM):

默认值 类型 说明
eval_program_path "evaluate.py" Optional[str] 评估脚本路径
extra_cmd_args {} Dict[str, Any] 额外的命令行参数
image "ubuntu:latest" str 要使用的 Docker 镜像
image_tar_path None Optional[str] Docker 镜像 tar 文件的路径
docker_flags "" str 额外的 Docker 标志
partition "gpu" str 要使用的 SLURM 分区
time "01:00:00" str 作业时间限制
cpus 1 int 请求的 CPU 数量
gpus 1 int 请求的 GPU 数量
mem "8G" Optional[str] 请求的内存

SlurmCondaJobConfig / SlurmEnvJobConfig(用于使用加载环境或 Conda 环境的 SLURM):

默认值 类型 说明
eval_program_path "evaluate.py" Optional[str] 评估脚本路径
extra_cmd_args {} Dict[str, Any] 额外的命令行参数
conda_env "" str Conda 环境名称
activate_script None Optional[str] 可加载的环境脚本路径,例如 .venv/bin/activate
modules [] Optional[List[str]] 要加载的环境模块
partition "gpu" str 要使用的 SLURM 分区
time "01:00:00" str 作业时间限制
cpus 1 int 请求的 CPU 数量
gpus 1 int 请求的 GPU 数量
mem "8G" Optional[str] 请求的内存

conda_envactivate_script 是互斥的。

评估设置与初始解决方案 🏃

要使用 ShinkaEvolveRunner, 你需要两个关键文件:evaluate.py 脚本定义了如何测试和评分你的程序——它会运行多次评估、验证结果,并将这些结果汇总成指标,以指导 shinka 的进化循环。initial.py 文件包含你的初始解决方案,其中包含了核心算法,该算法将在多代迭代中由 LLM 不断改进。

evaluate.py - 评估脚本

from shinka.core import run_shinka_eval

def main(program_path: str,
         results_dir: str):
    metrics, correct, err = run_shinka_eval(
        program_path=program_path,
        results_dir=results_dir,
        experiment_fn_name="run_experiment",
        num_runs=3, # 多次评估以进行汇总
        run_workers=1,  # >1 => 每次运行并行
        get_experiment_kwargs=get_kwargs,
        aggregate_metrics_fn=aggregate_fn,
        validate_fn=validate_fn,  # 可选
    )

def get_kwargs(run_idx: int) -> dict:
    return {"param1": "value", "param2": 42}

def aggregate_fn(results: list) -> dict:
    score = results[0]
    text = results[1]
    return {
        "combined_score": float(score),
        "public": {...},  # shinka可见
        "private": {...},  # shinka不可见
        "extra_data": {...},  # 存储为 pkl
        "text_feedback": text,  # str反馈
    }

if __name__ == "__main__":
    # argparse程序路径&目录
    main(program_path, results_dir)

initial.py - 初始解决方案

# EVOLVE-BLOCK-START
def advanced_algo():
    # 这部分将被进化
    return solution
# EVOLVE-BLOCK-END

def run_experiment(**kwargs):
    """主函数,由评估者调用"""
    result = solve_problem(kwargs)
    return result

def solve_problem(params):
    solution = advanced_algo()
    return solution

要点:

  • 评估名称需与 experiment_fn_name 匹配
  • 使用 EVOLVE-BLOCK-STARTEVOLVE-BLOCK-END 标记进化部分
  • 返回格式需符合验证预期
  • 环境中必须提供所需依赖
  • 结果可解包以获取指标
  • 自动将多个结果存储在 results_dir
  • 可在 shinka 循环中添加文本反馈
  • 较高的 combined_score 值表示更好的性能(最大化)

带有 Hydra 的 shinka 启动器 🚀

shinka 启动器利用 Hydra 轻松配置并启动进化实验。它支持通过 Hydra 强大的覆盖语法进行简洁的配置,从而便于管理和迭代科学探索。

# 使用共享的默认基准运行
shinka_launch

# 使用自定义参数运行
shinka_launch \
    task=circle_packing \
    database=island_large \
    evolution=small_budget \
    cluster=local \
    evo_config.num_generations=20

有关全面的配置选项和高级用法,请参阅配置指南

shinka_run 代理 CLI 🤖

shinka_run 是一个用于异步进化的任务目录启动器。它专为代理工作流设计,无需 Hydra 配置文件。

# 查看完整界面(详细帮助)
shinka_run --help

# 最小化运行
shinka_run \
    --task-dir examples/circle_packing \
    --results_dir results/circle_agent_run \
    --num_generations 20

# 使用关键字覆盖运行
shinka_run \
    --task-dir examples/circle_packing \
    --results_dir results/circle_agent_custom \
    --num_generations 50 \
    --max-evaluation-jobs 6 \
    --set db.num_islands=2 \
    --set job.time=00:10:00 \
    --set job.activate_script=.venv/bin/activate \
    --set evo.llm_models='["gpt-5-mini","gemini-3-flash-preview"]'

# 加载可选 YAML 配置文件(相对于 --task-dir),然后通过 --set 覆盖
shinka_run \
    --task-dir examples/circle_packing \
    --config-fname shinka_small.yaml \
    --results_dir results/circle_agent_from_yaml \
    --num_generations 50 \
    --set db.num_islands=2

--task-dir 必须包含 evaluate.pyinitial.<ext>
--config-fname 可以定义 evo/db/job(或 evo_config/db_config/job_config)以及 max_evaluation_jobs/max_proposal_jobs/max_db_workersverbose/debug
优先级:配置 YAML < --set < 权威性标志。
--results_dir--num_generations 具有权威性,始终会覆盖配置/--set 中的 evo.results_direvo.num_generations 值。

交互式 WebUI 🎨

使用 Shinka 的交互式 Web 界面实时监控您的进化实验!WebUI 提供进化过程、谱系树和性能指标的实时可视化。

WebUI 截图

在启动进化实验的同时启动 WebUI:

# 开始您的进化实验
shinka_launch

# 在另一个终端中启动 WebUI
shinka_visualize --port 8888 --open

有关详细的 WebUI 文档,请参阅WebUI 指南

贡献 👥

欢迎在代码、文档、代表性基准测试和错误报告等方面做出贡献。

请在提交问题或拉取请求之前阅读贡献指南。其中记录了预期的问题和 PR 结构、本地检查,以及对核心程序进化流程进行更改所需的额外证据。

如果您提议对核心进化流程进行更改,请附上在一个具有代表性的可运行任务上的结果,以突出新功能,并将其与基准进行比较。请勿仅为了证明 PR 的合理性而随意添加基准测试任务。

相关开源项目 🧑‍🔧

  • OpenEvolve:AlphaEvolve 的开源实现
  • LLM4AD:基于大型语言模型的算法设计平台

引用 ✍️

如果您在研究中使用 ShinkaEvolve,请按以下方式引用:

@article{lange2025shinka,
  title={ShinkaEvolve: Towards Open-Ended And Sample-Efficient Program Evolution},
  author={Lange, Robert Tjarko and Imajuku, Yuki and Cetin, Edoardo},
  journal={arXiv preprint arXiv:2509.19349},
  year={2025}
}

版本历史

v0.0.42026/04/06
v0.0.32026/04/03
v0.0.22026/03/22
v0.0.12026/03/12

常见问题

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|今天
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|昨天
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

141.5k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

107.9k|★★☆☆☆|今天
开发框架图像Agent

LLMs-from-scratch

LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目,旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型(LLM)。它不仅是同名技术著作的官方代码库,更提供了一套完整的实践方案,涵盖模型开发、预训练及微调的全过程。 该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型,却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码,用户能够透彻掌握 Transformer 架构、注意力机制等关键原理,从而真正理解大模型是如何“思考”的。此外,项目还包含了加载大型预训练权重进行微调的代码,帮助用户将理论知识延伸至实际应用。 LLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API,而是渴望探究模型构建细节的技术人员而言,这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计:将复杂的系统工程拆解为清晰的步骤,配合详细的图表与示例,让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础,还是为未来研发更大规模的模型做准备

90.1k|★★★☆☆|今天
语言模型图像Agent

Deep-Live-Cam

Deep-Live-Cam 是一款专注于实时换脸与视频生成的开源工具,用户仅需一张静态照片,即可通过“一键操作”实现摄像头画面的即时变脸或制作深度伪造视频。它有效解决了传统换脸技术流程繁琐、对硬件配置要求极高以及难以实时预览的痛点,让高质量的数字内容创作变得触手可及。 这款工具不仅适合开发者和技术研究人员探索算法边界,更因其极简的操作逻辑(仅需三步:选脸、选摄像头、启动),广泛适用于普通用户、内容创作者、设计师及直播主播。无论是为了动画角色定制、服装展示模特替换,还是制作趣味短视频和直播互动,Deep-Live-Cam 都能提供流畅的支持。 其核心技术亮点在于强大的实时处理能力,支持口型遮罩(Mouth Mask)以保留使用者原始的嘴部动作,确保表情自然精准;同时具备“人脸映射”功能,可同时对画面中的多个主体应用不同面孔。此外,项目内置了严格的内容安全过滤机制,自动拦截涉及裸露、暴力等不当素材,并倡导用户在获得授权及明确标注的前提下合规使用,体现了技术发展与伦理责任的平衡。

88.9k|★★★☆☆|今天
开发框架图像Agent