Um guia para desenvolvedores para as Ferramentas Cliente ChatKit da OpenAI

Stevia Putri
Written by

Stevia Putri

Amogh Sarda
Reviewed by

Amogh Sarda

Last edited 12 outubro 2025

Expert Verified

Então, está a pensar construir uma interface de chat personalizada para um agente de IA. Provavelmente já percebeu que criar uma UI de chat robusta do zero é uma grande dor de cabeça. Tem de se preocupar com a gestão de estado, o streaming de respostas, o tratamento da entrada do utilizador... a lista continua. Pode parecer que está a reinventar a roda pela centésima vez.

O ChatKit da OpenAI surge para resolver exatamente este problema. É uma UI de chat incorporável e pronta para produção que promete oferecer uma experiência bonita e semelhante à de um agente, sem todo o trabalho pesado de frontend. Mas há um porém: embora o ChatKit possa simplificar o frontend, traz consigo um conjunto próprio de desafios, especialmente se quiser ter controlo real sobre o seu funcionamento.

Este guia destina-se a programadores que estão a ponderar as suas opções. Vamos analisar o que o ChatKit realmente é, como funcionam as suas funcionalidades mais avançadas, como as ChatKit Client Tools, e, mais importante, que limitações deve considerar antes de se comprometer totalmente.

O que é exatamente o ChatKit da OpenAI?

Pense no ChatKit como um componente de janela de chat pré-construído que pode inserir diretamente no seu site ou aplicação. Foi concebido para ser a cara de uma IA "agente", que é apenas uma forma elegante de dizer uma IA que consegue fazer coisas, executar tarefas de vários passos, usar ferramentas e dar mais do que apenas um bloco de texto como resposta. Poupa à sua equipa o trabalho de ter de construir todo o cliente de chat do zero.

Quando decide usar o ChatKit, tem duas formas principais de o configurar:

  1. O caminho fácil (Integração Recomendada): Incorpora a UI do ChatKit no seu site e deixa a OpenAI tratar do alojamento e escalonamento do agente de backend. Constrói a lógica do agente usando o seu construtor visual de agentes (Agent Builder). Esta é, sem dúvida, a forma mais rápida de ter um protótipo a funcionar, mas fica a viver inteiramente no mundo da OpenAI.

  2. O caminho "faça você mesmo" (Integração Avançada): Executa o ChatKit na sua própria infraestrutura. Isto dá-lhe a liberdade de o ligar a qualquer backend que deseje (como um construído com LangGraph), mas também significa que é responsável por construir o seu próprio servidor, gerir o armazenamento de dados e tratar da autenticação.

O caminho fácil é tentador, mas a maioria das empresas precisa da flexibilidade do caminho avançado para se ligar às suas próprias bases de dados internas e APIs privadas. E é aí, meu amigo, que as contrapartidas começam realmente a acumular-se.

O que há de interessante nas funcionalidades principais do ChatKit?

Antes de entrarmos nos pormenores das partes difíceis, vamos ver por que razão os programadores estão sequer a falar do ChatKit. Ele vem com algumas funcionalidades genuinamente úteis que podem tornar a construção de uma UI de chat bem acabada muito, muito mais rápida.

UI incorporável e temas fáceis

Na sua essência, o ChatKit é um componente web. Pode colocá-lo em qualquer página HTML, quer esteja a usar uma framework como o React ou apenas HTML simples. É bastante simples fazê-lo corresponder à aparência da sua marca ajustando variáveis CSS para coisas como cores, tipos de letra e raio da borda. Isto ajuda o widget de chat a parecer uma parte natural da sua aplicação, em vez de um complemento de terceiros desajeitado.

Widgets interativos para conversas mais ricas

Esta é provavelmente uma das funcionalidades mais apelativas. Em vez de a sua IA responder apenas com texto, pode enviar de volta componentes interativos chamados widgets. Estes podem ser cartões, formulários, listas, o que quiser.

