Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Aura-State — Framework Python para construir fluxos de trabalho de LLM como máquinas de estado com verificação formal via demonstração de teoremas Z3, verificação de modelo CTL e previsão conforme para extração de dados comprovadamente correta. | Kitploit
Ferramentas/GitHubGitHub/munshi007/aura-state
Análise EstáticaAnálise de CódigoAprendizado de MáquinaPapers e PesquisaAprendizado e EducaçãoRecursos CuradosSegurança de IA
GitHubmunshi007/aura-state

Aura-State

Framework Python para construir fluxos de trabalho de LLM como máquinas de estado com verificação formal via demonstração de teoremas Z3, verificação de modelo CTL e previsão conforme para extração de dados comprovadamente correta.

Ver Repositório
286há 5 mesesRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Aura-State

Um framework Python para construir workflows de LLM como máquinas de estado, com verificação formal integrada.

root@kitploit:~
pip install git+https://github.com/munshi007/Aura-State.git

O que é isso

A maioria dos frameworks de LLM permite que você encadeie chamadas de API e torça pelo melhor. Aura-State adota uma abordagem diferente: você define seu workflow como um grafo de nós, cada um com uma tarefa específica, e o framework lida com extração, verificação e roteamento.

A principal diferença está no que acontece entre os nós:

  • Roteamento é pontuado matematicamente (MCTS), não decidido pelo LLM
  • Matemática roda em um interpretador isolado (sandbox), nunca alucinada
  • Extrações podem ser formalmente provadas como corretas usando Z3
  • Workflows podem ser verificados quanto a propriedades de segurança antes de executar

Exemplo rápido

root@kitploit:~
from aura_state import AuraEngine, Node, CompiledTransition
from pydantic import BaseModel, Field
from openai import OpenAI

# Define what you want to extract
class LeadData(BaseModel):
    name: str = Field(description="Full name")
    budget: int = Field(description="Budget in USD")
    timeline: str = Field(description="Buying timeline")

# Define a node that extracts it
class ExtractLead(Node):
    system_prompt = "Extract lead info from a sales call transcript."
    extracts = LeadData

    def handle(self, user_text, extracted_data=None, memory=None):
        return "QualifyBudget", extracted_data.model_dump()

# Define a node that does deterministic math (no LLM)
class QualifyBudget(Node):
    system_prompt = "Score the lead."
    sandbox_rule = "result = budget > 100000"  # runs in sandboxed AST, not LLM

    def handle(self, user_text, extracted_data=None, memory=None):
        return "END", memory

# Wire it up
engine = AuraEngine(llm_client=OpenAI())
engine.register(ExtractLead, QualifyBudget)
engine.connect([
    CompiledTransition(from_node=ExtractLead, to_node=QualifyBudget),
])

# Run
next_state, data = engine.process("ExtractLead", user_text="Hi, I'm Sarah. Budget is $450k.")

O que acontece internamente

Quando você chama engine.process(), ele executa estas etapas em ordem:

root@kitploit:~
1. Adaptive DAG health check     →  Should this node be skipped or retried?
2. GraphRAG cache lookup          →  Have we seen this exact input before? Skip the LLM.
3. Few-shot injection             →  Find similar past successes, inject as examples.
4. LLM extraction + verification  →  Extract data, verify with Z3, retry if wrong.
5. Your node's handle() method    →  Your business logic runs here.
6. MCTS Routing (UCB1)        →  Score branches using UCB1 + AdaptiveDAG metrics.
7. State serialization            →  Save state for time-travel debugging.
8. Speculative execution          →  Pre-compute likely next nodes in parallel.

Verificação formal (a parte interessante)

É isso que realmente diferencia o Aura-State de outros frameworks.

Verifique seu grafo de workflow antes de executá-lo

Seu grafo de nós é compilado em uma estrutura de Kripke e verificado contra propriedades de lógica temporal:

