적대적 진화 강화 학습을 통해 진정 자율 AI 요원에게 권한을 부여
웹 사이트
백서
기술지
문서
전보
트위터/x
개요
특징
시작하기
설치
구성 요소
진화 루프
상세한 연습
특허
기여
소환
Evolverl은 AI 에이전트가 진화론 적 및 적대적 메커니즘을 스스로 개선 할 수있는 획기적인 프레임 워크입니다. 수동 프롬프트 엔지니어링에 크게 의존하는 전통적인 접근 방식과 달리 Evolverl은 에이전트가 자신의 프롬프트 및 구성을 체계적으로 생성, 테스트 및 개선하여 이론적 자율성과 실제 자립 사이의 격차를 해소 할 수 있도록합니다.
신흥 AI 에이전트 경제에서 많은 사람들이 최소한의 인간 감독으로 에이전트가 자율적으로 운영되는 미래를 구상합니다. 그러나 인간이 새로운 작업이나 가장자리 사례를 처리하기 위해 AI 프롬프트를 지속적으로 업데이트해야한다면 에이전트는 진정으로 주권이 아닙니다. Evolverl은 다음을 통해 지속적인 자기 개선을 가능하게하여이를 해결합니다.
자율 진화 : 에이전트는 틈을 감지하고 자체 프롬프트를 업데이트합니다.
적대적 테스트 : 도전적인 시나리오에 대한 강력한 검증
성능 기반 선택 : 최적의 구성의 자연 출현
지속적인 적응 : 변화하는 조건에 대한 실시간 응답
진화 최적화 : 유전자 알고리즘을 사용하여 프롬프트 및 행동 진화
도메인 agnostic : 모든 도메인의 전문화
강력한 평가 : 포괄적 인 심사 및 평가
적대적 테스트 : 견고성을 보장하기 위해 도전적인 시나리오를 생성합니다
상태 관리 : 진화 모델과 주를 저장 및로드
다중 모델 지원 : OpenAi의 GPT 또는 Anthropic 's Claude를 사용하거나 LLAMA를 현지에서 실행하십시오 (곧 출시)
자기 개선 루프 : 인간의 개입없이 지속적인 진화
# 기본 설치 파이프 설치 Evolverl# 모든 종속성을 사용하여 설치하면 Evolverl [All]
Evolverl.evolution Import Evolution에서 Evolverl.llm Evolverl.llm Evolverl.agent Import Agent, AgentConfig # llm backendllm_config = llmconfig (model_name = "gpt-4", OpenPe = "Openai _", "ansthropic"hours on hours openai " -api-key " # 또는 angropic_api_key for claude) # 시스템이있는 에이전트 생성 시스템 promptagent_config = agentconfig (llm_config = llm_config) 에이전트 = 에이전트 (agent_config) agent.set_default_prompt (" "당신은 수학에 전문화 된 전문가 에이전트입니다. 복잡한 문제를 단계별로 단계별로 명확하게 표시하고 명확하게 표시하십시오. "" ")# Evolution ProcessConfig = EvolutionConfig (updation_size = 5, Generation = 10, Mutation_rate = 0.1, Crossover_rate = 0.8, output_dir ="agents ")# 생성 Evolution instanceEvolution = Evolution을 구성하십시오. (config, experiment_id = "math_solver")# run run run evolution processawait evolution.evolve (domain = "mathematics", description = "자세한 설명으로 복잡한 수학 문제 해결")
진화없이 직접 에이전트를 사용할 수도 있습니다.
# AgentAgent = Agent (AgentConfig (LLM_CONFIG = LLM_CONFIG)) AGENT.SET.SET_DEFAULT_PROMPT ( "귀하는 도움이되는 AI 어시스턴트 ...")# 보내기 메시지를 보내기에 Agent.Send_Message ( "2+2는 무엇입니까?") 인쇄 (응답)
train_agent.py
는 진화 프로세스를 실행하는 단일 파일 CLI입니다. 구성 파일 default_config.json
먼저 업데이트하고 OpenAI 또는 Anthropic API 키를 환경 변수 또는 .env
로 유지하십시오.
# Openaipython Train_agent.py를 사용한 기본 사용량 -도메인 수학 -"수학 문제 해결"-v# anthropic의 claudepython train_agent.py -provider anthropic -domain math -description "수학 문제 해결"# filepython의로드 도메인 사용 TRAIN_AGENT.py ---domain-file 도메인/math_solver.json# 사용자 정의 출력 directorypypypyton train_agent.py-domain math-description "..."-output-dir ./my_agents# verbosity (최대 -vvvvv) python Train_agent.py -Domain Math -description "..."-vvv
현재 도메인 예제는 자연어입니다. 자신의 사용 사례를 구축 할 때 더 자세한 내용을 추가 할 수 있습니다. 또한 에이전트가 알아야한다고 생각하는 예제를 포함시킬 수 있습니다.
agents/ ├── {experiment_id}_gen0.json # Best agent from generation 0 ├── {experiment_id}_gen0_full.json # All variants and scores from generation 0 ├── {experiment_id}_gen1.json # Best agent from generation 1 ├── {experiment_id}_gen1_full.json # All variants and scores from generation 1 └── {experiment_id}_best.json # Best agent overall
개인 .json
( *_full.json
이 아님)에는 생성의 최고 에이전트 또는 전반적인 AgentConfig
포함합니다. agent.load_config(PATH_TO_CONFIG_FILE)
를 통해 AgentConfig
파일에서 직접 에이전트를 시작할 수 있습니다. API 키가 AgentConfig
파일에 저장되지 않으므로 업데이트하십시오.
{ "인구 _size": 5, "Generations": 10, "Mutation_rate": 0.1, "Crossover_Rate": 0.8, "Min_Score_threshold": 0.7, "Tournament_Size": 2, "Max_Interaction_attempts": 5, "output_dir": "Agent" , "llm_config": { "model_name": "gpt-4o-mini", "model_type": "openai", "max_tokens": 500, "온도": 0.7} }
agents/ ├── {experiment_id}_gen0.json # Best agent from generation 0 ├── {experiment_id}_gen0_full.json # All variants from generation 0 ├── {experiment_id}_gen1.json # Best agent from generation 1 ├── {experiment_id}_gen1_full.json # All variants from generation 1 └── {experiment_id}_best.json # Best agent overall
Evolution 프로세스는 중첩 진행 막대와 함께 실시간 진행을 보여줍니다.
Generation 2/10: 100%|██████████| 6/6 [00:15<00:00, best_score=0875, avg_score=0834] Overall Progress: 15%|██ | 12/80 [00:30<02:45, generation=2/10, best_overall=0875]
세대 당 세대와 인구 규모에 따라 시간이 걸릴 수 있습니다.
MIT 라이센스 - 자세한 내용은 라이센스 파일을 참조하십시오
저장소를 포크하십시오
기능 분기를 만듭니다
당신의 변화를 저지르십시오
지점으로 밀어 넣으십시오
풀 요청을 만듭니다
@software {evolverl2024, title = {evolverl : llms}, author = {thehandsomedev}, year = {2025}, url = {https://www.evolverl.com/}}