← Voltar ao blog

IA & Agentes

Copilot Studio - Base de Conhecimento [4] - Sites públicos vs busca na internet

Copilot Studio - Knowledge base [4] - Website as a source vs web search

Copilot Studio - Base de Conhecimento [4] - Sites públicos vs busca na internet

Fala dataholics! Chegou a hora de ver a web funcionando de verdade. A série de Base de Conhecimento passou os três primeiros posts inteira dentro de casa, no SharePoint e no semantic index do tenant, e hoje eu montei um agente pro próprio blog, o Datainaction, pra responder uma pergunta que confunde muita gente: qual a diferença entre plugar um site como fonte de conhecimento e deixar a busca na internet ligada? Vou mostrar as duas com print, sem e com internet, no mesmo agente.

O que veremos nesse post:

  • O agente da demo: o Datainaction

  • Public websites: como funciona por trás (Bing + RAG)

  • As regras de URL que confundem

  • Cuidado: o dado pode sair da sua fronteira de compliance

  • Site como fonte vs busca na internet (a demo, sem e com)

  • Bing Custom Search: quando você quer só um pedaço da web

  • Cenários: quando usar cada um

  • Resumo


O agente da demo: o Datainaction

Pra deixar tudo concreto eu criei um agente no Copilot Studio chamado Datainaction (rodando com o Claude Sonnet 4.6 por baixo, inclusive) e dei pra ele uma única fonte de conhecimento: o meu blog, https://datainaction.dev/blog, como Public website. A instrução dele é responder sobre os assuntos do blog e sempre citar o post de origem.

Repara que na aba Knowledge ele aparece com o Type Public website e status Ready. É esse o cenário que a gente vai testar de duas formas.


Public websites: como funciona por trás

Adicionar é simples, você vai em Add knowledge, escolhe Public websites, cola a URL, dá um nome e escreve uma descrição. E olha, essa descrição não é enfeite: quando o agente está em orquestração generativa é ela que ajuda o modelo a decidir quando acionar aquela fonte, então capricha e diz de verdade o que tem naquele site.

Quando o usuário pergunta algo, o Copilot Studio faz um RAG em cima do Bing e o fluxo é mais ou menos assim:

  • Moderação da mensagem: ele lê a pergunta e filtra conteúdo malicioso já na entrada.

  • Otimização da query: enriquece a pergunta com o contexto da conversa (coisas como localização e tempo) pra montar uma busca melhor.

  • Recuperação: transforma isso numa search query e manda pro Bing, restrita aos seus domínios configurados.

  • Grounding e citação: pega os melhores resultados, faz checagem de grounding, de proveniência e de similaridade semântica, resume em linguagem natural e devolve com a fonte citada.

O ponto que eu quero que você grave desse bloco é um só: o agente enxerga apenas o que o Bing já indexou. Se a página não está no índice do Bing, pro agente ela não existe. Isso muda tudo na hora de escolher a URL, e é o que leva pro próximo bloco.


As regras de URL que confundem

Essa parte é onde a maioria se confunde, porque a URL de public website tem regras específicas que não são óbvias:

  • Profundidade de no máximo 2 níveis. Vale suaempresa.com/blog/databricks (com barra no fim também vale), mas suaempresa.com/blog/databricks/custos já é fundo demais e não entra.

  • Sobe pelos subpaths, não pelos vizinhos. Se você aponta pra /blog/databricks o agente também usa /blog/databricks/custos que está abaixo, mas não pega /produtos que está do lado.

  • www importa. Apontar pra www.suaempresa.com não puxa blog.suaempresa.com, mas apontar pra raiz suaempresa.com puxa os dois.

  • Site com autenticação não vale, e é por isso que SharePoint, wikis e Azure DevOps não funcionam como public website: o Bing não indexa o que exige login. Para SharePoint interno você usa a fonte de SharePoint mesmo, que vimos nos posts anteriores.

  • Redirect pra outro site de topo não conta. Se suaempresa.com redireciona pra suaempresa.com.br, o conteúdo não entra nos resultados.

  • Nada de buscador nem rede social. Apontar pro google.com não devolve nada útil, e fórum ou rede social costuma aumentar a taxa de resposta rejeitada porque a qualidade do conteúdo é imprevisível.

