Inserções no .NET
As inserções são a maneira como os LLMs capturam o significado semântico. São representações numéricas de dados não numéricos que um LLM pode usar para determinar relações entre conceitos. Você pode usar inserções para ajudar um modelo de IA a entender o significado das entradas para que ele possa executar comparações e transformações, como resumir texto ou criar imagens de descrições de texto. As LLMs podem usar inserções imediatamente e você pode armazenar inserções em bancos de dados vetoriais para fornecer memória semântica para LLMs conforme necessário.
Casos de uso para inserções
Esta seção lista os principais casos de uso para inserções.
Use seus próprios dados para melhorar a relevância da conclusão
Use seus próprios bancos de dados para gerar inserções para seus dados e integrá-los a uma LLM para disponibilizá-los para conclusões. Esse uso de inserções é um componente importante da geração aumentada de recuperação.
Aumentar a quantidade de texto que você pode ajustar em um prompt
Use inserções para aumentar a quantidade de contexto que você pode ajustar em um prompt sem aumentar o número de tokens necessários.
Por exemplo, suponha que você queira incluir 500 páginas de texto em um prompt. O número de tokens para esse texto bruto excederá o limite do token de entrada, impossibilitando a inclusão direta em um prompt. Você pode usar inserções para resumir e dividir grandes quantidades desse texto em partes que são pequenas o suficiente para caber em uma entrada e avaliar a similaridade de cada peça com todo o texto bruto. Em seguida, você pode escolher uma peça que preserve melhor o significado semântico do texto bruto e usá-la em seu prompt sem atingir o limite de token.
Executar classificação de texto, resumo ou tradução
Use inserções para ajudar um modelo a entender o significado e o contexto do texto e, em seguida, classificar, resumir ou traduzir esse texto. Por exemplo, você pode usar inserções para ajudar modelos a classificar textos como positivos ou negativos, spam ou não spam, ou notícias ou opiniões.
Gerar e transcrever áudio
Use inserções de áudio para processar arquivos de áudio ou entradas em seu aplicativo.
Por exemplo, o Serviço de Fala dá suporte a diversas inserções de áudio, incluindo conversão de fala em texto e conversão de texto em fala. Você pode processar áudio em tempo real ou em lotes.
Transformar texto em imagens ou imagens em texto
O processamento semântico de imagem requer inserções de imagem, que a maioria das LLMs não pode gerar. Use um modelo de inserção de imagem, como ViT para criar inserções de vetor para imagens. Em seguida, você pode usar essas inserções com um modelo de geração de imagem para criar ou modificar imagens usando texto ou vice-versa. Por exemplo, você pode usar o modelo DALL·E para gerar imagens como logotipos, rostos, animais e paisagens.
Gerar ou documentar código
Use inserções para ajudar um modelo a criar código a partir de texto ou vice-versa, convertendo diferentes expressões de código ou texto em uma representação comum. Por exemplo, você pode usar inserções para ajudar um modelo a gerar ou documentar código em C# ou Python.
Escolher um modelo de inserção
Você gera inserções para seus dados brutos usando um modelo de inserção de IA, que pode codificar dados não numéricos em um vetor (uma longa matriz de números). O modelo também pode decodificar uma inserção em dados não numéricos que têm o mesmo significado ou um significado semelhante aos dados brutos originais. Há muitos modelos de inserção disponíveis para uso, com o modelo text-embedding-ada-002
do OpenAI sendo um dos modelos comuns usados. Para obter mais exemplos, consulte a lista de Modelos de inserção disponíveis no Azure OpenAI.
Armazenar e processar inserções em um banco de dados de vetor
Depois de gerar inserções, você precisará de uma maneira de armazená-las para que possa recuperá-las posteriormente com chamadas para uma LLM. Os bancos de dados vetoriais são projetados para armazenar e processar vetores, portanto, eles são uma casa natural para inserções. Diferentes bancos de dados vetoriais oferecem diferentes recursos de processamento, portanto, você deve escolher um com base em seus dados brutos e suas metas. Para obter informações sobre suas opções, consulte soluções de banco de dados de vetor disponíveis.
Usando inserções em sua solução LLM
Ao criar aplicativos baseados em LLM, você pode usar o Kernel Semântico para integrar modelos de inserção e repositórios de vetores, para que você possa efetuar pull rápido de dados de texto e gerar e armazenar inserções. Isso permite que você use uma solução de banco de dados de vetor para armazenar e recuperar memórias semânticas.