Aprendizagem pessoal com IA
e orientação prática
Espelho de desenho CyberKnife

O que é o modo de interação de artefatos?

Na era da programação assistida por IA, queremos que a IA gere códigos que não sejam apenas textos estáticos, mas que possam ser Análise, edição, visualização e até mesmo execução O. Essa demanda deu origem a um novo modo de interação - o Artefato .. Esta postagem começará com o conceito teórico até implementação prática Análise aprofundada Princípio de funcionamento do artefato, tecnologia principal e cenários de aplicação .

1. o que é artefato?

Artefato não é um termo técnico específico, mas sim um Interação de código de IA O exemplo mais antigo conhecido disso está em Claude (IA antrópica) aparece na versão web do site. Seu objetivo principal é Tornar o código gerado por IA mais fácil de analisar, editar e visualizar .

O que é o Modo de Interação de Artefatos-1


No modelo tradicional de geração de código de IA, a IA retorna apenas o texto do código, que o usuário precisa copiar e colar manualmente no editor para executar. Essa abordagem tem os seguintes pontos problemáticos:

  • Falta de informações estruturadas O código gerado pela IA é apenas texto simples e não consegue distinguir informações importantes, como nome e tipo de arquivo.
  • Experiência editorial limitada Os usuários não podem alterar o código diretamente na interface de diálogo de IA e precisam usar ferramentas adicionais.
  • Falta de visualização instantânea Para o código HTML/CSS/JS, não é possível visualizar o efeito de execução em tempo real, o que afeta a eficiência do desenvolvimento.

Modo interativo de artefatos aprovar (um projeto de lei ou inspeção etc.) Dados estruturados, análise e apresentação dinâmica de front-end A solução desses problemas permite o código gerado por IA:

  1. Armazenamento estruturado (Contém informações como nome do arquivo, tipo de arquivo, etc.).
  2. analisado dinamicamente (extrai blocos de código e distingue texto simples).
  3. Mostrar no editor de código (Suporte para modificação instantânea).
  4. Suporte à visualização (por exemplo, componentes HTML/SVG/React, etc.).

2. como o artefato funciona

2.1 Processo de interação

completo Interação de artefatos Ele consiste em cinco etapas principais:

  1. A IA gera blocos de código estruturados
    • O código precisa ser envolvido em tags específicas para análise.
  2. Analisando o que a IA retorna
    • Reconhecer blocos de texto e de código e extrair o nome do arquivo, o tipo e o conteúdo do código.
  3. Armazenamento de estrutura de dados
    • Armazena o conteúdo analisado em uma estrutura de dados adequada, distinguindo entre texto simples e código.
  4. Exibição dinâmica de front-end
    • Renderiza o código na interface da IU e oferece recursos de edição.
  5. Visualização do código
    • Se o código for HTML/CSS/JS ou Reagir que pode ser executado e visualizado diretamente.

3. implementação principal do Artifact

3.1 Formato do código gerado pela IA

Para que o front-end analise corretamente o código gerado pela IA, precisamos definir um conjunto de formulário padrão A maneira usual de fazer isso é usar DSL (Linguagem específica do domínio) Marcação. Exemplo:

<<artifact-start>>[{
"filename": "index.html",
"filetype": "html"
}]
<!DOCTYPE html>
<html>
<head>
<title>My Page</title>
</head>
<body>
<h1>Hello, Artifact!</h1>
</body>
</html>
<<artifact-end>>

Nessa estrutura de código, o<<artifact-start>> responder cantando <<artifact-end>> como marcadores que estão contidos internamente:

  • nome do arquivo Nome do arquivo (por exemplo index.html).
  • tipo de arquivo Tipo de arquivo (por exemplo html).
  • Conteúdo do código .

3.2 Análise de blocos de código de artefato

