$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Base teórica abrangente
Componente QAS: A estrutura QAS consiste em três segmentos, conforme mostrado na Figura 3: i) Módulo de processamento de perguntas (QPM), ii) Módulo de processamento de documentos (DPM) e iii) Módulo de extração e formulação de respostas (AEFM). O sistema recebe perguntas que se enquadram em duas categorias principais: Factoide e Não Factóide. As perguntas factóides geralmente usam palavras interrogativas como o quê, onde, quando ou quem, enquanto as perguntas não factóides usam palavras como como e por quê.
DPM: Na lista fornecida, o usuário pode selecionar uma passagem específica. Em seguida, cada token na passagem é marcado usando um marcador de parte da fala (POS). Para extrair verbos, identifique todos os tokens marcados como verbos. Combine esses verbos com uma lista de verbos não convencionais e aplique lógica para verbos regulares. Crie uma estrutura de dados (array) contendo os verbos extraídos, seus tempos verbais e suas formas -ing.
QPM: O sistema recebe entrada na forma de uma pergunta do usuário. O texto é indexado usando a classe StringTokenizer e os tokens resultantes são armazenados em uma estrutura de dados separada. Essa estrutura de dados é então retornada para utilização posterior dentro do programa.
AEFM: O primeiro passo é identificar o verbo na pergunta dada. O verbo que foi identificado recentemente agora é correspondido aos tokens que foram gerados durante o estágio de processamento do documento. O caso escolhido para um tipo específico de pergunta factual (como o quê ou quando) é utilizado para extrair e construir a resposta de maneira mais precisa.
Antes de escolher o tipo de questionamento, o usuário é solicitado a selecionar a passagem de sua escolha. O QPM é responsável por processar a pergunta do usuário e encaminhá-la para o AEFM. O AEFM utiliza as extrações obtidas do DPM e os documentos processados que contêm o formato marcado do documento de entrada original. O módulo passará os algoritmos necessários para o módulo de formulação para obter a resposta desejada.

Figura 3: Componentes do QAS. A figura ilustra o processo de quatro etapas de um sistema de controle de qualidade: Pergunta, Processamento de perguntas, Processamento de respostas e Resposta. No Processamento de perguntas, o sistema classifica a pergunta. No Processamento de Respostas, ele encontra e revisa documentos e passagens para produzir a resposta. Clique aqui para ver uma versão maior desta figura.
Modelo BERT: Para descobrir as associações entre palavras em um texto, o método BERT usa um transformador. Existem dois mecanismos em um transformador - um codificador e um decodificador28, mas apenas o codificador é necessário para o BERT. O BERT adota uma abordagem bidirecional e verifica sistematicamente o texto de entrada para ensinar a si mesmo o significado das palavras em seu contexto. O codificador usa como entrada uma série de tokens que foram vetorizados. Os vetores são então alimentados na rede neural, que produz uma série de vetores que refletem a entrada. O vetor de saída de uma palavra muda dependendo da frase em que ela aparece. O vetor de uma palavra pode variar dependendo do contexto em que ela aparece; por exemplo, "like" em "He likes to play cricket" tem um vetor diferente de "like" em "His face turned red like a tomato". A abordagem começa com uma fase de processamento de texto antes de passar para a fase de construção do modelo. As etapas que o BERT executa para processar o texto são discutidas na próxima seção28.
Processamento de texto: O modelo BERT representa o texto de entrada de acordo com um conjunto prescrito de princípios. Além disso, esse fator contribui para o melhor desempenho do modelo. A incorporação de entrada no BERT consiste em um amálgama de três tipos distintos de incorporações28.
Incorporações de posição (PEs): Para aprender as informações relacionadas à ordem nas incorporações, são usados PEs. Os PEs são usados para restaurar informações sobre a ordem perdida nos transformadores. O BERT desenvolve PEs distintos especificamente para cada ponto na sequência de entrada. O BERT possui a capacidade de transmitir as informações posicionais das palavras dentro de uma frase, utilizando PEs. Isso permite que o BERT capture e represente efetivamente a sequência ou a ordem das palavras.
Incorporações de sentenças (SEs): Além disso, para ajudar o modelo a distinguir entre a primeira e a segunda frases, o BERT aprende uma incorporação que é exclusiva para cada uma delas. Também é capaz de aceitar frases emparelhadas como entradas para atividades como controle de qualidade.
Incorporações de token (TEs): TEs são ensinados para cada token no vocabulário de token WordPiece. O vocabulário do token WordPiece compreende unidades de subpalavras derivadas de palavras encontradas no corpus. Como um exemplo ilustrativo, esta coleção de vocabulário abrangerá todas as subpalavras concebíveis do termo Pergunta, incluindo Questio, Questi e assim por diante.
A representação de entrada de um token é construída adicionando suas incorporações nos níveis de segmento e posição. Por causa disso, é uma abordagem de incorporação extensa que fornece uma riqueza de informações para o modelo. A Figura 49 mostra as incorporações do modelo BERT.