Imagine um bot de viagens que não se limita a listar voos, mas que os mostra num widget de "Cartão" com imagens e botões "Reservar Agora". Ou um assistente de e-commerce que usa um widget de "Formulário" para recolher o endereço de entrega do utilizador diretamente na janela de chat. Isto transforma um simples bot de perguntas e respostas em algo que se parece mais com uma mini-aplicação, o que é um grande avanço na experiência do utilizador.

Upload de ficheiros e visualizações da "cadeia de pensamento"

O ChatKit também suporta anexos de ficheiros, para que os utilizadores possam carregar imagens ou documentos. Isto é essencial para muitos casos de uso. Pense num bot de apoio ao cliente que precisa de ver uma captura de ecrã de um erro, ou um assistente interno de RH que precisa de processar um currículo.

Também tem uma forma integrada de mostrar a "cadeia de pensamento" do agente. Este é um toque agradável para a transparência, pois pode ajudar os utilizadores (e a si, o programador) a entender os passos que a IA deu para chegar a uma resposta. Ajuda a construir um pouco de confiança quando a IA não é apenas uma caixa preta.

Mas uma palavra de cautela aqui: se estiver a auto-alojar, é responsável por tudo o que acontece com esses ficheiros. Tem de construir a lógica para os armazenar, proteger e gerir o acesso. Isso é um projeto inteiro por si só e adiciona uma camada significativa de trabalho e considerações de segurança.

A desvendar o poder das ChatKit Client Tools

Muito bem, é aqui que as capacidades do ChatKit se tornam realmente interessantes e são uma razão chave pela qual o pode considerar para um projeto complexo. As ChatKit Client Tools são uma funcionalidade que permite ao seu agente de backend atribuir tarefas de volta ao browser do utilizador.

Pense nisto: o seu agente de backend vive num servidor algures. Não faz ideia do que está a acontecer no browser do utilizador. Não consegue aceder ao armazenamento local, ver a localização GPS do utilizador ou saber o estado atual da UI da sua aplicação.

É aqui que as ferramentas de cliente entram. O agente pode essencialmente pausar, pedir ao frontend para executar um pedaço de código, esperar pelo resultado e, em seguida, usar essa informação para continuar a sua tarefa.

Eis uma visão simplificada de como esse fluxo funciona:

  1. Um utilizador escreve uma mensagem e clica em enviar.

  2. A UI do ChatKit envia essa mensagem para o seu agente de backend.

  3. O seu agente processa a mensagem e percebe que precisa de informação do browser. Por exemplo, precisa de saber que itens estão atualmente no carrinho de compras do utilizador.

  4. O agente envia um evento "tool_call" de volta para a UI do ChatKit, dizendo-lhe que ferramenta executar (por exemplo, "get_shopping_cart") e quaisquer parâmetros.

  5. O seu código de frontend, que está à escuta desse nome de ferramenta específico, executa a função.

  6. O browser envia o resultado (como um objeto JSON dos itens do carrinho) de volta para o seu agente.

  7. O agente agora tem a informação do carrinho e usa-a para criar a sua resposta final e útil para o utilizador.

Quando é que usaria realmente as ChatKit Client Tools?

As ferramentas de cliente são super úteis para algumas situações específicas:

  • Aceder a APIs específicas do browser: Pode obter dados do "localStorage", "sessionStorage", ou interagir com tokens de hardware.

  • Ler ou alterar o estado da UI da sua aplicação: O agente pode pedir para adicionar um item a um carrinho de compras que é gerido inteiramente do lado do cliente.

  • Usar SDKs do lado do cliente: Se tiver um SDK de terceiros que só corre no browser, esta é a sua ponte para permitir que o agente o use.