No front end, precisamos desenvolver Analisador de artefatos para extrair blocos de código. Os blocos de código podem ser extraídos usando a função expressão regular (matemática) para combinar <<artifact-start>> responder cantando <<artifact-end>> O conteúdo entre:

lógica de análise

  1. Blocos de código correspondentes
    const artifactRegex = /<<artifact-start>>(.*?)<<artifact-end>>/gs;
    const matches = responseText.match(artifactRegex);
    
  2. Extração de informações JSON
    const jsonRegex = /\[(.*?)\]/s;
    const jsonMatch = codeBlock.match(jsonRegex);
    const artifactInfo = JSON.parse(jsonMatch[1]);
    
  3. Armazenamento de objetos estruturados
    const artifact = {
    filename: artifactInfo.filename,
    filetype: artifactInfo.filetype,
    content: codeBlock.replace(jsonMatch[0], "").trim()
    };
    

3.3 Armazenamento de dados estruturados

O código analisado precisa ser armazenado em uma estrutura de dados para que possa ser renderizado corretamente pelo front-end.

estrutura de dados

interface Artifact {
filename: string;
filetype: string;
content: string;
}
interface MixContent {
type: "text" | "artifact";
text?: string;
artifact?: Artifact;
}
  • Artifact As estruturas são usadas para armazenar arquivo de código .
  • MixContent As estruturas são usadas para armazenar Conteúdo misto de texto simples e código .

3.4 Exibição dinâmica de front-end

O front-end pode ser usado React + CodeMirror para fornecer janelas de código editáveis, por exemplo:

import CodeMirror from '@uiw/react-codemirror';
function CodeEditor({ artifact }) {
return (
<CodeMirror
value={artifact.content}
options={{ mode: artifact.filetype, theme: "monokai", lineNumbers: true }}
/>
);
}

(col.) reprovar (um aluno) artifact Depois de ser analisado, o bloco de código é preenchido automaticamente com o editor de código para edição pelo usuário.

3.5 Visualização do código

Para o código HTML, podemos usar iframe Visualize diretamente:

function Preview({ artifact }) {
return (
<iframe srcDoc={artifact.content} style={{ width: "100%", height: "500px" }} />
);
}

Se for Componentes React A seguir, um exemplo do tipo de trabalho que precisa ser realizado pelo CDN apresenta o React A primeira etapa é criar um HTML dinâmico para visualização.

4. avançado: suporte para análise de vários documentos

Se a IA gerar Vários documentos A extensão é necessária para o ArtifactParserpara torná-lo compatível com mais de um artifact também fornece Função de troca de arquivos .

interface MultiArtifact {
files: Artifact[];
}

Front-end disponível Lista de documentos para que o usuário possa visualizar os diferentes arquivos de código.

5. cenários de aplicação de artefatos

✅ Assistente de código de IA

  • Obtenção de código gerado por IA Editável, pré-visualizável, executável para melhorar a eficiência do desenvolvimento.

✅ Plataforma de desenvolvimento com pouco código

  • Torne os componentes da interface do usuário gerados por IA imediatamente visualizáveis e ajustáveis.

✅ Web design assistido por IA

  • Gerar e renderizar código HTML/CSS/JS diretamente para aumentar a eficiência do desenvolvimento da Web.

6. resumo

Modo interativo de artefatos O cerne da questão está em:

  1. A IA gera blocos de código estruturados (rotulado usando DSL).
  2. Código de análise de front-end (extração de código e metadados com expressões regulares).
  3. Armazenado como dados estruturados (Faça a distinção entre texto e código).
  4. Apresentação e edição dinâmicas (É fornecido suporte ao editor de código).
  5. Suporte à visualização (executando componentes HTML, SVG ou React).

Por meio desse modo de interação, aO código gerado por IA torna-se mais intuitivo e fácil de usar, melhorando significativamente a experiência do desenvolvedor. 🚀.

Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " O que é o modo de interação de artefatos?
pt_BRPortuguês do Brasil