Figura 4: Incorporações do BERT. A figura mostra como as incorporações de entrada são criadas para um modelo de transformador. Começa com uma sequência de entrada: [CLS] o céu [MASK] está nublado [SEP] vai chover [SEP]. Cada token na sequência recebe sua própria incorporação, como Ethe ou E[MASK]. Em seguida, as incorporações de frases são adicionadas para cada frase, como EA para a primeira e EB para a segunda. Incorporações posicionais, rotuladas de E0 a E9, também são incluídas para indicar a posição de cada token. Tudo isso é combinado para formar as incorporações de entrada finais. Este número foi modificado de9. Clique aqui para ver uma versão maior desta figura.
Projeto QAS usando BERT: Para fins ilustrativos, examine esta questão em conjunto com um parágrafo extraído de uma entrada da Wikipedia sobre a Football League28.
Pergunta: Onde foi fundada a Football League?
Passagem: Em 1888, a Football League foi fundada na Inglaterra, tornando-se a primeira de muitas competições profissionais de futebol. Durante o século 20, vários dos vários tipos de futebol cresceram e se tornaram alguns dos esportes coletivos mais populares do mundo.
Resposta: Inglaterra
O modelo BERT utiliza a extração de token da pergunta e do contexto, combinando-os posteriormente em uma entrada unificada. Como dito anteriormente, o processo começa com a utilização de um token [CLS], que serve como um indicador para o início de uma frase. Além disso, um separador [SEP] é empregado para separar distintamente a pergunta e a passagem. Além do token [SEP], o BERT incorpora SEs para distinguir entre a pergunta e a passagem28 que contém a resposta. O BERT usa dois SEs, um dedicado à pergunta e outro à passagem, para estabelecer uma distinção clara entre eles. As incorporações são posteriormente combinadas com uma representação one-hot28 de tokens para diferenciar entre a pergunta e a passagem. Esse processo é ilustrado na Figura 5.

Figura 5: Representação de entrada BERT. A figura ilustra como as incorporações de entrada são geradas para um QAS baseado em BERT. Começa com o token [CLS], depois a pergunta Quantos? [SEP], e a passagem BERT grande é, cada uma com suas incorporações de frases (A para a pergunta, B para a passagem). Token, frase e incorporações posicionais são combinadas para fazer a entrada final. Clique aqui para ver uma versão maior desta figura.
Posteriormente, a representação incorporada combinada28 da pergunta e do contexto é utilizada como entrada no modelo BERT. A camada oculta final do BERT é modificada para usar o SoftMax para gerar distribuições de probabilidade. Essas distribuições determinam os índices inicial e final de uma subcadeia de caracteres dentro da frase de texto de entrada, que representa uma resposta, conforme ilustrado na Figura 6, para uma representação visual.