Embora isto seja incrivelmente poderoso, não é exatamente plug-and-play. Tem de definir as ferramentas com os nomes exatamente iguais tanto no seu agente de backend como na sua configuração do ChatKit no frontend. Isto cria um acoplamento forte entre o seu frontend e backend. Quaisquer alterações a uma ferramenta requerem uma implementação coordenada em ambas as partes da sua stack, o que pode abrandar as coisas.

Este nível de codificação personalizada é um grande salto em complexidade. Vale a pena notar que algumas plataformas abordam isto de forma diferente, oferecendo ações pré-construídas. Por exemplo, em vez de escrever código personalizado para uma consulta de encomenda, uma plataforma como a eesel AI fornece uma integração de um clique com ferramentas como o Shopify. Isto permite que a sua IA consulte detalhes de encomendas de forma segura através de uma ação pré-construída que pode configurar numa interface simples, sem necessidade de codificação.

Os custos ocultos das ChatKit Client Tools: ao que se está realmente a comprometer

O ChatKit é um kit de UI fantástico, mas é apenas uma peça de um puzzle muito maior. Se o seu objetivo é lançar uma solução de suporte com IA completa, fiável e fácil de gerir, depender apenas do ChatKit pode levar a alguns custos ocultos e dores de cabeça sérias no futuro.

A besta da 'integração avançada'

Se quiser ligar o ChatKit às suas próprias bases de conhecimento ou usar um backend que não seja da OpenAI, tem de seguir o caminho da "Integração Avançada". E "avançada" é um eufemismo. Torna-se responsável por:

  • Construir um armazenamento de dados do zero: Precisa de arquitetar e implementar toda a camada de base de dados para acompanhar os tópicos de conversação, mensagens e ficheiros. A documentação oficial sugere o uso de blobs JSON para facilitar as migrações, mas isso ainda é um enorme esforço de engenharia.

  • Criar um armazenamento de anexos: Como mencionámos anteriormente, precisa de tratar de tudo relacionado com uploads de ficheiros por conta própria. Isto inclui armazenamento, controlo de acesso e geração de pré-visualizações. Se errar na segurança aqui, vai ter muitos problemas.

  • Gerir a sua própria autenticação: Tem de construir um endpoint seguro que possa emitir tokens de curta duração para autenticar os utilizadores.

Isto não é, de forma alguma, uma solução "plug-and-play". Requer tempo dedicado de programadores, manutenção contínua e um conhecimento profundo de sistemas de backend. É por isso que muitas empresas acabam por escolher uma plataforma totalmente gerida. Com uma ferramenta como a eesel AI, pode estar operacional em poucos minutos, não em poucos meses. Ela trata de todo o armazenamento de dados, segurança e integrações por si. Basta ligar as suas fontes de conhecimento, como o Zendesk, o Confluence, ou os Google Docs da sua equipa, e está pronto a começar.

É apenas uma UI, não um cérebro: uma limitação do ChatKit

Este é o ponto mais crítico a entender: o ChatKit dá-lhe a janela de chat, mas não faz absolutamente nada para tornar o seu agente de IA inteligente. A qualidade das respostas do seu agente depende inteiramente do conhecimento a que ele pode aceder e da lógica que constrói no backend.

O trabalho do ChatKit termina onde o trabalho real começa. Continua a ser responsável por construir os pipelines de RAG (Geração Aumentada por Recuperação), gerir como as suas fontes de conhecimento são ingeridas e atualizadas, e criar os fluxos de trabalho que o seu agente precisa de seguir para ser útil.

Este é exatamente o problema que plataformas como a eesel AI foram concebidas para resolver. A Eesel unifica todo o conhecimento da sua empresa automaticamente, quer esteja em tickets de suporte antigos, wikis internas ou documentos espalhados. Treina a IA no contexto específico do seu negócio para que as respostas que dá sejam realmente relevantes e precisas desde o início.

O risco de ficar preso a um ecossistema

Quando constrói com o ChatKit, está a construir sobre os protocolos e SDKs específicos da OpenAI. Embora possa tecnicamente ligá-lo a outros backends, toda a documentação, auxiliares e exemplos são concebidos para o ecossistema da OpenAI.

