Na documentação do Google, esse recurso aparece como Grounding with your search API. O adaptador deste guia é executado no seu próprio projeto do Google Cloud, e as buscas que ele faz são cobradas na sua conta do Firecrawl.
Como funciona
- Seu request ao Gemini inclui uma ferramenta de recuperação do tipo
externalApique aponta para o seu adaptador. - Quando precisa de informações, o Gemini envia
POST {"query": "..."}ao adaptador, com a sua chave anexada como?key=. - O adaptador chama o endpoint
/v2/searchdo Firecrawl e responde com um array JSON de objects, cada um com umsnippete umuri. Um array vazio indica que não há resultados. - O Gemini usa os trechos como fontes de grounding e os lista em
groundingMetadatana resposta.
Pré-requisitos
- Uma chave de API do Firecrawl
- Um projeto do Google Cloud com faturamento, Vertex AI e Cloud Run ativados, e a CLI
gcloudautenticada - Um modelo Gemini compatível com grounding usando sua API de busca. O Google lista esses modelos na página indicada acima, e o
gemini-2.5-flashé um deles.
Construa o adaptador
Crie uma pasta com estes três arquivos.?key= e a envia ao Firecrawl como token bearer; portanto, o apiKeyString que você fornece ao Gemini é a sua chave de API do Firecrawl. Se a chave estiver ausente ou for rejeitada, a resposta será 401. O Dockerfile inicia o gunicorn sem log de acesso, já que esse log registraria o valor de ?key=. O adaptador nunca registra a consulta nem a chave.
Implantar no Cloud Run
/v0/search. Como o Gemini não consegue anexar um token de identidade do Google a essa chamada, o serviço permite requisições não autenticadas, e a verificação de ?key= funciona como controle de acesso.
Mantenha a chave do Firecrawl fora das URLs
O Cloud Run mantém um log de requests para cada serviço, no qual as URLs dos requests ficam registradas. Para que sua chave do Firecrawl não apareça nesse log, execute o adaptador no modo gateway. Você escolhe um segredo compartilhado que o Gemini vai enviar, e o adaptador usa a chave do Firecrawl armazenada no Secret Manager.roles/secretmanager.secretAccessor em ambos os segredos. Nesse modo, apiKeyString é o segredo do gateway, que você pode ler com gcloud secrets versions access latest --secret grounding-gateway-key.
Verifique o endpoint
snippet e uri. Sem ?key=, o serviço responde com 401.
Fundamentar uma request do Gemini
YOUR_SERVICE_URL pelo host do seu serviço e YOUR_KEY pela sua Chave de API do Firecrawl ou, se você implantou no modo gateway, pelo segredo do gateway. Para uma localização regional diferente de global, use LOCATION-aiplatform.googleapis.com como host, conforme a referência do Google.
Na resposta, as fontes usadas pelo Gemini aparecem em candidates[0].groundingMetadata.groundingChunks. Na resposta REST, o retrievedContext de cada chunk traz o uri e o snippet retornados pelo seu adaptador.
Opções
Defina estas opções como variáveis de ambiente no serviço do Cloud Run, por exemplo, comgcloud run services update firecrawl-grounding --update-env-vars RESULT_LIMIT=5.
Escolhendo um trecho
O Gemini se baseia no texto do trecho, então o conteúdo dele importa mais do que o link. O padrão usa a descrição retornada pela busca do Firecrawl. Por padrão, a busca retorna destaques relevantes para a query nesse campo e, quando não consegue gerá-los, recorre à descrição simples da página. Assim, cada trecho é selecionado em função da query. O modomarkdown usa os primeiros caracteres do conteúdo principal de cada resultado, que em alguns sites é um banner ou menu antes do artigo, por isso costuma ser a opção menos eficaz. Ele também deixa cada resposta do Firecrawl muito maior. Use-o quando os resultados que importam para você não tiverem uma descrição útil.
Limites e comportamento
- O Google permite que uma request de geração use até 10 fontes de grounding, e você pode combinar esta ferramenta com outras, como o Google Search.
- A página do Google não informa um tamanho máximo de resposta nem um tempo limite para o seu endpoint. Mantenha o adaptador rápido e os trechos curtos. Com os valores padrão, uma resposta contém no máximo 10 trechos de 1.200 caracteres.
- A busca do Firecrawl aceita queries de até 500 caracteres. O adaptador trunca queries mais longas nesse limite.
- Cada query corresponde a uma request de busca do Firecrawl, portanto seus limites de taxa e sua cobrança se aplicam a cada busca feita pelo Gemini.
- O Gemini chama o adaptador uma vez para cada busca que decide executar, e uma única request pode disparar várias buscas.