Figura 6: Fluxo de trabalho de processamento do BERT para controle de qualidade. A figura mostra como o modelo BERT funciona para controle de qualidade. Ele apresenta uma sequência de entrada que inclui uma pergunta, marcada por um token de classificação [CLS] no início e um token separador [SEP] no final, seguido por um contexto, separado por outro [SEP]. Os tokens nesta sequência são transformados em incorporações. O modelo então prevê as posições inicial e final da resposta dentro da passagem. Clique aqui para ver uma versão maior desta figura.
Banco de dados vetorial (VD): Um VD17,18 é um sistema especializado para armazenar, gerenciar, indexar e consultar com eficiência representações vetoriais de dados de alta dimensão. Os vetores geralmente são gerados a partir de modelos de aprendizado profundo e encapsulam informações semânticas ou contextuais sobre os dados. Cada dimensão de um vetor representa uma característica específica. Incorporações são representações numéricas de objetos como texto, imagens, vídeos e áudio. Essas incorporações são usadas em vários aplicativos, incluindo Machine Learning (ML), NLP, sistemas de recomendação, visão computacional e IR. Os VDs facilitam pesquisas de similaridade eficazes e consultas semânticas agrupando objetos semelhantes próximos no espaço vetorial. O Facebook AI Similarity Search (FAISS)29 é um VD proeminente usado neste estudo para identificar o contexto mais relevante para as consultas do usuário. A Tabela 2 descreve as principais características dos VDs e seus casos de uso.
| Característica | Descrição |
| Dados de alta dimensão | Lida com dados com centenas ou milhares de dimensões. |
| Vizinho mais próximo aproximado (RNA) | Permite pesquisas rápidas de similaridade aproximando distâncias. |
| Escalabilidade | Suporta conjuntos de dados em grande escala com bilhões de vetores. |
| Integração | Geralmente se integra a estruturas e ferramentas de IA/ML para fluxos de trabalho contínuos. |
| Consultas em tempo real | Fornece pesquisas vetoriais de baixa latência para aplicativos interativos. |
Tabela 2: Principais características da DV. A tabela destaca características importantes da DV. Isso inclui lidar com dados de alta dimensão, executar pesquisas rápidas de similaridade usando algoritmos de ANN, dimensionar para grandes conjuntos de dados, trabalhar com ferramentas de IA e ML e oferecer suporte a consultas rápidas e em tempo real para uso interativo.
Métricas de avaliação de desempenho: O sistema SCD-QA foi avaliado usando duas métricas primárias: escore EM14 e modelo Latência15. A pontuação EM, uma métrica padrão em estudos de controle de qualidade, avalia a precisão da previsão medindo a proporção de respostas previstas que correspondem exatamente à verdade. Para um conjunto de N questões, a pontuação EM é formalmente definida na Equação 1 da seguinte forma:
onde
(1)
Essa métrica atribui uma pontuação de 1 para uma correspondência exata com a resposta de referência e 0 para qualquer diferença.
A métrica Latência quantifica o tempo total de processamento necessário para o sistema gerar uma resposta a uma consulta individual. Essa métrica é calculada como o tempo médio decorrido em todas as consultas, conforme apresentado na Equação 2:
(2)
onde Tstarti e Tendi são os carimbos de data/hora que marcam o início e o fim do processamento da i-ésima consulta, respectivamente. A latência é relatada em s e captura a capacidade de resposta do sistema, abrangendo todos os estágios, desde o processamento de entrada até a geração de respostas.
Método
Para implementar o SCD-QA, os seguintes estudos de teste são incorporados neste artigo.
Conjunto de dados SCD-QA: Um conjunto de dados proposto30 é introduzido para a implementação do sistema SCD-QA. Este conjunto de dados é derivado de um corpus de texto contendo Ph.D. regras para 20228, para diretrizes de alunos do NIT Arunachal Pradesh, Índia. Para estabelecer o sistema SCD-QA, é necessário gerar um arquivo JSON que englobará todas as informações pertinentes em um formato preciso. O conjunto de dados é gerado a partir do corpus de texto usando a ferramenta de anotação Haystack (versão 2.18.1)31, uma estrutura de código aberto. Essa ferramenta facilita a criação do conjunto de dados SCD-QA no estilo do SQuAD14. As etapas para criar um conjunto de dados anotado do tipo SQuAD a partir do arquivo PDF são mostradas na Figura 7, e a estrutura de nosso conjunto de dados no estilo SQuAD é ilustrada na Figura 8.