O que acontece daqui a um ano se quiser mudar para um fornecedor de LLM diferente ou usar uma nova framework de orquestração? Pode ter de reescrever completamente a sua infraestrutura de chat. Isso é um enorme risco estratégico, especialmente para algo tão central como o seu chat voltado para o cliente. Prende-o à forma de fazer as coisas de um único fornecedor, o que pode não ser o melhor para si a longo prazo.

Qual é o veredito sobre as ChatKit Client Tools?

O ChatKit da OpenAI é uma ferramenta impressionante e poderosa para programadores que têm o tempo, os recursos e a necessidade específica de construir uma UI de chat agêntica altamente personalizada do zero. Funcionalidades como widgets interativos e as ChatKit Client Tools oferecem um grau de interatividade que é difícil de replicar sem um grande esforço.

No entanto, não é uma solução mágica. Para a maioria das empresas, o objetivo principal é implementar um assistente de IA eficaz de forma rápida e fiável. O ChatKit resolve apenas a parte do frontend desse puzzle. A complexidade do backend, o desafio da gestão do conhecimento e o risco real de dependência de um fornecedor são obstáculos enormes a superar.

Se o seu objetivo é automatizar o suporte, dar melhores ferramentas à sua equipa e unificar o conhecimento da sua empresa sem iniciar um projeto de engenharia massivo, uma plataforma abrangente é quase sempre um caminho mais direto para obter valor. Ferramentas como a eesel AI fornecem a solução completa, de ponta a ponta, desde a UI de chat e integrações de conhecimento até fluxos de trabalho de automação e análises, permitindo-lhe implementar um assistente de IA inteligente e útil em minutos, não em meses.

Perguntas frequentes

As ChatKit Client Tools permitem que o seu agente de IA de backend solicite informações ou ações diretamente do browser do utilizador. Elas essencialmente fazem a ponte entre a lógica do agente do lado do servidor e as capacidades do browser do lado do cliente, permitindo interações mais ricas e contextuais.

A implementação das ChatKit Client Tools numa integração avançada requer a definição das ferramentas com nomes idênticos tanto no seu agente de backend como na configuração do ChatKit no frontend. Terá de escrever código de frontend personalizado para escutar estas chamadas de ferramentas, executar a lógica desejada do lado do browser e enviar os resultados de volta para o seu agente.

Claro! São benéficas para cenários como aceder a APIs específicas do browser (por exemplo, localStorage, GPS), ler ou modificar o estado da UI do lado do cliente (por exemplo, adicionar a um carrinho de compras), ou interagir com SDKs de terceiros que só correm no browser.

Os principais desafios incluem o forte acoplamento entre as definições de ferramentas do seu frontend e backend, o que requer implementações coordenadas. Também é responsável por construir toda a lógica para a execução de ferramentas, tratamento de erros e segurança do lado do cliente, adicionando uma complexidade de engenharia significativa.

Não, as ChatKit Client Tools estão focadas em permitir capacidades interativas e troca de dados com o cliente, não em melhorar a inteligência central da IA. A capacidade da IA de entender perguntas e gerar respostas relevantes ainda depende inteiramente do conhecimento do seu agente de backend, pipelines de RAG e lógica de orquestração.

Sim, pode haver um risco. Embora as ChatKit Client Tools se possam ligar a vários backends, elas são concebidas dentro dos protocolos específicos da OpenAI. Mudar para um fornecedor de LLM diferente ou uma framework de orquestração pode exigir uma reescrita significativa da sua integração de ferramentas do lado do cliente e da lógica do agente de backend.

Compartilhe esta postagem

Stevia undefined

Article by

Stevia Putri

Stevia Putri is a marketing generalist at eesel AI, where she helps turn powerful AI tools into stories that resonate. She’s driven by curiosity, clarity, and the human side of technology.