root@kitploit:~
from aura_state import verify_engine, reachability, mutual_exclusion, eventual_completion

results = verify_engine(engine, [
    {"description": "QualifyBudget is reachable", "formula": reachability("QualifyBudget")},
    {"description": "All paths terminate", "formula": eventual_completion("QualifyBudget")},
])
# Result: PROVEN or VIOLATED, with the exact states that satisfy/violate

Esta é a mesma técnica usada para verificar circuitos de hardware e sistemas de controle de voo (model checking CTL, Clarke et al. 1986).

Prove que os dados extraídos estão corretos

Após o LLM extrair valores, o Z3 (um provador de teoremas da Microsoft Research) pode provar formalmente que eles satisfazem suas restrições:

root@kitploit:~
from aura_state import prove_extraction

result = prove_extraction(
    {"budget": 450000, "cost_per_sqft": 3, "total": 1350000},
    obligations=["budget > 0", "total == budget * cost_per_sqft"],
)
# result.verified = True
# If False, Z3 gives you a counterexample showing exactly what broke

Intervalos de confiança em extrações

Execute a extração várias vezes e obtenha intervalos de confiança livres de distribuição:

root@kitploit:~
from aura_state import conformal_interval

budgets = [450000, 452000, 448000, 450000, 451000]
ci = conformal_interval(budgets, confidence=0.95)
# ci.lower = 447800, ci.upper = 452200

Isso usa predição conforme (Vovk et al., 2005) — sem suposições distribucionais.

Resultados de benchmark

Executamos 10 transcrições de vendas imobiliárias em um pipeline de 4 nós usando GPT-4o-mini (30 chamadas de API no total):

root@kitploit:~
Campo             Precisão
──────────────   ──────────
name                  100%
budget                100%
bedrooms              100%
pre_approved           90%
timeline               90%
city                   80%

Propriedades temporais:       3/3 comprovadas
Obrigações Z3:               20/20 aprovadas
Precisão do roteamento:       90%
Latência média:              1.4s
root@kitploit:~
# Try it yourself — no API key needed
python examples/benchmark/run_benchmark.py

# With real LLM calls (needs OPENAI_API_KEY in .env)
python examples/benchmark/run_live.py --model gpt-4o-mini --runs 3

Estrutura do projeto

root@kitploit:~
aura_state/
├── core/
│   ├── engine.py              # Main engine — process() + MCTS/UCB1 routing
│   ├── adaptive_graph.py      # Node health monitoring
│   ├── verification_loop.py   # Extract → verify → retry loop
│   └── providers.py           # Multi-model routing + cost tracking
├── compiler/
│   ├── schema_compiler.py     # JSON Schema → Node classes
│   └── dspy_tuner.py          # KNN few-shot selection
├── verification/
│   ├── temporal_verifier.py   # Kripke + CTL model checking
│   ├── conformal.py           # Conformal prediction intervals
│   └── proof_engine.py        # Z3 proofs
├── execution/
│   ├── tracer.py              # State serialization (time-travel debug)
│   └── sandbox.py             # Safe math execution (AST validated)
├── memory/
│   ├── trajectory_cache.py    # Subgraph isomorphism cache
│   └── pruner.py              # Context window optimization
└── consensus/
    └── auto_vote.py           # Multi-run extraction with voting

Instalação

root@kitploit:~
pip install git+https://github.com/munshi007/Aura-State.git

Requer Python 3.10+. Dependências: pydantic, instructor, openai, networkx, pyModelChecking, z3-solver, pyyaml.

Testes

root@kitploit:~
python -m pytest tests/ -v
# 65 tests passing

Documentação

  • Guia de Uso — exemplos de código para cada funcionalidade
  • Referência de Algoritmos — aprofundamento em CTL, Z3, MCTS, UCB1, predição conforme
  • Como Contribuir — visão geral da arquitetura e como contribuir
  • Benchmark — benchmarks sintéticos e ao vivo

Licença

MIT

Baixar ferramenta