No meu caso apontei pra datainaction.dev/blog, que é 1 nível só e o Bing já tinha indexado, então entrou de boa.


Cuidado: o dado pode sair da sua fronteira de compliance

Tem um detalhe de governança que aparece bem na hora de adicionar o site, no rodapé da própria tela:

O aviso diz que adicionar um public website (ou ligar a busca na web) usa o Grounding with Bing Search, e que isso pode fazer o dado sair da fronteira de compliance da sua organização. Faz sentido, porque como vimos lá em cima a sua pergunta, já reescrita com o contexto da conversa, é enviada pro Bing pra fazer a busca, e o Bing é um serviço que roda fora do seu tenant. Esse uso é regido pelos Terms of Use e pelo Privacy Statement do Bing, os dois linkados ali no rodapé.

Por causa disso eu levo duas coisas em conta antes de usar site público ou web search:

  • Se o conteúdo é sensível ou não pode sair da empresa, esse não é o lugar. Aí eu fico no SharePoint ou no Azure AI Search, que respondem de dentro da sua fronteira.

  • A recomendação da Microsoft é apontar pra sites que você é dono ou tem direito de usar.

Reginaldo, então dá pra apontar pro site do meu concorrente e sugar o conteúdo dele?

Tecnicamente o Bing indexou e ia funcionar, mas o conteúdo é dele e a responsabilidade de usar aquilo é sua. Aponta pro que é seu ou pro que você tem direito de usar, e pronto. No meu caso o blog é meu, então segui tranquilo.


Site como fonte vs busca na internet

Agora a parte principal do post, porque na tela essas duas coisas parecem a mesma e não são. O site como fonte (o public website que acabei de plugar) é uma whitelist: o agente só responde a partir dos sites que você cadastrou. Já a busca na internet (o Web Search, ali no Overview) é um toggle que, quando ligado, busca em toda a internet indexada pelo Bing, roda em paralelo com os seus sites e intercala os resultados.

E presta atenção nesse detalhe: esse Web Search vem habilitado por padrão nos agentes novos. Criei um do zero agora, sem tocar em nada, e ele já nasceu com a busca na web ligada:

Ou seja, o seu agente pode estar consultando a web inteira sem você ter pedido. Pra mostrar o contraste eu desliguei ele primeiro:

Com o Web Search desligado, perguntei "Como reduzir custos de storage no Delta Lake?". Olha o resultado:

Ele respondeu certinho sobre Vacuum, Deletion Vectors e Vacuum Inventory Table, e o mais importante está no canto direito: as 6 referências são todas dos meus posts. Ele ficou preso ao meu blog, respondeu com o meu conteúdo e citou os meus artigos. Previsível e curado.

Depois perguntei sobre novidade recente do Databricks, e mesmo sendo um tema que muda toda semana ele respondeu a partir dos meus posts de Genie e Agent Bricks:

Um detalhe que vale contar: antes disso eu tentei perguntar a cotação do dólar, e o próprio agente barrou a resposta, porque na instrução eu mandei ele ficar só nos temas de dados e IA. O guardrail do prompt funcionou, e é por isso que troquei pra pergunta de Databricks.

Agora liguei o Web Search:

Repeti a mesma pergunta do Delta Lake, e o resultado mudou. Nas referências, no meio dos meus posts, apareceu o Microsoft Learn ("Remover arquivos de dados não utilizados com vácuo"), que eu nunca cadastrei:

E na pergunta de novidades ficou ainda mais claro: com a internet ligada, junto do meu post o agente puxou a página oficial "O que vem por aí" do Azure Databricks no Microsoft Learn como fonte, misturando o meu conteúdo com o release oficial da Microsoft:

Esse é o trade-off inteiro numa imagem. Com a internet ligada o agente fica mais atual e mais amplo, mas você perde o controle da fonte porque ele responde de qualquer lugar que o Bing indexou. Com a internet desligada ele fica preso ao que você curou e cita só o seu conteúdo. A mesma pergunta, dois comportamentos, e a decisão é sua.


Bing Custom Search: quando você quer só um pedaço da web

Tem um meio termo entre "só os meus sites" e "a internet inteira": o Bing Custom Search. A ideia é montar antes um índice de busca sob medida no portal customsearch.ai, escolhendo exatamente os domínios confiáveis que valem, e conectar esse índice no agente por um Configuration ID (em Add knowledge, aba Advanced).

Dois avisos importantes aqui. Ligar o Bing Custom Search desliga os public websites que você tinha e tem custo próprio, porque é um recurso do Bing à parte. E a orquestração generativa não suporta ele no nível do agente, então pra usar você precisa embutir num nó de generative answers dentro de um topic. É mais trabalho, e vale quando você quer a amplitude da web mas restrita a um punhado de fontes que você confia.


Cenários: quando usar cada um

Juntando tudo, é assim que eu penso na hora de escolher:

  • Site como fonte (public website): quando a fonte é conteúdo público que você é dono ou tem direito de usar e você quer respostas previsíveis, citadas e dentro do seu material. Foi o que fiz com o blog.

  • Busca na internet ligada: quando você precisa de amplitude e informação atual e aceita abrir mão do controle da fonte. Ela já vem ligada por padrão nos agentes novos, então se você quer o agente preso ao seu conteúdo, precisa desligar de propósito.

  • Bing Custom Search: quando você quer a web, mas só um recorte confiável de domínios, cortando o ruído do resto.

  • Nem web nenhuma: quando o dado é interno ou sensível. Se precisa respeitar a permissão de cada usuário, é SharePoint (posts 1 e 2) com o security trimming, e se é um índice interno seu, Azure AI Search (post 3).


RESUMO

  • Site como fonte (public website) é uma whitelist: o agente responde só dos sites que você cadastrou e cita a fonte, como no meu blog com as 6 referências internas.

  • Busca na internet (Web Search) é um toggle que busca em toda a web indexada pelo Bing, roda em paralelo e intercala. Vem ligado por padrão nos agentes novos, então desligue se quiser o agente preso ao seu conteúdo.

  • Na prática, sem internet o agente respondeu só do datainaction.dev, e com internet o Microsoft Learn entrou junto na mesma pergunta.

  • As regras de URL pegam: máximo 2 níveis, sobe por subpath e não por vizinho, www importa, site com login não vale e redirect não conta.

  • Public website e web search usam o Grounding with Bing Search, então o dado pode sair da sua fronteira de compliance. Se for sensível, fique no SharePoint ou Azure AI Search.

  • Bing Custom Search é o meio termo (web curada), mas desliga os public websites, tem custo próprio e não roda na orquestração generativa direto.

Com isso a série já cobriu o conhecimento interno (SharePoint) e o externo (web). No próximo e último post da semana eu plugo uma fonte que é a cara do nosso blog: o Databricks direto como fonte de conhecimento do agente.

Referências:

https://learn.microsoft.com/en-us/microsoft-copilot-studio/knowledge-add-public-website

https://learn.microsoft.com/en-us/microsoft-copilot-studio/knowledge-copilot-studio

https://learn.microsoft.com/en-us/microsoft-copilot-studio/knowledge-bing-custom-search

Fique bem e até a próxima.

#copilotstudio #websearch #bingcustomsearch #ia #agentes #datainaction

#copilotstudio#websearch#bingcustomsearch#ia#agentes#datainaction

Gostou? Tem mais no YouTube e no LinkedIn.

← Voltar ao blog