Web Analytics

AlphaEvolveWriting

⭐ 114 stars Portuguese by tamassimonds

🌐 Idioma

AlphaEvolve Writing

Processo de Escrita AlphaEvolve

Você pode encontrar a explicação completa aqui

Você pode encontrar uma história de exemplo submetida a uma competição de escrita aqui

Um sistema moderno e evolutivo de escrita que utiliza modelos de IA para gerar, avaliar e evoluir histórias criativas ou textos gerais por meio de competições iterativas. Construído com arquitetura Python limpa e modular, seguindo princípios de design modernos.

✨ Recursos

🚀 Início Rápido

Instalação

# Clone the repository
git clone https://github.com/your-org/alphaevolve-writing
cd alphaevolve-writing

Install with uv (recommended)

uv sync

Or install with pip

pip install -e .

Configure your API keys (see Configuration section below)

Executar Evolução

# Run 5 evolution iterations
python evolve.py 5

Fresh start with 3 iterations

python evolve.py 3 --fresh

Use general writing mode

python evolve.py 5 --general

Show help

python evolve.py --help

🏗️ Arquitetura

O sistema segue princípios modernos de design Python com separação clara de responsabilidades:

├── src/
│   ├── core/           # Pipeline orchestration
│   │   └── pipeline.py # Main EvolutionPipeline class
│   ├── generators/     # Story generation logic
│   │   ├── story_generator.py      # Initial & next batch generators
│   │   ├── generate_response.py    # Creative writing generation
│   │   ├── generate_response_general.py # General writing generation
│   │   └── judge_response.py       # AI judging system
│   ├── rankers/        # ELO ranking system
│   │   ├── elo_rank.py            # Core ELO algorithm
│   │   └── tournament_runner.py    # Tournament management
│   └── utils/          # Utility functions
│       └── inference.py           # Multi-provider LLM interface
├── evolve.py           # Clean CLI entry point
├── pyproject.toml      # Modern Python packaging
├── config.json         # Configuration
└── web_interface/      # Web UI for validation

Componentes Principais

📖 Como Funciona

O sistema segue um ciclo de evolução em três estágios:

1. Gerar Lote Inicial

2. Executar Torneio ELO

3. Gerar Próximo Lote

Esse processo iterativo evolui a escrita para níveis cada vez melhores ao longo do tempo.

⚙️ Configuração

Configuração Básica

Edite estes arquivos principais:

Configuração de Chaves de API

O sistema suporta múltiplos provedores de IA configurados pelo config.json. A configuração mapeia modelos para provedores e especifica quais variáveis de ambiente contêm as chaves de API:

{
  "llm_providers": {
    "openai": {
      "type": "openai",
      "base_url": "https://api.openai.com/v1",
      "api_key_env": "OPENAI_API_KEY"
    },
    "anthropic": {
      "type": "anthropic", 
      "api_key_env": "ANTHROPIC_API_KEY"
    },
    "deepinfra": {
      "type": "openai_compatible",
      "base_url": "https://api.deepinfra.com/v1/openai",
      "api_key_env": "DEEPINFRA_API_KEY"
    },
    "deepseek": {
      "type": "openai_compatible",
      "base_url": "https://api.deepseek.com/v1",
      "api_key_env": "DEEPSEEK_API_KEY"
    },
    "gemini": {
      "type": "openai_compatible",
      "api_key_env": "GEMINI_API_KEY",
      "base_url": "https://generativelanguage.googleapis.com/v1beta/openai/"
    }
  },
  "model_provider_mapping": {
    "gpt-4": "openai",
    "gpt-3.5-turbo": "openai", 
    "claude-3-sonnet-20240229": "anthropic",
    "meta-llama/Meta-Llama-3-70B-Instruct": "deepinfra",
    "deepseek-chat": "deepseek",
    "gemini-2.5-flash": "gemini"
  }
}
Em seguida, defina suas chaves de API como variáveis de ambiente:

export OPENAI_API_KEY="your-openai-key"        # For GPT models
export ANTHROPIC_API_KEY="your-anthropic-key"  # For Claude models  
export DEEPINFRA_API_KEY="your-deepinfra-key"  # For Llama models
export DEEPSEEK_API_KEY="your-deepseek-key"    # For DeepSeek models
export GEMINI_API_KEY="your-gemini-key"          # For Gemini models
Você só precisa definir as chaves para os provedores que planeja usar. O sistema roteia automaticamente as solicitações de modelo para o provedor correto com base na configuração.

Opções de Configuração

O arquivo config.json controla todo o comportamento do sistema:

{
  "batch_generation": {
    "num_stories": 10,
    "model": "gpt-4",
    "initial_elo": 1500
  },
  "elo_ranking": {
    "tournament_rounds": 50,
    "judge_model": "claude-3-sonnet-20240229",
    "k_factor": 32
  },
  "next_batch_generation": {
    "top_stories_to_select": 3,
    "variants_per_story": 2,
    "include_original_stories": true
  },
  "evolution_pipeline": {
    "max_iterations": 5,
    "auto_continue_from_existing": true
  }
}

🎭 Modos de Escrita

Modo de Escrita Criativa (Padrão)

Modo de Escrita Geral (--general)

🔧 Configuração Avançada

Personalizando Estratégias de Geração

Para usuários avançados, é possível personalizar os prompts de geração, estilos de autor e conjuntos de missões editando os arquivos no diretório src/generators/:

#### Personalização de Escrita Criativa (src/generators/generate_response.py)

Conjuntos de Missão - Defina abordagens e objetivos criativos:

mission_sets = {
    "emotional_depth": [
        "Focus on the psychological depth of characters",
        "Explore complex emotional landscapes", 
        "Create moments of genuine human connection"
    ],
    "narrative_craft": [
        "Experiment with unique narrative structures",
        "Use vivid, sensory descriptions",
        "Create compelling story arcs"
    ],
    "dialogue_mastery": [
        "Write authentic, character-specific dialogue",
        "Use subtext and implied meaning",
        "Balance dialogue with action and description"
    ]
}
Estilos de Autor - Emule diferentes abordagens de escrita:

author_styles = [
    "Write with the psychological insight of Virginia Woolf",
    "Adopt the sparse, powerful prose of Ernest Hemingway", 
    "Use the magical realism style of Gabriel García Márquez",
    "Employ the detailed world-building of Tolkien"
]
#### Personalização de Escrita Geral (src/generators/generate_response_general.py)

Áreas de Foco Acadêmico - Direcione domínios específicos de escrita:

academic_focuses = [
    "Rigorous analytical argument development",
    "Clear thesis statement and supporting evidence",
    "Proper academic citation and source integration",
    "Logical flow and coherent structure"
]
Abordagens de Escrita - Defina estratégias analíticas:

writing_approaches = [
    "Comparative analysis with multiple perspectives",
    "Problem-solution framework with evidence",
    "Cause-and-effect reasoning with examples",
    "Critical evaluation with balanced arguments"
]

Personalizando os Critérios de Avaliação (src/generators/judge_response.py)

Você pode modificar os critérios de avaliação e os prompts de julgamento para focar em aspectos específicos da qualidade da escrita:

# Edit the judge_responses function to customize evaluation criteria
evaluation_criteria = [
    "Technical writing proficiency",
    "Creative originality and innovation", 
    "Emotional impact and reader engagement",
    "Structural coherence and flow",
    "Character development and authenticity"
]

Dicas para Configuração Avançada

Essa abordagem modular permite ajustar finamente o processo de evolução para seus objetivos e domínios de escrita específicos.

🌐 Interface Web

Valide seus resultados de evolução com a interface web integrada:

cd web_interface
pip install -r requirements.txt
python app.py
Abra http://localhost:5000 para acessar:

```

--- Tranlated By Open Ai Tx | Last indexed: 2025-07-18 ---