Contenido del curso
Open AI Studio
- 5

Gestión de modelos en Azure OpenAI Studio y uso de speech to text
11:17 min - 6

Uso de Azure OpenAI Service con API REST y SDK Python/C#
12:16 min - 7

Cómo guiar a GPT con pasos definidos
09:18 min - 8

Gestión de Azure OpenAI Studio y Modelos Generativos
02:09 min - 9

Inteligencia Artificial Generativa Responsable: Principios y Prácticas
14:08 min
Prompt Enginereering
Uso de los datos (Chat with your Data)
Monitoreo
Mejores prácticas
Conclusiones
Pesquisa vetorial com embeddings e ADA
Resumen
A pesquisa vetorial resolve um problema concreto: encontrar informação semelhante nos teus próprios dados sem depender de coincidências exactas de palavras. Vais aprender a usar o modelo ADA do Azure OpenAI Service para gerar embeddings e construir consultas por semelhança semântica sobre um conjunto de receitas culinárias.
O que é a pesquisa vetorial e porque é útil?
Quando tentas consultar os teus próprios dados, raramente sabes qual é o melhor mecanismo. A pesquisa tradicional falha quando o utilizador escreve algo parecido, mas não idêntico, ao texto guardado.
A pesquisa vetorial transforma cada texto numa representação numérica e compara essas representações para encontrar semelhanças. Assim, podes perguntar em linguagem natural e recuperar conteúdo relevante mesmo que as palavras não coincidam.
¿Qué es un embedding? Es una representación vectorial de un texto compuesta por valores de punto flotante. Permite medir qué tan parecidos son dos textos comparando sus vectores en lugar de sus palabras.
Como gerar embeddings com o modelo ADA no Azure OpenAI?
O modelo ADA converte texto em vectores extensos de números decimais. Antes de o usar, vale a pena saber que o modelo ADA não está disponível em todas as regiões do Azure, por isso o exemplo da aula foi implantado na região East US.
O fluxo geral é simples e segue esta ordem:
- Configurar os pacotes e ler as credenciais do Azure OpenAI a partir das variáveis de ambiente.
- Carregar o dataset num dataframe (neste caso, um CSV de receitas com descrição e processo de preparação).
- Tokenizar cada texto com tiktoken para garantir que o conteúdo cabe no modelo.
- Enviar cada linha ao modelo ADA e guardar o vector resultante.
Porque é necessário tokenizar com tiktoken antes do embedding?
O processo de tokenização parte o texto em unidades que o modelo entende. Sem este passo, não consegues processar de forma fiável todo o texto imerso no dataset, sobretudo quando há descrições longas como as instruções de uma receita.
Depois de tokenizar, esses tokens alimentam a função que gera o embedding e devolve o vector que vais comparar mais tarde.
Como fica o dataframe depois do processo de embedding?
Depois de aplicar o embedding linha a linha, o dataframe fica com três blocos de informação úteis:
- Os dados originais carregados do ficheiro CSV.
- A contagem de tokens por receita.
- A representação vetorial atribuída a cada receita.
Este resultado é guardado novamente num CSV separado, o que te permite ter a base de conhecimento pronta para qualquer aplicação que precise de pesquisa vetorial sem ter de recalcular tudo.
Como funciona a função de pesquisa por semelhança?
A ideia é ter uma função única que receba um texto, gere o seu vector com ADA e o compare com todos os vectores guardados. O resultado é a linha (ou linhas) cuja receita é mais parecida com a pergunta.
Na aula testou-se primeiro um vector simples a partir do texto «O meu nome é Maritza Mera». Ao verificar o comprimento do vector vê-se que é bastante extenso e que cada posição é um valor de ponto flutuante, o que confirma que o modelo está a devolver uma representação numérica densa.
¿Cómo se compara un texto nuevo con el dataset? Se genera el vector del texto de entrada con el mismo modelo ADA y se mide su similitud contra cada vector ya almacenado en el dataframe. Las filas más cercanas son las más parecidas semánticamente.
Que tipo de perguntas devolvem bons resultados?
Na demonstração foram usadas entradas curtas em linguagem natural. Por exemplo, ao enviar Chocolate and berries através da função ask_question, o sistema avalia todas as receitas vetorizadas e devolve aquelas cujo conteúdo é semanticamente mais próximo dessa ideia, mesmo que as receitas não usem exactamente essas palavras.
Podes pedir um único resultado ou vários, dependendo de quantos elementos a função deve retornar. Isto é útil quando queres mostrar uma lista de sugestões, não apenas a melhor correspondência.
¿Para qué sirve la función ask_question? Recibe una frase del usuario, genera su embedding con ADA y devuelve las recetas del dataset cuyo vector tiene mayor similitud, ordenadas por relevancia.
Que podes construir a partir desta base?
Com o CSV de vectores guardado e a função de pesquisa pronta, tens os dois ingredientes principais de qualquer aplicação de retrieval sobre dados próprios: uma base de conhecimento vetorizada e uma forma de consultar essa base com texto livre.
A partir daqui, podes ligar este mecanismo a interfaces de chat, sistemas de recomendação ou motores internos de busca. A chave é que a comparação deixa de depender das palavras exactas e passa a depender do significado.
Experimenta agora com os teus próprios dados: escolhe um dataset que conheças bem, gera os embeddings com ADA e faz perguntas em linguagem natural. Conta nos comentários que tipo de dados vais vetorizar e que perguntas te interessa responder.