Figura 7: Etapas para criar um conjunto de dados anotado a partir de um arquivo PDF. A figura ilustra um fluxo de trabalho passo a passo para criar um conjunto de dados anotado no estilo SQuAD usando ferramentas Haystack. Ele descreve o processo de extração de texto de PDFs, limpeza e divisão em passagens, anotação manual de pares de perguntas e respostas, armazenamento das anotações no formato JSON SQuAD e, finalmente, exportação do conjunto de dados para treinamento de modelos. Clique aqui para ver uma versão maior desta figura.

Figura 8: Estrutura do conjunto de dados de controle de qualidade do factoide. A figura exibe uma estrutura de dados JSON que representa um parágrafo e um par de controle de qualidade de um conjunto de dados. Possui uma seção de parágrafos, que contém um conjunto de perguntas e respostas. Uma pergunta é: Qual é a nota mínima exigida para ser admitido no Ph.D. Ciência? Cada pergunta tem um ID e uma matriz de respostas. A resposta inclui um ID de documento, ID de pergunta, as notas de 60% do texto, a posição inicial da resposta e uma categoria de resposta não especificada. O sinalizador is_impossible é definido como false. Clique aqui para ver uma versão maior desta figura.
O conjunto de dados é estruturado como uma lista de dicionários, em que cada dicionário contém campos-chave, como dados, parágrafos, pergunta, answer_id, document_id, question_id, texto, answer_start, answer_end, is_impossible e contexto.
data: contém as informações gerais de resposta às perguntas.
parágrafos: Um contexto específico, juntamente com suas perguntas e respostas.
pergunta: Uma pergunta particular.
answer_id: Um número de identificação exclusivo para cada texto de resposta.
document_id: Um número de identificação exclusivo para cada contexto.
question_id: Um número de identificação exclusivo para cada pergunta.
text: o texto da resposta.
answer_start: O local inicial da resposta correta no contexto.
answer_end: O local final da resposta correta no contexto.
is_impossible: Informa se a resposta à pergunta feita está disponível no contexto ou não.
context: O corpus de texto a partir do qual uma resposta pode ser encontrada.
Todas as 80 perguntas no conjunto de dados proposto seguem o formato de pergunta factóide e não factóide. Exemplos de alguns tipos de perguntas formuladas são mostrados na Tabela 3.
| Perguntas |
| Quem é PS? |
| Qual é o tamanho da fonte do documento de última geração? |
| Quantos dias tem a Licença Maternidade? |
Tabela 3: Exemplo de pergunta do conjunto de dados. A tabela mostra exemplos de dois tipos de perguntas: a primeira e a segunda são perguntas factóides, enquanto a terceira é uma pergunta não factóide.
FAISS: FAISS (versão faiss_cpu-1.9.0)29,32, desenvolvido pela Facebook AI Research (FAIR), é uma biblioteca de código aberto que facilita a pesquisa eficiente de similaridade e o agrupamento de vetores densos. Ele é projetado especificamente para gerenciar dados de alta dimensão e em grande escala de forma eficaz. Este sistema facilita pesquisas rápidas e escaláveis de RNA em conjuntos de dados que compreendem milhões ou bilhões de vetores. É amplamente utilizado em aplicações relacionadas a incorporações, incluindo PNL, sistemas de recomendação e recuperação de imagem ou vídeo. O FAISS oferece vários métodos de indexação, incluindo Flat (força bruta), Arquivo Invertido (IVF), gráficos Hierárquicos Navigable Small World (HNSW) e quantização de produtos (PQ). Esses métodos permitem que os usuários otimizem o desempenho da pesquisa de acordo com o tamanho dos dados, a dimensionalidade e as especificações de hardware. Neste estudo, é utilizada a indexação plana, que realiza uma busca de força bruta usando a distância L2 (euclidiana) para identificar os vizinhos mais próximos. A escalabilidade do sistema suporta implementações de CPU e GPU, permitindo cálculos de alto desempenho em extensos conjuntos de dados. Além disso, oferece flexibilidade para otimizar o equilíbrio entre velocidade e precisão com base nos requisitos específicos da aplicação. O FAISS é frequentemente usado na PNL para avaliar a similaridade semântica em incorporações, como BERT ou Word2Vec. O FAISS é utilizado no QAS para armazenar e gerenciar representações vetoriais de documentos ou frases. Ele realiza pesquisas aproximadas de RNA33 para recuperar o contexto mais relevante para as perguntas do usuário, aprimorando a pesquisa semântica com incorporações de modelos de transformadores, como o BERT. O FAISS é uma ferramenta fundamental nos fluxos de trabalho de IA e ML devido à sua versatilidade.
BERT-large-uncased-whole-word-masking-finetuned- SQuAD model: O presente trabalho utiliza um modelo de linguagem pré-treinado conhecido como BERT-large-uncased-whole-word-mmasking-finetuned-squad9 para desenvolver um QAS factóide usando o conjunto de dados proposto no estudo. O modelo BERT passou por pré-treinamento no BookCorpus, um conjunto de dados de 11.038 livros não publicados9, bem como na Wikipédia em inglês, com exceção de listas, tabelas e cabeçalhos. O modelo em questão não tem caixa, o que significa que não distingue entre as palavras inglês e inglês. O modelo é um modelo de transformador pré-treinado que foi treinado em uma quantidade substancial de dados em inglês usando uma abordagem auto-supervisionada. O modelo foi pré-treinado exclusivamente em textos brutos, sem anotações humanas. Isso permite que ele aproveite uma grande quantidade de dados acessíveis ao público. O processo de pré-treinamento envolve a geração automática de entradas e rótulos a partir dos textos fornecidos. O modelo foi treinado com dois objetivos específicos9:
MLM: O processo envolve mascarar aleatoriamente 15%9 das palavras na frase de entrada. O modelo então processa toda a frase mascarada e prevê as palavras mascaradas. Essa abordagem diverge das Redes Neurais Recorrentes (RNNs) convencionais, que normalmente processam palavras sequencialmente, e de modelos autorregressivos, como o GPT, que empregam mascaramento interno de tokens futuros. A funcionalidade permite que o modelo adquira uma representação bidirecional da frase.
NSP: Durante a fase de pré-treinamento, o modelo combina duas frases disfarçadas como entradas. Em alguns casos, essas frases são adjacentes no texto original, indicando uma relação direta. Em outros casos, eles não são, o que significa que não há proximidade ou contexto original ligando-os. A etapa subsequente envolve o modelo prevendo se as duas frases são logicamente coerentes.
O presente modelo é caracterizado pela configuração subsequente: a arquitetura do modelo consiste em 24 camadas, com uma dimensão oculta de 1024. Ele utiliza 16 cabeças de atenção e tem um total de 336 milhões de parâmetros9.
WordPiece é usado para tokenizar os textos com um tamanho de vocabulário de 30.000 palavras nas etapas de pré-processamento. As entradas do modelo ficariam assim: [CLS] Frase A [SEP] Frase B [SEP]. O único requisito é que o comprimento total das frases combinadas seja inferior a 512 tokens9. O modelo pré-treinado específico produz a saída subsequente: a pontuação F1 alcançada é de 93,15%, enquanto a pontuação precisa da correspondência é de 86,91%9.
Modelo Distilbert/distilbert-base-cased-distilled-squad: O modelo DistilBERT10 é uma variante mais compacta, rápida e eficiente do modelo BERT9 , desenvolvido para manter a maior parte da capacidade semântica de compreensão do BERT, sendo menos intensivo em recursos e mais apropriado para aplicações práticas com capacidade computacional restrita. A versão distilbert-base-cased-distilled-squad foi ajustada no SQuAD14 para tarefas de controle de qualidade. O modelo utiliza a arquitetura do transformador, incluindo um tamanho reduzido de 66 milhões de parâmetros em contraste com os 110 milhões do BERT, mantendo 97% da eficácia do BERT na compreensão da linguagem. O DistilBERT consegue isso usando um método conhecido como Destilação de Conhecimento, que transmite informações do modelo BERT maior para o modelo DistilBERT mais compacto. Devido ao seu tamanho menor, ele pode inferir informações mais rapidamente e usar menos memória, o que o torna perfeito para aplicativos com recursos limitados, como dispositivos móveis ou de borda. O modelo, cuidadosamente ajustado no conjunto de dados SQuAD 1.1, demonstra proficiência excepcional em tarefas de controle de qualidade extrativas, em que o objetivo é localizar um segmento de texto de um contexto especificado que responda a uma pergunta. O DistilBERT atinge aproximadamente 85% da pontuação F1 do BERT na tabela de classificação do SQuAD e retém uma parte significativa da capacidade linguística do BERT, apesar de seu tamanho reduzido. Este modelo é uma solução excepcionalmente eficiente para trabalhos de controle de qualidade em nível de produção, otimizando o desempenho e a eficiência computacional.
Deepset/roberta-base-squad2: O modelo deepset/roberta-base-squad212,13 é uma variante ajustada da arquitetura RoBERTa. Ele foi projetado especificamente para o conjunto de dados SQuAD14 2.0, que inclui perguntas respondidas e não respondidas. Essa estrutura RoBERTa aprimorada elimina os9 trabalhos NSP do BERT. Ele também usa mascaramento dinâmico durante o treinamento para aumentar a eficiência e o desempenho em tarefas de compreensão de NL. O modelo tem 125 milhões de parâmetros e usa um transformador bidirecional. Isso permite que ele adquira informações contextuais de ambas as direções e se destaque em tarefas de controle de qualidade extrativas.
O ajuste fino no SQuAD 2.0 permite que o modelo identifique o intervalo de resposta correto em um determinado contexto e reconheça quando não há resposta. Ele usa um tokenizer BPE (Byte Pair Encoding) que lida com a tokenização de subpalavras e preserva a diferenciação de maiúsculas e minúsculas. Isso melhora sua capacidade de processar palavras incomuns e complexas. O modelo tem um bom desempenho, alcançando cerca de 85% -90% F1 e 80% -85% EM. Sua capacidade de detectar perguntas sem resposta e sua implantação eficaz o tornam valioso para atendimento ao cliente, recuperação de conhecimento e assistentes virtuais.
A maneira mais eficaz de implantar modelos BERT ajustados pelo SQuAD para controle de qualidade é usar o pipeline Hugging Face Transformers34. Essa estrutura simplifica a tokenização, a formatação de entrada, o carregamento de modelos e o pós-processamento de saída. Esses modelos são amplamente reconhecidos por sua eficácia no controle de qualidade extrativo, onde a resposta é um intervalo de texto recuperado diretamente do contexto fornecido. Para orientar a implementação, o procedimento a seguir descreve as etapas para executar modelos BERT.
Entrada e configuração: Esse processo requer quatro entradas principais e parâmetros de configuração: o nome do modelo, especificado como um identificador de string do Hugging Face Hub (por exemplo, google-bert/bert-large-uncased-whole-word-masking-finetuned-squad, distilbert/distilbert-base-cased-distilled-squad ou deepset/roberta-base-squad2); a pergunta (Q), fornecida como uma string contendo a consulta; e o contexto (C), uma string que representa o texto ou passagem relevante. A principal ferramenta usada é a função de pipeline de alto nível da biblioteca de transformadores Hugging Face (versão 4.57.0) em Python (versão 3.12.12).
Processo: Execução (Hugging Face Pipeline): O processo consiste em seis etapas principais e emprega o pipeline Hugging Face para lidar com a complexidade da tarefa de controle de qualidade:
Instalar biblioteca: Comece instalando a biblioteca necessária com o comando pip install transformers. Essa instalação permite o acesso aos modelos e à funcionalidade simplificada do pipeline.
Pipeline de importação: Importe a função de tubulação usando: do pipeline de importação de transformadores.
Inicialize o pipeline de controle de qualidade: Inicialize o pipeline de controle de qualidade usando qa_pipeline = pipeline("question-answering", model=""). Esse comando baixa o modelo e o tokenizador, tornando-os prontos para inferência.
Definir entrada: Definir pergunta = ... e contexto = ... para preparar os dados do modelo.
Executar inferência: Passe a pergunta e o contexto para o pipeline com result = qa_pipeline(question=question, context=context). O modelo processa a entrada e fornece uma resposta.
Extrair resposta: Obtenha a string de resposta do dicionário de saída usando: answer = result['answer'].
Saída: O processo produz vários parâmetros de saída na seguinte ordem: Resposta (o intervalo de texto extraído do contexto, apresentado como uma cadeia de caracteres), Pontuação (um valor de ponto flutuante que quantifica a confiança do modelo em sua previsão) e índices de início e fim (inteiros que especificam as posições de caracteres do intervalo de resposta dentro do contexto).
Transformadores de sentença/todos-MiniLM-L6-v2: O MiniLM-L6-v235 é um transformador de sentença pré-treinado da biblioteca Sentence-Transformers (versão 5.1.1)36. Ele é otimizado para incorporação de texto eficiente e precisa. Desenvolvido na estrutura MiniLM da Microsoft, inclui seis camadas de transformador e incorporações de 384 dimensões. Esse design equilibra desempenho e proficiência computacional, tornando-o adequado para aplicações em tempo real. O modelo foi treinado em mais de um bilhão de pares de frases de conjuntos de dados como SNLI, MultiNLI, benchmarks STS e dados rastreados pela web. Como resultado, ele demonstra proficiência em similaridade semântica, agrupamento e tarefas relacionadas à pesquisa. Devido ao seu tamanho pequeno (~ 22 MB) e desempenho de inferência aprimorado, o MiniLM-L6-v2 simplifica aplicativos como pesquisa semântica, detecção de duplicação e categorização de texto. Embora seja leve, ele oferece forte precisão em benchmarks como STS-B e SICK-R, tornando-o uma escolha eficaz para cenários escaláveis e de recursos limitados. O fluxo de trabalho para gerar a incorporação usando o Sentence-Transformer é representado na Figura 9 abaixo.

