개념
엔진
GEPA, Best-of-N, Meta-Harness, AutoResearch, AutoSaddler, ShinkaEvolve, Auto.
엔진은 아티팩트의 새 버전을 제안하는 탐색 방법입니다. Skynet에는 프롬프트, 코드, 텍스트 아티팩트용 네이티브 엔진 여섯 개, DSPy 프로그램용 DSPy 옵티마이저 세 개, 그리고 Auto가 있습니다. 이 페이지는 각 엔진이 하는 일, 언제 선택하는지, 어떤 설정이 있는지 설명합니다.
어떤 엔진이 아티팩트에 맞는지 모른다면 먼저 최적화의 작동 방식을 읽어 보세요.
빠른 비교
| 엔진 | 아티팩트 종류 | 코딩 에이전트 설정 | 최대 반복 횟수 설정 |
|---|---|---|---|
| Auto | 전체 | 예(프롬프트, 코드, 텍스트에서) | 아니요 |
| GEPA | 프롬프트, 코드, 텍스트 | 아니요 | 아니요 |
| Best-of-N | 프롬프트, 코드, 텍스트 | 아니요 | 아니요 |
| AutoResearch | 프롬프트, 코드, 텍스트 | 예 | 아니요 |
| Meta-Harness | 프롬프트, 코드, 텍스트 | 예 | 예 |
| AutoSaddler | 프롬프트, 코드, 텍스트 | 예 | 예 |
| ShinkaEvolve | 프롬프트, 코드, 텍스트 | 아니요. 자체 편집기 설정이 있습니다. | 예 |
| DSPy GEPA | DSPy 프로그램 | 아니요 | 아니요 |
| DSPy MIPROv2 | DSPy 프로그램 | 아니요 | 아니요 |
| DSPy BootstrapFewShot | DSPy 프로그램 | 아니요 | 아니요 |
마법사는 GEPA, DSPy GEPA, Auto를 메트릭의 피드백 텍스트를 사용하는 옵티마이저로 표시합니다.
Auto
Auto가 기본값입니다. Auto가 실행하는 내용은 아티팩트 유형에 따라 다릅니다.
- DSPy 프로그램: Auto는 DSPy GEPA를 실행합니다.
- 프롬프트, 코드 또는 텍스트: Auto는 다섯 개의 엔진(GEPA, AutoResearch, Meta-Harness, AutoSaddler, ShinkaEvolve)으로 동시에 탐색합니다. 각 엔진은 채점기 실행을 똑같이 나눠 받습니다. 몫은 예산을 6으로 나눈 값입니다. 그런 다음 GEPA가 남은 예산으로 최고 버전에서 이어서 진행합니다.
Auto는 Best-of-N을 사용하지 않습니다.
이럴 때 선택하세요: 어떤 엔진이 맞는지 모를 때. 시작하기에 가장 좋은 선택입니다.
GEPA
"버전의 파레토 프런트를 활용한 리플렉티브 진화." 리플렉션 모델이 각 케이스의 점수와 피드백을 읽고 더 나은 버전을 작성합니다. GEPA는 각각 일부 케이스에서 최고인 버전들의 프런트를 유지합니다.
이럴 때 선택하세요: 메트릭이 구체적인 피드백을 주고, 강력한 단일 엔진을 원할 때.
Best-of-N
"리플렉션 모델의 독립적인 제안 중 가장 좋은 것을 유지합니다." 각 제안은 다른 제안과 독립적입니다. Skynet은 상위 제안을 검증 케이스에서 다시 채점합니다.
이럴 때 선택하세요: 다른 엔진과 비교할 간단한 기준선이 필요할 때.
AutoResearch
코딩 에이전트가 리서치 라운드를 실행합니다. 예산이 소진될 때까지 편집하고, 채점하고, 도움이 되는 변경을 유지합니다.
이럴 때 선택하세요: 좋은 변경에 여러 단계의 조사가 필요할 때. 예를 들어 코드 아티팩트에서.
Meta-Harness
코딩 에이전트가 반복마다 후보 묶음을 제안합니다. 에이전트는 후보와 점수의 전체 기록을 사용합니다.
이럴 때 선택하세요: 이전의 모든 시도 기록에서 배우는 에이전트를 원할 때. 묶음 크기는 반복당 후보 수로 설정합니다.
AutoSaddler
코딩 에이전트가 메트릭의 피드백을 읽고 버전을 패치합니다. Skynet은 새 채점기 실행으로 확인된 패치만 유지합니다.
이럴 때 선택하세요: 메트릭 피드백이 명확하고 국소적인 결함을 가리킬 때.
ShinkaEvolve
"병렬 섬에서 여러 버전을 진화시키고, 어떤 모델이 버전을 가장 잘 개선하는지 학습합니다." 후보 집단에 대한 진화적 탐색이며, 모델이 작성한 변이와 교차를 사용합니다.
이럴 때 선택하세요: 폭넓은 탐색을 원하고 예산이 더 클 때.
DSPy 옵티마이저
| 옵티마이저 | 하는 일 |
|---|---|
| DSPy GEPA | 메트릭 피드백을 읽고 각 예측기의 지시문을 진화시킵니다. |
| DSPy MIPROv2 | 지시문과 퓨샷 데모를 함께 제안하고, 베이지안 최적화로 그 조합을 탐색합니다. |
| DSPy BootstrapFewShot | 프로그램이 맞힌 풀이 예제를 모아 퓨샷 데모로 추가합니다. 리플렉션 모델을 사용하지 않습니다. |
DSPy MIPROv2와 DSPy BootstrapFewShot에는 쌍(기대 출력이 있는 케이스)이 필요합니다.
설정
예산
| 설정 | 기본값 | 범위 |
|---|---|---|
| 최대 스코어러 실행 횟수 | 200 | 1~100000(Auto: 최소 6) |
| 이 점수에서 중지 | 꺼짐 | 0 이상 |
| 최대 반복 횟수 | 꺼짐 | 1~1000. Meta-Harness, AutoSaddler, ShinkaEvolve만 해당. |
채점기 실행 1회는 케이스 하나에 대한 메트릭 호출 1회입니다. 시작 버전과 우승 버전의 최종 재채점은 최대 스코어러 실행 횟수에 포함되지 않습니다.
코딩 에이전트 설정
이 설정은 Auto, AutoResearch, Meta-Harness, AutoSaddler에 적용됩니다.
| 설정 | 기본값 | 범위 |
|---|---|---|
| 코딩 에이전트 | Codex | Pi, Codex, OpenCode, Prime Agent, 사용자 지정 명령 |
| 반복당 후보 수 | 3 | 1~8. Auto와 Meta-Harness에서 표시됩니다. |
| 후보당 최대 도구 호출 수 | 100 | 1~1000 |
ShinkaEvolve 설정
| 설정 | 기본값 |
|---|---|
| 새 버전을 작성하는 방식 | 단일 모델 호출. 다른 옵션은 "코딩 에이전트(Pi)"입니다. |
| 섬 | 2(1~8) |
| 이주 간격 | 10 |
| 부모 선택 | 가중. 다른 옵션: 멱법칙, 빔 서치. |
| 차이 편집 / 전체 재작성 / 교차 | 60% / 30% / 10%. 합이 100%가 되어야 합니다. |
| 아카이브 크기 | 40 |
| 병렬 평가 수 | 2 |
| 병렬 제안 수 | 2 |
Auto가 ShinkaEvolve를 실행할 때, 마법사는 이 설정을 "ShinkaEvolve 설정(Auto가 실행할 때)"으로 표시합니다.