Inteligência Artificial e ChatGPT
Código-fonte e documentação para minha palestra do Simpósio ADUG apresentada em 28 de abril de 2023. Desde então, adicionei e aprimorei o código para demonstrar ainda mais os recursos da IA.
O objetivo deste projeto é permitir que os usuários do Delphi possam usar a tecnologia de IA em suas aplicações. Existem muitos tipos diferentes de IA e milhares de modelos diferentes. Este projeto está trabalhando na criação de interfaces generalizadas para os diferentes tipos de modelos de IA e torná-los facilmente acessíveis.
A inteligência artificial (IA) é um campo interdisciplinar que combina ciência da computação, matemática e psicologia cognitiva para criar sistemas inteligentes capazes de realizar tarefas complexas. Seus rápidos avanços levaram a uma ampla gama de aplicações que demonstram a versatilidade da IA.
A tradução de idiomas é uma dessas aplicações, em que ferramentas alimentadas por IA traduzem com eficiência entre idiomas, simplificando tarefas como a tradução de programas de software para públicos globais. A IA também se destaca em conversas semelhantes às humanas, com aplicativos interativos que compreendem e respondem naturalmente à linguagem humana. O reconhecimento de voz e a conversão de fala em texto em tempo real permitem a conversão e interações contínuas baseadas em voz, tornando os aplicativos orientados por IA mais acessíveis e fáceis de usar.
Nos domínios criativos e artísticos, a IA pode gerar imagens baseadas em descrições textuais, demonstrando a sua capacidade de compreender e produzir conteúdos visuais. As capacidades de visão computacional da IA permitem-lhe reconhecer com precisão rostos e outros objetos em fotografias e documentos, ilustrando o seu potencial em tarefas de reconhecimento visual e diversas aplicações como segurança e automação.
A capacidade da IA de analisar e processar dados e gerar relatórios abrangentes destaca o seu valor em vários domínios. Além disso, as ferramentas alimentadas por IA podem transcrever arquivos de áudio em texto escrito, tornando as tarefas de transcrição mais eficientes e precisas.
Os programas de exemplo abaixo são uma tentativa de demonstrar os recursos disponíveis para os programadores Delphi atualmente. Trabalhei na criação de APIs genéricas para que diferentes provedores possam ser trocados ou desativados para:
- experimentar
- siga o atual modelo líder de IA
- facilite a alteração com base no preço
- evite o bloqueio do fornecedor
- ou por qualquer outro motivo.
Solicitações do ChatGPT
Alguns exemplos de prompts GPT
Slides de apresentação do Simpósio ADUG Original 2023
Programas de exemplo
- ChatGPTAction
- Aplicativo de servidor simples que pode ser adicionado a uma ação ChatGPT GPT para permitir que seu computador escreva código Delphi. Consulte AI Generated Delphi para obter alguns exemplos de programas criados com ChatGPTAction.
- Demonstração de incorporações
- Demonstração simples mostrando como funcionam os Embeddings
- Falar
- Programa demonstrando a chamada de várias APIs Text to Speech e as diferentes vozes disponíveis (FMX)
- Traduzir
- traduz entre idiomas usando várias APIs de nuvem.
- Simplifique a tradução de programas Delphi ao usar o suporte integrado a recursos multilíngues do Delphi.
- DelphiChatGPT
- escreva perguntas para o ChatGPT e peça que ele responda.
- Detecção de rosto
- Detecte rostos em uma foto.
- Clima
- Consulte a previsão do tempo para Bendigo no departamento de meteorologia, gere um ou dois parágrafos e leia-os
- TranscreverÁudio
- Faça upload de um arquivo de áudio e traduza-o por meio de uma API de fala na nuvem para texto.
- Reconhecimento de Voz
- converta fala em texto em tempo real diretamente do seu microfone, envie-a para o GPT da OpenAI e receba a resposta lida para você.
- Geração de imagem
- gere uma imagem usando o texto fornecido por você usando as APIs DALLE-2 e DALLE-3 da OpenAI.
- Processar fatura
- de uma fatura em PDF, extraia os detalhes importantes e formate como uma string JSON legível por máquina
- APIs de teste
- Um projeto para testar as diferentes APIs e a funcionalidade das APIs
Projeto oferece suporte a recursos LLM
Recurso | GPT-4o | Serviço OpenAI do Azure | Groq | Grok do xAI | Claude da Antrópico | Gêmeos do Google |
---|
Suporte à visão | Sim | Sim | Sim | Sim | Sim | Não* |
Chamada de Função | Sim | Sim | Sim | Sim | Não* | Não* |
*Recurso não suportado/implementado atualmente
Dúvidas/Precisa de ajuda?
Crie um problema e eu responderei a ele.
Provedores usados/disponíveis
- Google - Texto para fala, LLM, Tradutor
- Microsoft Azure – conversão de texto em fala, GPT, tradução
- Amazon - conversão de texto em fala, tradução
- Claude-3-opus antrópico, claude-3-sonnet e claude-3-haiku, suportando uma das maiores janelas de contexto atualmente disponíveis (200 mil tokens)
- X.AI grok-beta LLM
- Replicar acesse uma ampla gama de modelos
- Huggingface acesse uma ampla gama de modelos
- ElevenLabs Text to Speech e clonagem de voz
- Texto para fala OpenAI, reconhecimento de voz por sussurro, DALLE-2, geração de imagem DALLE-3, GPT4 LLM
- Reconhecimento de voz AssemblyAI
- Reconhecimento de voz DeepGram
- Rev.AI Reconhecimento de Voz
- Conqui-ai Execute uma variedade de modelos de texto para fala localmente a partir de um contêiner docker
- Detecção de rosto local CodeProject-Ai.
Fazendo os projetos funcionarem
- Cada uma das APIs da nuvem precisa ter sido configurada em seus respectivos consoles de desenvolvedor.
- Execute o projeto TestAPIs e selecione o item de menu Configurações->Chaves de API.... Adicione a API dos provedores que você deseja usar.
- Se você não estiver usando um provedor específico, não precisará de uma chave para isso.
Perguntas sobre código e como configurar as coisas
- Fique à vontade para levantar questões sobre qualquer dúvida que você tenha sobre o código. Eu sei que há muito neste projeto e muito para configurar, então gostaria de melhorar a documentação para tornar mais fácil para todos usarem todas as partes deste projeto.
Potenciais futuras áreas de pesquisa/estudo
- Usando Embeddings para pesquisar grandes conjuntos de dados
- Usando Python4Delphi para poder chamar várias bibliotecas Python AI do Delphi.
Links relacionados com inteligência artificial
TensorFlow.Delphi
sussurro.cpp Reconhecimento de voz
lhama.cpp
lhama-pas
Criador de imagens do Bing
Google
Implementação RDOpenAI Delphi de ChatGPT - um componente baseado em eventos
ChatGPT OpenAI ChatGPT
DelphiOpenAI uma biblioteca Delphi para OpenAI
ChatGPTPluginForLazarus Um plug-in OpenAI (ChatGPT) para Lazarus IDE.
ChatGPT uma interface Firemonkey ChatGPT escrita em Delphi.
AI-Playground-DesktopClient Um playground de modelos de linguagem Firemonkey para acessar modelos de linguagens como StableLM, ChatGPT e muito mais.
AI-Code-Translator Use GPT para traduzir entre linguagens de programação
Reconhecimento de matrícula de código aberto TOpenALPR
PgVector PgVector permite armazenar e consultar vetores/embeddings em um banco de dados SQL
Conjunto de dados público CommonVoice de gravações para reconhecimento de voz
Abraçando cara
Assistente aberto
Bibliotecas externas necessárias para construir projetos
- ICS 9.0 ou do gerenciador de pacotes GetIt integrado ao Delphi. - Para reconhecimento de voz
- landgraf-dev/aws-sdk-delphi AWS SDK
- DelphiMVCFramework para ChatGPTAction
Ferramentas usadas para criar projetos de exemplo
- https://github.com/PKGeorgiev/Delphi-JsonToDelphiClass
- Violinista
- Fichário de dados XML em Delphi