Figura 9: Etapa do processo de incorporação usando o modelo de transformador de frase. A figura ilustra o fluxo de trabalho para gerar incorporações de texto usando a estrutura de transformadores de frase. Ele descreve o processo desde a importação de bibliotecas e o carregamento de um modelo pré-treinado até a preparação de dados de texto, geração de incorporações, conversão em matrizes NumPy e armazenamento para tarefas downstream, como indexação ou pesquisa de similaridade. Clique aqui para ver uma versão maior desta figura.
Algoritmo proposto: Este estudo descreve uma metodologia sugerida no Algoritmo 1 para o desenvolvimento do sistema SCD-QA baseado em SeCD, capaz de abordar perguntas factóides e não factóides feitas pelos usuários.
ALGORITMO 1: Algoritmo do sistema SCD-QA baseado em SeCD proposto
Entrada: Conjunto de arquivo de contexto bruto (C) e a consulta do usuário (Q).
Saída: O LLM (M') baseado em transformador ideal selecionado e a resposta gerada por M'.
Contextos de pré-processamento: anote o conjunto de contexto bruto C para criar um conjunto de dados estruturado no formato DSQuAD .
DSQuAD = fanonato (C)
Gerar incorporações de contexto: Use um transformador de sentença fembed para converter cada contexto c
DSQuAD em uma incorporação ec.

Armazenar incorporações: Armazene Ec em um banco de dados vetorial V para pesquisa de similaridade eficiente.

Gerar Incorporação de Consulta: Transforme a consulta Q do usuário em uma incorporação eq usando o mesmo Transformador de Frase.

Recuperação de contexto: Recupere a incorporação
de contexto mais relevante do banco de dados V com base na semelhança com eq.

onde sim(eq,e c), é a função de similaridade.
Passe o contexto para LLMs: alimente o contexto
recuperado em 3 LLMs baseados em transformadores: Google-BERT (M1), DistilBERT (M2), RoBERTa (M3) e um modelo tradicional: TF-IDF+Similaridade de cosseno (M4)

Avaliação do modelo: Compare as respostas {R1,R 2,R 3,R 4} usando uma função de avaliaçãofeval, que pontua cada resposta.

Selecione o melhor modelo: Identifique o modelo M' com a maior pontuação de avaliação S'

Gerar saída final: Use M' para gerar a resposta final R com base em

Fim
O processo de algoritmo proposto descreve uma abordagem sistemática (Figura 10) para escolher um LLM baseado em transformador ideal para responder às perguntas do usuário. Ele incorpora pré-processamento, recuperação de contexto baseada em incorporação e avaliação de vários modelos para garantir respostas de alta qualidade e contextualmente relevantes. Abaixo, o processo passo a passo é explicado para maior clareza:
Preparação e pré-processamento de dados: A primeira fase envolve o processamento de dados textuais brutos
Entrada: Os arquivos de texto bruto8 são adaptados ao sistema.
Ferramenta de anotação31: A entrada é transformada em um conjunto de dados estruturado no formato SQuAD14 . Esta etapa envolve a criação de pares de controle de qualidade. Ele também organiza dados textuais relevantes em blocos de contexto bem definidos.
Saída: o conjunto de dados agora está pronto para criar incorporações.
Geração de incorporação de contexto: para permitir a recuperação de contexto eficiente e escalável, um modelo Sentence-Transformer35,36 treinado é aplicado ao conjunto de dados anotado. Esse transformador converte texto em incorporações de alta dimensão que capturam o significado semântico. As incorporações são armazenadas em VD, FAISS29,32 para permitir pesquisas rápidas baseadas em similaridade.
Processamento de consulta do usuário: Quando um usuário envia uma pergunta, a pergunta é processada pelo mesmo Transformador de Sentença35,36. Isso gera uma incorporação correspondente no mesmo espaço vetorial29,32 que as incorporações de contexto. Esse design garante que a consulta possa ser correspondida com entradas de contexto relevantes.
Recuperação de contexto usando similaridade de vetor: usando uma métrica de similaridade (por exemplo, similaridade de cosseno), o sistema compara a inserção de consulta com incorporações de contexto armazenado. O sistema seleciona o contexto mais relevante com base na pontuação de similaridade mais alta. Isso garante que apenas o contexto pertinente seja passado para modelos downstream. O processo reduz a sobrecarga computacional e melhora a relevância.
Avaliação do modelo em vários LLMs: O contexto selecionado é avaliado por três LLMs baseados em transformadores: Google-BERT28, DistilBERT10 e RoBERTa12. Também é avaliado por um TF-IDF37 tradicional baseado em palavras-chave com um modelo de similaridade de cosseno. Cada modelo processa o contexto e gera uma resposta à pergunta do usuário.
Avaliação comparativa: As respostas dos quatro modelos LLM são avaliadas usando duas métricas principais. Primeiro, a correspondência semântica é avaliada pelo EM14. Em segundo lugar, a latência do modelo é analisada pelos tempos médios de reação15.
Seleção de modelo e saída final: O modelo de melhor desempenho é selecionado como o LLM apropriado para a pergunta do usuário. A resposta final do modelo selecionado é considerada. Isso garante um equilíbrio entre eficiência computacional e qualidade de resposta.

Figura 10: Fluxo de trabalho do sistema SCD-QA usando modelos baseados em transformador. A figura mostra como funciona o sistema SCD-QA. Primeiro, um arquivo de contexto bruto é processado por uma ferramenta de anotação para criar um conjunto de dados no formato SQuAD. Um transformador de sentença gera incorporações, que são armazenadas em um banco de dados vetorial FAISS. Quando um usuário faz uma pergunta, o sistema cria uma incorporação para ela e seleciona o contexto mais relevante. Ele compara três modelos baseados em transformadores - Google-BERT, DistilBERT e RoBERTa, e uma pontuação tradicional de similaridade TFIDF + cosseno - e usa o de melhor desempenho para fornecer a resposta. Clique aqui para ver uma versão maior desta figura.