No campo das ferramentas de programação de IA, os desenvolvedores se acostumaram a dois modos de interação comuns. O primeiro é o "modo de diálogo de perguntas e respostas", em que os usuários comunicam os requisitos do projeto e obtêm trechos de código por meio do diálogo com a IA. Cursor eCline O segundo é o "modelo de agente", em que o usuário dá uma instrução explícita e a IA desmonta e executa de forma autônoma uma série de subtarefas, exigindo confirmação constante do usuário. O segundo é o "modelo de agente", no qual o usuário dá uma instrução explícita e a IA desmonta e executa uma série de subtarefas por conta própria, exigindo confirmação constante do usuário, o que é poderoso, mas às vezes arriscado devido à natureza incontrolável do processo.
Recentemente, um IDE de programação de IA chamado Kiro introduziu um IDE de programação chamado Spec
de um novo modelo com o conceito central de "planejar antes de construir". Antes da codificação formal, oKiro
exige que os requisitos detalhados e os documentos de design sejam criados primeiro com o usuário. Essa metodologia tenta chegar à raiz do problema da baixa qualidade do código na programação de IA devido a requisitos ambíguos.
Processos de engenharia para o modelo Kiro Spec
A seguir, uma demonstração passo a passo de um projeto real Kiro
Spec
Modelar processos e ideias específicos no desenvolvimento de software.
Etapa 1: Criar o documento de requisitos (requirements.md)
Quando um desenvolvedor envia uma solicitação para o Kiro
Ele não começa a escrever código imediatamente após a criação de um requisito inicial.Kiro
Primeiro, ele criará um arquivo no diretório inicial do projeto chamado ~/.kiro/specs/项目名称
Em seguida, analisa a estrutura e a funcionalidade do projeto atual e pensa e amplia os requisitos iniciais. Em seguida, analisa a estrutura e a funcionalidade do projeto atual e reflete e amplia a estrutura com base nos requisitos iniciais, estruturando os resultados dessas reflexões em um documento denominado requirements.md
do documento de requisitos.
Essa documentação é armazenada no caminho acima para revisão, modificação e validação pelo desenvolvedor. O conteúdo do documento geralmente contém Kiro
Os requisitos originais são compreendidos, divididos e refinados para formar vários pontos de requisitos claros. Essa etapa garante que o desenvolvedor e a IA concordem com o escopo e as metas do projeto, evitando retrabalho em um estágio posterior devido a um entendimento inconsistente.
Etapa 2: Criar o documento de design (design.md)
Depois que o documento de requisitos é validado, o processo passa para a segunda etapa.Kiro
será baseado em requirements.md
gera automaticamente um documento de design de nível técnico para o conteúdo do design.md
.
Esse documento de design é equivalente a um programa de desenvolvimento técnico preliminar. Ele mapeia as divisões dos módulos do projeto, as definições das principais funções, as estruturas de dados, o design da interface da API e assim por diante. Por meio desse documento, os desenvolvedores podem avaliar se as soluções técnicas propostas pela IA são viáveis e eficientes e têm a oportunidade de fazer ajustes antes do início da codificação. Esse processo de design antecipado ajuda a garantir a racionalidade da arquitetura do projeto.
Etapa 3: Criar a lista de tarefas (task.md)
Depois que a documentação do projeto tiver sido confirmada, oKiro
Ele será traduzido em um plano de implementação específico que é task.md
Documentação.
Esse arquivo é essencialmente uma lista de tarefas, detalhando os Kiro
Cada ação específica a ser executada em seguida, por exemplo, "Create a main.py
Documentação", "Realização calculate_sum
Functions", "Add error handling logic" e assim por diante. A transparência da lista de tarefas permite que os desenvolvedores antecipem claramente cada etapa da operação da IA, criando assim um senso de controle e confiança em todo o processo de codificação.
Etapa 4: Implementação da tarefa e feedback
Na visão do desenvolvedor do task.md
Após a confirmação final dos planos noKiro
O processo de codificação começará então a ser implementado estritamente de acordo com essa lista.
No decorrer da implementação.Kiro
O usuário recebe feedback em tempo real sobre o andamento das tarefas, por exemplo, qual tarefa foi concluída e qual está sendo executada no momento. Esse fluxo de trabalho determinístico, em contraste com o fluxo de trabalho tradicional Agent
Em contraste com o status de "caixa preta" da possível implementação do modelo.Spec
Toda geração de código no modelo é baseada em documentação e planejamento claros e pré-confirmados, o que melhora muito a precisão e a confiabilidade do código final entregue.